类成员和实例成员的访问:
类中的成员:字段、方法、内部类
类成员:使用static修饰的成员
实例成员:没有使用static修饰的成员
++类成员只能访问类成员,实例成员只能访问实例成员++
类成员:直接属于类,可以通过类来访问字段和static方法.
实例成员:只属于对象,通过对象来访问非static字段和static方法.(对象其实可以方法成员,但是底层依然使用类名访问的.)
在static方法中,只能调用static成员。==错误:无法从静态上下文中引用非静态变量==
非static方法,可以访问静态成员,也可以访问实例成员
什么时候定义static的字段和方法:
如果一个状态/行为属于整个事物(类),就直接使用static修饰,被所有对象所共享
在开发中,往往把工具方法使用static修饰
如果不使用static修饰,则这些方法属于该类的对象,我们得先创造对象再调用方法,在开发中工具对象需要一份即可,可能创建N个对象,此时我们往往把该类设计为单例得,但是还是有点麻烦.
所以,一般的,在开发中设计工具方法,为了调用简单,我们使用static修饰.
类成员的使用
利处:对对象的共享数据进行单独空间的存储,节省空间,没有必要每一个对象中都存储一分,可以直接被类名调用.
弊端:生命周期过长.