1-继承、模板设计模式、抽象类、final
生活随笔
收集整理的這篇文章主要介紹了
1-继承、模板设计模式、抽象类、final
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 前言
- 一、繼承
- 1、繼承的格式
- 2、繼承后成員的訪問規則
- 2.1、繼承后構造方法的訪問規則:
- 2.2、繼承后私有成員的訪問規則:
- 2.3、繼承后非私有成員的訪問規則:
- 3、this和super關鍵字的三種用法
- 3.1、this的三種用法:
- 3.2、super的三種用法:
- 4、方法的重寫
- 5、繼承的特點
- 二、抽象類
- 1、抽象類的定義及使用
- 2、抽象方法的定義及使用
- 三、模板設計模式:
- 四、final關鍵字
- 1、final修飾成員變量
- 2、final修飾成員方法
- 3、final修飾類
前言
提示:這里介紹繼承、抽象類,模板設計模式和final關鍵字的知識點
提示:以下是本篇文章正文內容,下面案例可供參考
一、繼承
概述:一個類繼承自另一個類,該類為子類,被繼承的類為父類。
好處:①提高代碼的復用性,②使類與類之間產生了關系
1、繼承的格式
修飾符 子類名 extends 父類名{} public Zi extends Fu{}2、繼承后成員的訪問規則
2.1、繼承后構造方法的訪問規則:
子類無法繼承父類的構造方法;2.2、繼承后私有成員的訪問規則:
繼承后子類不能直接訪問父類的私有成員,但是可以間接訪問;2.3、繼承后非私有成員的訪問規則:
繼承后子類可以直接訪問父類的非私有成員; 訪問規則:優先在子類中查找,如果找到了就直接用子類的成員如果沒有找到,則去父類中查找;3、this和super關鍵字的三種用法
3.1、this的三種用法:
介紹:this可以訪問成員變量,成員方法和構造方法;
①、訪問成員變量:this.成員變量名;使用場景:區別同名的局部變量和成員變量②、訪問成員方法:this.成員方法名(實參);③、訪問構造方法:this(實參):可以在本類中的一個構造方法中調用另一個構造方法 注意:1、只能在本類的構造方法中調用本類的其他構造方法;2、this調用本類的構造方法只能放在構造方法的第一行;3、兩個本類的構造方法不能相互之間調用3.2、super的三種用法:
介紹:super可以訪問父類的成員變量,成員方法和構造方法;
①、訪問成員變量:super.成員變量名;使用場景:區別同名的子父類成員變量②、訪問成員方法:super.成員方法名(實參);使用場景:區別同名的子父類成員方法;③、訪問構造方法:super(實參) 注意:1、super訪問父類的構造方法一定要放在子類的構造方法的第一行;2、子類構造方法會默認調用父類的空參構造方法;3、在子類構造方法中調用父類構造方法,其實就是為了初始化從父類繼承過來的屬性;super使用的注意事項:1、super訪問成員變量和成員方法,優先去父類中找,如果沒有則區爺爺類中找,如果沒有,則以此類推;Java頂層父類是Object,所有的類都直接或間接繼承了Object類;2、子類的構造方法會默認調用父類的空參構造方法,如果父類中只定義了有參構造方法,而沒有定義空參構造方法,則編譯會報錯;4、方法的重寫
概述:子類中存在和父類一樣的方法(返回值類型,方法名和參數列表都一致),該方法就是重寫父類的方法;
重寫的注意事項:1、方法重寫是發生在父子類中的;2、重寫的方法,他的返回值類型,方法名和參數列表都是一致的;3、使用@Override注解,可以檢驗重寫是否成功,重寫注解校驗;建議重寫方法都加上這個注解,一方面可以提高代碼的可讀性,一方面可以防止出錯;4、子父類重寫方法是,必須要遵循子類的權限大于等于父類的權限5、使用場景:父類的方法,子類有不同的實現,那么子類就需要重寫父類的方法;5、繼承的特點
1、Java繼承只支持單繼承,不支持多繼承; class A { } class B { } class C1 extends A {// class C2 extends A, B {// error } } 2、一個類只能有一個父類,可以有多個子類; class A { } class c1 extends A{} class c2 extends A{}3、可以多層繼承 class A { } class B { } class A extends B{} class B extends C{}二、抽象類
1、抽象類的定義及使用
概述:沒有方法體,被abstract修飾的類就是抽象類;
特點:
①、有抽象方法的類一定是抽象類,抽象類中不一定有抽象方法;
②、強制要求子類重寫
2、抽象方法的定義及使用
格式:修飾符 abstract 返回值類型 方法名(參數);public abstract void method(參數);三、模板設計模式:
設計模式:
設計模式就是解決一些問題時的固定思路,也就是代碼設計思想的總結;
四、final關鍵字
概述:final是一個關鍵字,表示最終,不可變的意思;可以用來修飾變量,修飾方法,修飾類;
1、final修飾成員變量
格式:修飾符 final int num = 10;public final int num; num = 10; 特點:1、被final修飾的變量,只能被賦值一次,不能重復賦值;2、一般在開發中,被final修飾的變量都需要大寫;(final修飾的變量其實就是自定義的常量);2、final修飾成員方法
格式:修飾符 final 返回值類型 method(形參列表){方法體....}public final void method(形參列表){方法體...} 特點:被final修飾的方法不能被重寫;3、final修飾類
格式:修飾符 final class 類名{}public final class Fu{} 特點:被final修飾的類不能被繼承;java后續基礎內容正在快馬加鞭更新中,內容若有誤,各位碼友提出建設性意見。
總結
以上是生活随笔為你收集整理的1-继承、模板设计模式、抽象类、final的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 7、mysql热备--xtrabacku
- 下一篇: .NET6 上传文件大小,地址栏长度限制