1.对象实列化中,object是最终父类。
2.如果一个类没有特别指定父类,那么默认则继承object。
3.java.lang.object
类 object 是类层次结构的根(最顶层)类。每个类都使用object作为超类。所有对象(包括数组)都实现这个类的方法。
4.所有对象(包括数组)都实现这个类的方法。
5.直接打印对象的名字,实则为直接引用tostring方法
6.看一个类是否已经重写了tostring方法,直接打印这个类的对应对象的名字即可。
没有重写,那么打印的是对象的地址值。
重写了则是按照重写的方式打印。
7.object equal 主要是对比两个单位的地址值
8.objects 类的equals方法:对两个对象进行比较,防止空指针异常。
9.重写快捷键:alt+ins
引用数据类型:比较的是两个对象的地址值
那个对象调用的方法中,方法中的this就是那个对象,p1调用的equals方法,所以this就是p1
obj是谁?传递过来的p2
10.返回值是从方法内拿出去到方法外,而参数变量则是把外面的数目引进方法内。
11.成员变量和成员方法都属于类的内部成员,因此可以直接访问成员变量不需要再加引用. 的前缀。
12.
13.参数传递的注意事项:
基本数据类型的变量作为方法的参数传递时,形参变量数值的改变通常不会影响到实参变量的数值。因为两个变量有各自独立的内存空间。
14.引用数据类型的变量作为方法的参数传递时,形参变量指向内容的改变会影响到实参变量指向内容的数值,因为两个变量指向同一个内存空间。
15.当一个方法名与类名相同时,我们成为该方法为构造方法。没有返回值,连void都不许用。
16.默认构造方法:
当一个类中没有定义任何构造方法时,编译器会自动添加一个无参空构造方法,叫默认|缺省构造方法。,如Person(){}。
17.构造方法的作用:
使用new关键字创建对象时会自动调用构造方法实现成员变量初始化工作。
18.重载的体现方式:
方法重载的主要形式体现在:参数的个数不同,参数的类型不同,参数的顺序不同,与返回值类型和形参变量名无关。但建议返回值类型最好相同。
判断方法能否构成重载的核心:调用方法时能否加以区分。
19.方法重载的意义:
方法重载的意义在于调用者只需要记住一个方法名就可以调用各种不同版本,来实现各种不同的功能。
20.this的基本概念:
在构造方法中,若出现了this的关键字,则代表当前构造的对象。
若成员方法中出现了this的关键字,则代表当前的正在调用的对象。
this关键字本质上就是当前类类型的引用变量。
21.
在构造方法和成员方法中访问成员变量时,编译器会加上this.前缀。而this相当于汉语的“我的”。当不同的对象调用同一个方法时,由于调用方法的对象不同,导致this关键字不同,从而this方式访问的结果也随之不同。
22.推荐形参变量的名字和成员变量的名字一样,从而提高服务性。
23.当局部变量名和成员变量名相同时,在方法体中会优先使用局部变量(就近原则),若希望使用成员变量,则需要在成员变量前面加this.的前缀,明确表明该变量时成员变量。(重中之重!!!!)
this关键字除了可以通过this.的方式调用成员变量和成员方法外,还可以作为方法的返回值。(重点)