总是被这些相似的概念搞晕,查阅了资料后做个小总结,以变量为例,方法辨析类似。
1.多胞胎名字汇总辨析
成员变量和成员方法是范围最大的定义,提到成员变量就可以理解成你所定义在一个类体中的各类变量的统称,成员方法亦如是。java类的成员变量包括实例变量和类变量,成员方法包括实例方法和类方法。
那么,什么是实例变量和类变量呢?
从名字分析:
实例变量,是新建了实例后才能用的变量。
类变量,是不用新建实例,直接通过类来调用的变量。特点是用static修饰。所以它们还有个响当当的名字,叫静态变量,静态方法。
至此,这些多胞胎名字就搞清楚了:成员变量最大,包括实例变量和类变量,类变量=静态变量。
2.实例变量与类变量不同:
实例变量是类实例化后,系统为其创建的一个类的实例变量的拷贝,即一个实例拥有一个实例变量。
类变量则是用static声明,系统为每个类变量分配一次存储空间。即所有的实例共享一个类变量。
3.使用方法(概括:自个儿管自个儿)
(1)实例方法可以直接访问实例变量,调用实例方法;
(2) 实例方法可以直接访问类变量,调用类方法。但不推荐这么做,原因是不清晰,容易把类变量误认为是实例变量,把类方法误认为是实例方法(借助IDE,它会给出警告信息。);
(3)类方法可以直接调用类变量和类方法;
(4)类方法不能直接调用实例变量和实例方法;
(5)类方法里面不能使用“this”关键字,因为没有实例存在,“this”不知道引用哪个实例。
java使用成员变量 java成员变量和成员方法
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
【数据结构】链式家族的成员——循环链表与静态链表
【数据结构】第二章——线性表(8)详细介绍了循环链表与静态链表的相关内容……
数据结构 C语言 循环链表 静态链表 -
成员变量、成员方法
成员变量 成员方法 定义成员方法 self关键字是成员方法定义的时候,必须填写的。 它用来表
Python 成员方法 类对象 成员变量 -
java 取得成员变量 java中成员变量和成员方法
类体中的变量分为两部分。变量定义部分定义的变量为类的成员变量,在方法体中定义的变量和方法中涉及的变量称为局部变量。
java 取得成员变量 ide 成员变量 构造方法 -
java 成员变量 成员方法 java成员变量可以重写吗
java中在多态的实现是通过类的继承或者接口的实现来完成的。
System 成员函数 父类