*abstract和final關鍵字不可以同時修飾乙個類,因為final關鍵字使的類不可被繼承,而abstract修飾的類如果不能被繼承那就沒有任何意義。兩個關鍵字有衝突所以不可以同時修飾乙個類
*抽象方法:
1.由abstract修飾
2.抽象方法只有定義,沒有方法體
3.只有方法的定義,沒有具體的實現(連都沒有)
*抽象類
1.由abstract修飾
2.包含抽象方法的類必須是抽象類
不包含抽象方法的類也可以宣告為抽象類-------沒有任何意義
3.抽象類不能被例項化(抽象類不能被例項化(new物件),但是可以被宣告引用)
flyingobject o =new flyingobject();//編譯錯誤
flyingobject oo = new flyingobject[3];//正確----new的是flyingobject陣列物件
flyingobject f;//正確
4.抽象類是需要被繼承的,派生類需要:
4.1)重寫抽象類中的所有抽象方法-----變不完整為完整
4.2)也宣告為抽象類-----------------一般不建議這麼做
5.抽象類的意義:
5.1)封裝派生類共有的屬性和行為---------為了實現**復用
5.2)可以為所有派生類提供工藝的型別-----為了實現向上造型
5.3)可以包含抽象方法,抽象方法存在的意義就是為了給所有派生類提供統一入口(就是可以點出來)
派生類的具體行為不同,但是入口是一致的
抽象方法和抽象類
思想 利用通用介面建立的一種基本形式,以此表示所有匯出類的共同部分 概念 1 抽象方法 僅有宣告,沒有方法體 2 抽象類 含抽象方法的類 要點 抽象類可以不含抽象方法 抽象類不能被例項化 不能使用 new 關鍵字 子類繼承抽象父類而不提供方法定義,則子類也必須為抽象類 抽象類可以包含屬性 方法 構造...
抽象方法和抽象類
1.什麼是抽象方法 定義 乙個方法如果沒有方法體 乙個方法不使用 直接使用分號結束的方法,才是沒有方法體的方法 則這個方法就是抽象方法 一 宣告乙個方法,不適用 而直接分號結束 二 如果是抽象方法,必須使用 abstract 抽象關鍵字來修飾 三 不是抽象類,不可以使用抽象方法 2.什麼是抽象類 一...
抽象類和抽象方法
我認為抽象類和抽象方法是物件導向程式設計中十分重要的,利用這個特性來讓所有操作是都在基類上,實現了多型的特性。抽象類 1.抽象類的宣告。在類名前面的修飾符中新增abstract修飾符就能得到乙個抽象類。2.抽象類可以包含普通方法,也可以包含抽象方法 但是,包含抽象方法的類必為抽象類。3.抽象類無法例...