当类中的方法全部都是 static 关键字修饰时 ,它的构造方法最好作为 private 私有化,理由是方法全是 static, 不知道的人会去new对象去调用,需要调用构造方法。 但 static的方法直接用类名调用就行!
-----------------------------------------------------------------------------
static关键字的特点 A:static关键字的特点 a:随着类的加载而加载 b:优先于对象存在 c:被类的所有对象共享 举例:咱们班级的学生应该共用同一个班级编号。
其实这个特点也是在告诉我们什么时候使用静态? 如果某个成员变量是被所有对象共享的,那么它就应该定义为静态的。 举例: 饮水机(用静态修饰) 水杯(不能用静态修饰) 共性用静态,特性用非静态。 可以通过类名调用。 其实它本身也可以通过对象名调用。 推荐使用类名调用。 静态修饰的内容一般我们称其为:与类相关的,类成员。
----------------------------------------------------------------------------- static的注意事项) A:static的注意事项 a:在静态方法中是没有this关键字的 如何理解呢? 静态是随着类的加载而加载,this是随着对象的创建而存在。 静态比对象先存在。 b:静态方法只能访问静态的成员变量和静态的成员方法 ----------------------------------------------------------------------------- 静态方法: 成员变量:只能访问静态变量 成员方法:只能访问静态成员方法 非静态方法: 成员变量:可以是静态的,也可以是非静态的 成员方法:可是是静态的成员方法,也可以是非静态的成员方法。 简单记: 静态只能访问静态。 -----------------------------------------------------------------------------
静态变量和成员变量的区别) 静态变量也叫类变量 成员变量也叫对象变量 A:所属不同 静态变量属于类,所以也称为为类变量。 成员变量属于对象,所以也称为实例变量(对象变量)。 B:内存中位置不同 静态变量存储于方法区的静态区。 成员变量存储于堆内存。 C:内存出现时间不同 静态变量随着类的加载而加载,随着类的消失而消失。 成员变量随着对象的创建而存在,随着对象的消失而消失。 D:调用不同 静态变量可以通过类名调用,也可以通过对象调用。 成员变量只能通过对象名调用。 ----------------------------------------------------------------------------- main方法的格式详细解释) A:格式 public static void main(String[] args) {} B:针对格式的解释 public 被jvm调用,访问权限足够大。 static 被jvm调用,不用创建对象,直接类名访问。 void 被jvm调用,不需要给jvm返回值。 main 是一个通用的名称,虽然不是关键字,但是被jvm识别。 String[] args 以前用于接收键盘录入的。
-----------------------------------------------------------------------------
我的GitHub地址: https://github.com/heizemingjun
我的博客园地址: http://www.cnblogs.com/chenmingjun
我的蚂蚁笔记博客地址: http://blog.leanote.com/chenmingjun
Copyright ©2018 黑泽明军
【转载文章务必保留出处和署名,谢谢!】