Cirry's Blog

多态

Sep 25, 2019
技术 java
1分钟
192字

方法多态:①方法覆写②方法重载

属性多态

①向上转型

class Message {
public void print(){
System.out.println("i am messge");
}
}
class DataBaseMessage extends Message {
public void print(){
System.out.println("i am DataBaseMessage");
}
}
class WebServerMessage extends Message {
public void print(){
System.out.println("i am WebServerMessage");
}
}
10 collapsed lines
public class duotai{
public static void main(String args []){
fun(new DataBaseMessage());
fun(new WebServerMessage());
}
public static void fun(Message msg){
msg.print();
}
}

②向下转型

class Person{
public void print(){
System.out.println("i am just a common man");
}
}
class Superman extends Person{
public void fly(){
System.out.println("i can fly");
}
}
public class duotai{
public static void main(String args []){
Person superman = new Superman(); // 如果你在这个地方是 Person per = new Person(); 则后面无法转型成Supermanm类
7 collapsed lines
superman.print();
//向下转型
Superman man = (Superman) superman;
man.fly();
}
}

ps

,一定都是先向上转型之后才能向下转型。instanceof 可以检查是不是此类型。

本文标题:多态
文章作者:Cirry
发布时间:Sep 25, 2019
感谢大佬送来的咖啡☕
alipayQRCode
wechatQRCode
总访问量
总访客数人次