JAVA课程-类和对象
static修饰符
1.static修饰变量
在类中,被static修饰的变量叫做类变量,否则叫做实例变量。
- 类变量:例如static int a,为整个类中所有对象所共享,只能存在一份。既可以由类调用,也可以被类的对象调用。
- 实例变量:莓实例化一个对象,都会有一份独立的实例变量的内存空间,各对象之间的实例变量不相关。
2. static修饰方法
在类中,被static修饰的方法叫做类方法,否则叫做实例方法。
- 类方法只能访问类的类变量,不可以访问实例变量。类方法既可以由类调用,也可以由类的对象调用。(理解:在类还没有实例化出对象时,还不存在实例变量,但是类的static方法已经存在,它有可能是被类直接调用的,那此时连实例的对象都没有,自然也没有实例变量,故static方法和可访问实例变量显然是错误的)
- 实例方法可以访问类的所有变量,只能由类的对象调用。
this 关键字
- this 表示一个类的对象,当this出现在方法中时,表示现在这个对象。
- this不可以出现在类方法中!这是因为在类方法中有可能还没有创建过对象,则this的存在无意义。
-
- 当实例变量在实例方法中出现时,默认格式this.实例变量,可以省略this
- 当static类变量在实例方法中出现时,默认格式CLASS.类变量,可以省略CLASS
package
多个程序员共同开发时,有可能使用相同的类名。因此我们引入package,不同包内的类名即是相同也不会产生冲突,同一个包内不允许同名类出现。
- package声明语句将作为JAVA源文件的第一条语句。
- 如果一个类有包名,则不能在任意位置存放。
- import语句要写在package语句后
访问权限
可以用private\protected\public约束变量、方法和类,不定义默认是 friend:
- private:只有该类可以访问变量
- public:该类/非该类均可访问
- protected:相同包中的类可以访问
对于public类,权限决定了哪些类可创建它的对象;对于变量和方法,权限决定了谁可以访问它。
标签:Java,变量,package,对象,访问,实例,static,方法 From: https://www.cnblogs.com/czy-blogs/p/17013552.html