static关键字
1. static可以修饰属性
静态属性,可以直接通过类名访问:
静态属性,还能被类的所有实例共享!
以下的name属性,是非静态属性,非静态属性就是没有被static修饰的属性,又叫“实例属性”,也就是说,这个属性必须通过实例调用,不能通过类名调用。
2. static可以修饰方法
静态方法,可以直接通过类名调用:
实例方法,不能被类名调用!
静态方法中不能使用this关键字!
3. static可以修饰构造代码块
静态块,静态块在类被加载时自动执行,并且在整个程序运行期间只运行一次!
(类什么时候会被加载?
1. 调用类的构造器时。
2. 调用类的静态属性时。
3. 调用类的静态方法时。
)
可以看出,执行顺序是 静态块 > 普通块 > 构造器。
由此,看出了继承的作用,子类会继承父类的属性和方法!
继承带来的好处是: 提高代码重用性。
我们可以看出,继承的语法:
访问修饰符 class 子类名 extends 父类名 {
} |
关于继承要注意的地方:
1. Java中的每个类,都只能有一个父类!(单继承)
以下代码是错误的!
2. java支持多重继承
思考, 越是子类,属性和方法就越多。
3.子类不能访问父类的私有属性或私有方法。因为私有的属性和方法只能在本类中使用。
4.构造方法不能被继承。
这种情形叫做“子类重写了父类的方法”。
由此,引出一个重点:
方法重写:
在子类和父类中,出现了具有相同返回类型,相同方法名,相同参数列表的方法时,构成方法重写。 方法重写又叫做方法覆盖 ,英文: override 。
注意,子类重写父类的方法时,访问修饰符不能比父类的更严格(范围更小)。
访问修饰符的权限一样是可以的
紫云(深圳)软件有限公司
云数据时代引领者
微信:Chizcloud
微博:http://weibo.com/Chizcloud