File tree 3 files changed +81
-51
lines changed
3 files changed +81
-51
lines changed Original file line number Diff line number Diff line change 81
81
>
82
82
#### Override和Overload的含义去区别
83
83
``` java
84
- 如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding )。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型或有不同的参数次序,则称为方法的重载(Overloading )。
84
+ 如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding )。
85
+ 如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型或有不同的参数次序,则称为方法的重载(Overloading ),没有权限要求。
85
86
```
86
87
#### ArrayList、LinkedList、Vector的区别
87
88
``` java
Original file line number Diff line number Diff line change @@ -203,8 +203,9 @@ import 引用
203
203
匿名内部类
204
204
205
205
### 继承
206
+ 共用代码
206
207
继承是单继承
207
- 拥有父类的属性和方法 (private 修饰的除外)
208
+ 拥有父类的所有的属性和方法 (private):显式继承,隐式继承(getter,setter)
208
209
``` java
209
210
class Dog extends Animal {
210
211
@@ -213,18 +214,27 @@ import 引用
213
214
#### 方法重写
214
215
返回值类型,方法名,参数类型及个数都要与父类继承的方法相同
215
216
优先调用子类方法
217
+ 覆写的方法的访问权限不能严格于父类(private>protected>default>public)(public)
218
+ 父类private方法只能父类调用
219
+ #### 属性重写
220
+ 子类与父类同名的属性(尽量不同名)
221
+ #### super 关键字
222
+
223
+ super代表父类对象(访问属性,方法)(this)
224
+ super.eat()
225
+ super.age
226
+
216
227
#### 继承初始化顺序
228
+
217
229
构造方法:父类-->子类
218
230
属性:初始化对象的属性-->构造方法中的初始化
231
+
219
232
#### final 关键字使用
220
- 最终, 不可继承,不可覆盖,不可修改(不会自动初始化),只能赋值一次(常量)
233
+ 不可继承,不可覆盖,不可修改(不会自动初始化),只能赋值一次(常量)
221
234
修饰类,方法,属性,变量
222
- #### super 关键字
223
- 代表父类对象(访问属性,方法)
224
- super.eat()
225
- super.age
235
+
226
236
子类实例化默认执行父类构造方法(无参构造方法)
227
- super();
237
+ super(); // 没有无参时要显示调用super(name,age);
228
238
229
239
#### Object 类
230
240
所有默认继承子Object
@@ -251,8 +261,8 @@ super();
251
261
// 引用的多态
252
262
Animal obj1 = new Animal ();
253
263
Animal obj2 = new Dog (); // 父类的引用可以指向子类对象(反之不可)
254
- // 方法多态
255
- // 本类方法
264
+ // 方法多态 //重载与复写
265
+ // 本类方法
256
266
// 子类重写的方法或继承的方法(子类独有的方法不能继承)
257
267
```
258
268
#### 引用类型转换
You can’t perform that action at this time.
0 commit comments