java之8天 多型

2021-09-01 16:41:03 字數 2967 閱讀 3320

[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...