Lesson 1(封装与继承)
1.类由两部分构成:属性和方法。属性通常用名词来表示,方法通常用动词来表示
2.在Java中进行方法参数传递时,无论传递的是原生数据类型还是引用类型,参数传递方式统一都是传值(pass by value),java中没有传引用(pass by reference)的概念
3.方法重载(Overload).表示两个或多个方法名字相同,但是方法参数不同
a) 参数类型不同 备注:方法的返回值类型对重载没有影响
b) 参数个数不同
4.构造方法重载:
a) 如果构造方法想调用另一个构造方法可以使用this()来调用,this后面没有点
b) 必须把this()放在该构造方法的第一句
备注:重载主要是看参数列表(类型和个数)
5.继承:java的继承是单继承的,一个类只能有一直接父类,但是可以通过实现多重继承,让其有多个间接的”父类”.
6.生成子类对象的时,java会默认首先调用父类的不带参数的构造方法,然后执行该构造方法,生成父类的对象。接下来,再调用子类的构造方法,生成子类的对象。【要想生成子类对象首先要生成父类的对象,没有父类对象就没有子类对象。很类似现实生活的情况】
7.super关键字:表示对父类对象的引用
8.如果子类使用super()显示调用父类的某个构造方法,那么执行的时候就会寻找与super()所对应的构造方法而不再去寻找父类不带参数的构造方法。与this一样,super调用方法的时候必须放在第一句执行语句中。
9.继承三要素:
i. 父类有的,子类就要有。
ii. 父类没有的,子类可以增加
iii. 父类有的,子类可以改变
10.关于继承的注意点
i. 构造方法不能被继承
ii. 方法和属性可以被继承
iii. 子类的构造方法隐式的调用父类的不带参数的构造方法
iv. 当父类没有不带参数的构造方法时,子类需要使用super显示的调用父类的构造方法
v. super同this一样调用构造方法的时候必须放在第一句
11.方法重写(Override):又叫做覆写,子类与父类的方法返回类型一样、方法名称一样,参数一样,这样我们说子类与父类的方法构成类重写关系。备注:是发生在有继承关系的
12.方法重载和重写的关系:重载发生在同一个类内部的两个或多个方法,重写是发生在父类与子类之间的。(Override、Overload)
13.在定义一个类的时候,如果没有显式指定该类的父类,那么该类就会继承于java.lang.Object类。Object可以理解为Java世界中的万物之源。
14.多态:就好比我们通常说的,玫瑰是花,男人是人。子类就是父类。
备注:多态的意思就是:父类的引用可以指向子类的对象。