W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
多態(tài) 定義:
多態(tài)是同一個行為具有多個不同表現(xiàn)形式或形態(tài)的能力。
理解方法: 以Animal、Dog、Cat類為例,它們都有eat方法,如果使用以下代碼:
Animal animal = new Dog();
animal.eat();
animal = new Cat();
animal.eat();
java執(zhí)行流程:
java會先看Animal中是否有eat方法的定義:{
如果沒有則會報錯;
如果有則java會再看實例化對象的類中是否有eat方法的實現(xiàn){
如果沒有則java會看Animal中是否有eat方法的實現(xiàn){
如果沒有則會報錯;
如果有則會調(diào)用;
}
如果有則會調(diào)用實例化對象的類中的eat方法。
}
}
以下為Animal為類、抽象類、接口時的代碼示例: 1.Animal為類時代碼示例:
class Animal{
public void eat() {
System.out.println("Animal吃東西。");
}
}
class Dog extends Animal{
public void eat() {
System.out.println("Dog吃東西。");
}
}
class Cat extends Animal{
public void eat() {
System.out.println("Cat吃東西。");
}
}
2.Animal為抽象類時代碼示例:
abstract class Animal{
public abstract void eat();
}
class Dog extends Animal{
public void eat() {
System.out.println("Dog吃東西。");
}
}
class Cat extends Animal{
public void eat() {
System.out.println("Cat吃東西。");
}
}
3.Animal為接口時代碼示例:
interface Animal{
public void eat();
}
class Dog implements Animal{
public void eat() {
System.out.println("Dog吃東西。");
}
}
class Cat implements Animal{
public void eat() {
System.out.println("Cat吃東西。");
}
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: