update
This commit is contained in:
parent
d7d4bdc084
commit
d77e9f903b
17
code/src/main/java/com/raorao/java/oop/Children.java
Normal file
17
code/src/main/java/com/raorao/java/oop/Children.java
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
package com.raorao.java.oop;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 子类.
|
||||||
|
*
|
||||||
|
* @author Xiong Raorao
|
||||||
|
* @since 2018-09-06-9:27
|
||||||
|
*/
|
||||||
|
public class Children extends Father {
|
||||||
|
|
||||||
|
int sum = 2;
|
||||||
|
int chlid = 3;
|
||||||
|
|
||||||
|
public void say() {
|
||||||
|
System.out.println("this is children say!");
|
||||||
|
}
|
||||||
|
}
|
16
code/src/main/java/com/raorao/java/oop/Client.java
Normal file
16
code/src/main/java/com/raorao/java/oop/Client.java
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
package com.raorao.java.oop;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 测试.
|
||||||
|
*
|
||||||
|
* @author Xiong Raorao
|
||||||
|
* @since 2018-09-06-9:28
|
||||||
|
*/
|
||||||
|
public class Client {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
Father f = new Children();
|
||||||
|
System.out.println(f.num);
|
||||||
|
f.say();
|
||||||
|
}
|
||||||
|
}
|
16
code/src/main/java/com/raorao/java/oop/Father.java
Normal file
16
code/src/main/java/com/raorao/java/oop/Father.java
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
package com.raorao.java.oop;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 父类.
|
||||||
|
*
|
||||||
|
* @author Xiong Raorao
|
||||||
|
* @since 2018-09-06-9:26
|
||||||
|
*/
|
||||||
|
public class Father {
|
||||||
|
int num = 1;
|
||||||
|
public void say(){
|
||||||
|
System.out.println("this is father say!");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -47,6 +47,11 @@
|
|||||||
- [静态内部类](#静态内部类)
|
- [静态内部类](#静态内部类)
|
||||||
- [java 代码块](#java-代码块)
|
- [java 代码块](#java-代码块)
|
||||||
- [代码块执行顺序](#代码块执行顺序)
|
- [代码块执行顺序](#代码块执行顺序)
|
||||||
|
- [java 多态](#java-多态)
|
||||||
|
- [多态实现的几种方式](#多态实现的几种方式)
|
||||||
|
- [向上转型](#向上转型)
|
||||||
|
- [向下转型](#向下转型)
|
||||||
|
- [结论](#结论)
|
||||||
- [参考文档](#参考文档)
|
- [参考文档](#参考文档)
|
||||||
|
|
||||||
<!-- /TOC -->
|
<!-- /TOC -->
|
||||||
@ -964,6 +969,76 @@ Iterator it = s.iterator();得到的it的真正类型是KeyIterator,是Iterato
|
|||||||
|
|
||||||
静态代码块 > 构造代码块 > 构造函数
|
静态代码块 > 构造代码块 > 构造函数
|
||||||
|
|
||||||
|
# java 多态
|
||||||
|
|
||||||
|
多态体现为父类引用变量可以指向子类对象:父类类型 变量名 = new 子类类型();
|
||||||
|
|
||||||
|
1、多态的前提是必须有子父类关系或者类实现接口关系,否则无法完成多态。
|
||||||
|
2、在使用多态后的父类引用变量调用方法时,会调用子类重写后的方法。
|
||||||
|
|
||||||
|
## 多态实现的几种方式
|
||||||
|
|
||||||
|
1、普通父类多态
|
||||||
|
|
||||||
|
``` java
|
||||||
|
class A{
|
||||||
|
}
|
||||||
|
|
||||||
|
class B extends A{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
A a = new B();
|
||||||
|
```
|
||||||
|
|
||||||
|
2、抽象类多态
|
||||||
|
|
||||||
|
``` java
|
||||||
|
abstract class A{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class B extends A{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
A a = new B();
|
||||||
|
```
|
||||||
|
|
||||||
|
3、接口多态
|
||||||
|
|
||||||
|
``` java
|
||||||
|
interface A {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class B implements A{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
A a = new B();
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
**同一个父类的方法会被不同的子类重写。在调用方法时,调用的为各个子类重写后的方法。**
|
||||||
|
|
||||||
|
## 向上转型
|
||||||
|
|
||||||
|
父类类型 变量名 = new 子类类型();
|
||||||
|
|
||||||
|
## 向下转型
|
||||||
|
|
||||||
|
子类类型 变量名 = (子类类型) 父类类型的变量;
|
||||||
|
|
||||||
|
如:Person p = new Student();
|
||||||
|
Student stu = (Student) p
|
||||||
|
|
||||||
|
注意:如果是直接创建的父类对象,是无法向下转型为子类对象的。
|
||||||
|
|
||||||
|
## 结论
|
||||||
|
|
||||||
|
对于成员变量,看编译(静态)类型;
|
||||||
|
对于成员方法,看运行(动态)类型;
|
||||||
|
|
||||||
# 参考文档
|
# 参考文档
|
||||||
|
|
||||||
|
@ -51,7 +51,9 @@ Intel | 8.23 | 8.23(新投递) | 电面 | 8.24一面
|
|||||||
Keep | 8.31 | 8.31(新投递)
|
Keep | 8.31 | 8.31(新投递)
|
||||||
小红书 | 8.31 | 8.31(新投递)
|
小红书 | 8.31 | 8.31(新投递)
|
||||||
中国银联 | 9.3 | 9.3(官网新投递)
|
中国银联 | 9.3 | 9.3(官网新投递)
|
||||||
|
三七互娱 | 9.5 | 9.5(官网新投递)
|
||||||
|
去哪儿网 | 9.5 | 9.5(官网新投递)
|
||||||
|
搜狗 | 9.5 | 9.5(官网新投递)
|
||||||
|
|
||||||
# 2 复习内容
|
# 2 复习内容
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user