[size=medium][b]多型[/b][/size]
/*** 多型: 可以理解為事物存在的多種體現形態
* * 人:男人 女人 動物 : 貓,狗
* * 貓 x=new 貓(); 動物 x=new 貓();
* * 1.多型的體現
* 父類的引用指向子類的物件
* 父類的引用可以接受自己的子類物件
* 2.多型的前提
* 類和類之前要有關係,要麼繼承,要麼實現
* 通常還有乙個前提:存在覆蓋.
* 3.多型的好處
* 多型的初相大大的提高程式的擴充套件性
* 4.多型的弊端
* 提高了擴充套件性,但是只能使用父類的引用訪問父類中的成員
* 5.多型應用
*
* 6.多型出現**中的特點(多型使用注意事項)
* *
*/abstract class animal
class cat extends animal
public void catchmouse()
}class dog extends animal
public void kanjia()
}class pig extends animal
public void gonddi()
}public class duotaidemo
/*public static void function(cat c)
public static void function(dog d)
//一年後 養豬了
public static void function(pig p)
*///提高**的擴充套件性 可以將下面的封裝成乙個 工具類 專門用來操作這一類物件的
public static void function(animal a)
//多型中成員的特點
/*** 多型中成員的特點
* 非靜態成員函式: 成員函式在多型呼叫時,編譯看著左邊,執行看右邊.
* * 成員變數: 都參考左邊(應用型別所屬的類)
* 靜態成員函式: 無論編譯和執行 都參考左邊
* */
class fu
void method2()
//靜態
static void method4()
}class zi extends fu
void method3()
//靜態
static void method4()
}public class duotaidemo1
介面的特點
/**
* 需求:
* 電腦執行例項:
* 電腦執行基於主機板.
* * 多型應用
* 介面:降低耦合性,提高程式的擴充套件性.提供了規則
*/class mainboard1
//公升級一
public void usernetcard(netcard1 c)
}//公升級 一:要上網 怎麼辦?
class netcard1
public void close()
}//公升級二 :要聽** (主機板廠商 召集個功能卡開發商 開會 ,定義pci插槽規則)
inte***ce pci
class mainboard
public void userpci(pci p)}}
class netcard implements pci
@override
public void close()
}class soundcard implements pci
@override
public void close()
}//測試
public class duotaidemo2
}
多型的應用三:
/*** 需求: 資料庫的操作
* 資料是:使用者資訊
* 1.連線資料庫
* 2.運算元據庫 jdbc hibernate
* crud
* 3.關閉資料庫連線
*///公升級三
inte***ce userinfodao
class userinfobyjdbc implements userinfodao
public void delete(user user)
}//公升級 1: 公司數採用 hibernate框架
class userinfobyhibernate implements userinfodao
public void delete(user user)
}public class duotaidemo4
}
object中 幾個 常用的方法
/***object 是所有物件的直接或者間接父類.該類定義的肯定是所有物件 所有具備的功能
**object 中已經提供了物件是否相同的比較方法,我們只需要重寫
*/class demo //extends object
private int num;
demo(int num)
public boolean compare(demo d)
//使用object 的比較方法
public boolean equals(object obj)
public string tostring()
}class person
public class objectdemo
}
第五天 Java多型
多型 同乙個物件在不同時刻體現出來的不同狀態。執行期 能體現多型的前提 有繼承或者實現關係。有方法重寫。有父類或者父介面引用指向子類物件。多型的分類 具體類多型 class fu class zi extends fu fu fu new zi 抽象類多型 abstract class fu cla...
Java學習筆記8 多型性理解
多型 是把子類物件主 作父型別的物件編譯時型別指的是被看作的型別。執行時型別指的是實際的物件例項的型別,客觀不可改變。類的具體化就是物件,即物件是類的例項化。三個必要條件 繼承 重寫 父類引用指向子類物件 實現方式 重寫 介面 抽象類抽象方法。多型特性 物件例項確定則不可改變 只能呼叫編譯時所定義的...
java學習第八天之抽象。繼承和多型
public class abstract 描述 狗 吼叫 狼 吼叫 兩個事物具備共性,向上抽去,犬科,具備吼叫功能 描述乙個事物,卻沒有足夠資訊,這時就將這個事物成為抽象事物 面對抽象的事物,雖然不具體,但是可以簡單化 不用面對具體事物 特點 1.抽象方法一定定義在抽象勒種,都需要用abstrac...