实例成员和类成员的区别
下面关于实例成员的说法,哪些是正确的?CD
A.实例成员也被称为实例变量
B.实例成员属于类成员
C.实例成员隶属于实例,但不隶属于整个类
D.实例成员包括实例变量和实例方法
E.实例成员变量就是静态变量
?
1.实例成员
实例成员包括实例成员变量和实例成员方法,实例成员变量(对象的字段)和方法(对象的方法)是隶属于对象的,实例成员变量的值代表了该对象的状态,实例成员方法代表了该对象的行为。只有创建了对象之后才能访问实例成员变量和实例成员方法,通过“对象名.变量名(方法名)”的方式可以访问实例成员。
public class NameClass{String name = "Jason";int age = 12;public void print(){System.out.println("name:");System.out.println("age:");}public static void main(String[] args){NameClass nc = new NameClass();nc.print();System.out.println(nc.name + " " + nc.age);}}
这这个程序中name和age就是实例成员变量,而print()方法就是实例成员方法。因此在main()方法中是通过创建NameClass类的对象nc来访问的。?
?
?
2.类成员
类成员(静态成员)需要用关键字static标识,类成员包括类成员和类成员方法,类成员是隶属于类的,意思是说通过类名可以直接访问类成员变量或调用类成员方法,即使没有创建对象,也能够引用类成员,当然类成员也可以通过对象引用。它既可以通过“对象名.变量名”方式访问,也可以通过“类名.变量名”的方式访问。它们完全是等价的。
public class NameClass{private static String name = "Jason";private static int age = 12;public void call(){NameClass.print();new NameClass().print();System.out.println(NameClass.name + ", " + NameClass.age);}public static void print(){System.out.println("Hello World");}}
?在这个程序中name和age就是类成员变量,而print()方法和call()方法就是类成员方法,因为任何的方法中都可以通过类名.变量名(NameClass.name)和对象名.方法名(new NameClass().print())访问。
?
?
?
?
?
?
?
?
?