class Person{ void say1(){ System.out.println("Who am I?"); } void say2() { System.out.println("I am Jason!"); } } class Example{ public static void main(String[] args){ Person exp =new Person();//建立一个对象,如同声名一个变量(对象名) exp.say1();//对象建立后,可以调用对象里的所有成员,这里调用的是Person下的say1 exp.say2();//尝试调用say2 //Person.say1();//能不能不进行对象建立,直接调用Person下的成员呢,答案是不能 //exp=null;//这里是将exp这个对象清空 //exp.say1();//还调用exp里面的成员,就会报空指针错误,因为exp这个对象中所有的内容都被置为空了 } } /**建立一个对象,如同声名一个变量(对象名): 将exp这个变量(对象名)定为Person数据类型 new后边是引用上边Person类的所有属性,像是为Person克隆出一个叫exp的对象,从此exp代表了Person的一切(映射),当Person变时,exp也会变 如果是普通变量,那类型基本固定,而如果是一个类,有多种数据类型是不确定的,所以要定义成一个对象来支持*/
原文:https://www.cnblogs.com/s-sj/p/14320759.html