抽象类实例化 使用原功能 c++_java 学习笔记 day08 final/static关键字、抽象类和接口...
生活随笔
收集整理的這篇文章主要介紹了
抽象类实例化 使用原功能 c++_java 学习笔记 day08 final/static关键字、抽象类和接口...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.final關鍵字
- final修飾類:此類不能被繼承
final修飾變量:則變量不能被修改,是常量
final修飾方法:父類的方法被final修飾時,不能被重寫
2.static關鍵字
2.1被static修飾的成員的特點,
- 被類的所有對象共享
- 可以通過類名直接訪問
- 優先于對象存在
- 隨著類的加載而加載
2.2被static修飾的成員方法
- 靜態的方法只能訪問【靜態】的成員變量和【靜態】的成員變量
靜態的方法中不能出現this和super關鍵字。因為靜態方法是隨著類的加載而加載,先進入內存,this和super在對象創建時才存在。
3.抽象類
- 抽象類的特點:
- A:抽象類和抽象方法必須使用abstract關鍵字修飾
- B:抽象類中不一定有抽象方法,有抽象方法的類一定是抽象類
- C:抽象類不能實例化 抽象類如何實例化呢? 參照多態的方式,通過子類對象實例化。
- D:抽象類的子類 要么重寫抽象類中的所有抽象方法 要么是抽象類
4. 接口
- 定義接口使用interface關鍵字
- 類和接口是實現關系,用implements關鍵詞實現
- 接口不能實例化,用多態來實例化
- 接口中的變量默認就是常量
- 接口中沒有構造方法,但是默認是Object
- 接口中的方法必須是抽象
- 類與類:
繼承關系,只能單繼承,可以多層繼承。 - 類與接口:
實現關系,可以單實現,也可以多實現。
還可以在繼承一個類的同時實現多個接口。 - 接口與接口:
繼承關系,可以單繼承,也可以多繼承。 - 抽象類和接口的區別:
- A:成員區別 抽象類: 成員變量:可以是變量,也可以是常量 構造方法:有 成員方法:可以是抽象方法,也可以是非抽象方法 接口: 成員變量:只能是常量 成員方法:只能是抽象方法
- B:關系區別 類與類:繼承關系,只能單繼承,可以多層繼承 類與接口:實現關系,可以單實現,也可以多實現 接口與接口:繼承關系,可以單繼承,也可以多繼承 C:設計理念的區別 抽象類 被繼承體現的是:"is a" 抽象類中定義的是繼承體系的共性功能 接口 被實現體現的是:"like a" 接口中定義的是該體系的擴展功能
- 舉例: 貓,動物 貓,跳高運動員
5.包
- 包:其實就是文件夾。
- 作用:就是對類進行分類管理。
- 包的定義格式:
package 包名;
如果是多級包用.隔開即可 - 注意事項:
A:package必須是程序的第一條可執行語句
B:package語句在一個java文件中只能有一個 - 包的導入 用import
6.權限修飾符
- 權限修飾符:
總結
以上是生活随笔為你收集整理的抽象类实例化 使用原功能 c++_java 学习笔记 day08 final/static关键字、抽象类和接口...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python3解析json数据_Pyth
- 下一篇: session过期重新登陆_深入分析Se