類中有抽象函式的類就被稱為抽象類。(模糊不清的類 不具體的類)
abstract class animal
注意點:
抽象類能否建立物件?不能 物件本身是乙個具體的東西 而抽象類中含有不具體的內容
抽象類必須作為父類存在嗎?必須 抽象類就等著被繼承呢!
抽象類和一般類有什麼區別?就是一般類的特殊情況
唯一的區別只在於抽象類中有抽象函式!
抽象類中必須有抽象函式嗎?不一定 awt介面開發
abstract這個關鍵字不能和那些關鍵字共存?
private 抽象函式就等著被子類重寫實現呢!
static 靜態是優先於物件存在的,在載入靜態資料的時候 肯定是具體的資料
介面的由來:當乙個抽象類中 所有的函式都是抽象的時候,那麼我們就可以將這個抽象類介面與介面之間的關係:繼承關係,多繼承關係。乙個介面可繼承多個介面,這和類的單繼承差別較大用另外一種表現形式-介面 《那也說明了抽象類中不一定全都是抽象函式》也可能有具體函式
介面與類之間的關係:類用來實現介面(重寫介面當中的所有方法)關鍵字implements來實現。多實現---乙個類可實現多個介面。
具體如**所示
package part1.介面;
public class inte***cedemo1
}inte***ce inte***cea
inte***ce inte***ceb
}inte***ce inte***cec extends inte***ceb
}inte***ce inte***ced extends inte***ceb,inte***cec
abstract class demo5 implements inte***ced
class demo6 extends demo5
@override
public void sleep() {} }
class demo3 implements inte***ced
@override
public void sleep() }
class demo4 implements inte***cea
@override
public void sing()
}
實現了**的傳遞package part1.介面;
//介面的出現 一定程度上對我們的**設計進行了解耦
//耦合性-兩隻之間的聯絡
//第2鐘多型形式的表現 實現在了 類實現介面的方法
public class inte***cedemo2
}class computer
}inte***ce usb
class keybord implements usb }
class mouse implements usb
}
package part1.介面;
//實現了**的傳遞,匿名類
public class inte***cedemo3 ;});
registerbutton.dosomething(new mission() ;
}); }}
inte***ce mission
class button
}
就是當我們在描述乙個事物的時候,發現該事物當中又存在另外乙個事物的時候區分內部類成員和外部類成員我們把當前的事物稱之為外部類 另乙個事物稱之為內部類
outter.this.*** this.***
呼叫內部類的靜態成員
內部類在乙個類中定義,間接相當於乙個類的成員變數,而成員變數在建立物件時才會存在。則如若在內部類中定義了靜態的成員函式那麼此時的內部類也應該定義為靜態的。這樣才不會和靜態的特點(靜態成員是優先於物件存在的)發生衝突。 否則會自相矛盾,發生報錯。(假若不是靜態型內部類)你定義了內部類的靜態成員,此時內部類為非靜態只有外面類建立物件之後內部類才能呼叫,而靜態肯定是在建立物件之前就已經存在了。這很矛盾。。
package part02.內部類;
public class innerclassdemo
}class outter
}}
內部類,抽象類和介面
abstract普通類繼承抽象類要把抽象類中的所有抽象方法都覆蓋,抽象類繼承抽象類不用。抽象類不能被建立物件。普通類不能有抽象方法,抽象類可以有普通方法。建立了抽象父類的物件new後面是子類物件是可以實現的。implements用來繼承介面,inte ce介面中不存在具體的方法,介面中只存在抽象方法...
抽象類 介面和內部類
1.1 使用抽象類 1.1.1.抽象方法和抽象類 由abstract修飾的方法為抽象方法,抽象方法即只有方法的定義,沒有方法體實現,用乙個分號結尾。即方法五要素中,抽象方法缺少了乙個要素 即 方法體 也可以將抽象方法理解為不完整的方法。若將抽象方法包含在類中,則該類也應該為抽象的,可以理解為,該類也...
抽象類 介面和內部類
抽象類的所有方法,繼承了它的子類,都必須要實現它的抽象方法 除非它的子類也是抽象類 抽象類不能被例項化,只能靠子類去實現 抽象類中可以有普通方法 抽象方法必須在抽象類中 普通類 只有具體實現 抽象類 既可以有具體實現也可以有約束 抽象方法 介面 只有約束 抽象方法 自己無法寫方法 介面裡面的方法預設...