static关键字
static描述类的属性和和方法一:static属性
如果存在一种变量使得让其所有的子类共享该属性 , 推荐使用static标记该属性
static标记的属性不放在堆内存之中,会保存在全局数据区之中,所有该类子类皆可以访问
访问Static属性要通过类名称.staitc属性进行访问(合法且养成良好的习惯)
static属性不受实例化对象的限制,即 该类没有实例化一例对象也可以调用注意:99%的情况下不会使用static属性 , 如果使用共享属性或者不想受实例化对象控制的时候使用static属性(例如main方法)
二:static方法
static方法可以被类名称调用
所有的static方法不允许调用非static定义的属性或方法
所有的非static方法允许方法调用static定义的属性或方法原理:所有的static属性或方法在实例化之前就能调用,所以不能调用非static属性或者方法
某些方法不希望受到类的限制使用static 例如main方法
三:static应用
可以利用static进行类的计数功能自动为类属性命名可以利用static
总结:static不是进行设计的的首要选择 / static不受到类的实例化限制
记录时间:(2017年04月07日 11:14 static方法可以被非static调用却不能调用非static方法)