日期:2014-05-20  浏览次数:20701 次

静态变量和成员变量,还有私有变量,到底怎么区分?
例如:静态方法里是否可以访问非静态成员?非静态方法内部是否可以访问静态成员?

------解决方案--------------------
静态方法和静态变量都是用static关键字声明的,而私有变量是用private关键字声明的。静态方法只能访问静态变量和静态方法。非静态方法可以访问静态成员。其实,静态成员不需要产生对象就能实现(即在类装载的时候就分配了内存块),而非静态成员必须用new关键字产生对象才能使用。也就是说,当使用非静态成员是肯定存在了对象,而在使用静态方法是不一定要产生对象,那么在没有对象的前提下去使用这个静态方法,而这个静态方法里去调用非静态方法的话,没有对象非静态方法怎么能实现呢?所有到了这里就会报错