您好,歡迎來(lái)到賦能網(wǎng)!

java中繼承的好處是什么?java中繼承要注意什么?

賦能網(wǎng) 2023-05-09 89

java繼承是Java學(xué)習(xí)中相當(dāng)重要的一個(gè)部分,也是Java的核心知識(shí),我們需要java,繼承的相關(guān)知識(shí)是一定要學(xué)的,那java中繼承的好處是什么?下面來(lái)我們就來(lái)給大家講解一下。

Java中的繼承與生活中的繼承還是有區(qū)別的,在程序中繼承以后,你的父類和你的子類同樣的也具有某一成員變量和某些方法,誰(shuí)繼承了父類誰(shuí)就是這個(gè)父類的子類,他們之間也就存在中某種連帶關(guān)系。

我們?cè)诰幊痰臅r(shí)候常常遇到大量的代碼需要重復(fù)的情況,導(dǎo)致我們的代碼比較臃腫,開(kāi)發(fā)效率也大大降低,所以Java繼承的作用就體現(xiàn)出來(lái)了。定義一個(gè)類做為父類,將一些共有的屬性和方法定義在這個(gè)類中,當(dāng)某一個(gè)類需要使用到這些方法和屬性的時(shí)候,就可以直接通過(guò)extends關(guān)鍵字就可以直接調(diào)用父類中的成員變量和方法,方便快捷。

Java繼承的使用方法

1、定義一個(gè)繼承的語(yǔ)法:

修飾符 class 子類類名 extends 父類名{

//類定義部分

}

這就是一個(gè)繼承的一個(gè)語(yǔ)法模式,記住關(guān)鍵字extends。

2、父類(超類):

父類我們不做任何要求和限制,只要是將一些公共使用到的一些變量、方法、構(gòu)造器等等一系列的都可以定義在一個(gè)類里面。只有這個(gè)類被繼承以后,他的角色馬上就從普通類轉(zhuǎn)變?yōu)橐粋€(gè)父類。

3、子類(基類或派生類):

子類的定義也就是說(shuō)當(dāng)你使用繼承關(guān)鍵字繼承某一個(gè)類的時(shí)候,你就自動(dòng)的成為了這個(gè)類的子類,你和這個(gè)類就有一種繼承的關(guān)系在里面。父類里面定義的所有變量、方法、構(gòu)造器你都可以直接調(diào)用使用,當(dāng)然得排除使用private修飾的變量和方法。

4、重寫(xiě)覆蓋:重寫(xiě)這個(gè)概念很重要,一般是子類重寫(xiě)父類中的方法,為什么要重寫(xiě)父類中的方法?是因?yàn)楦割愔卸x的一些方法不能夠滿足子類里面的需求,在父類定義的方法上再添加上子類中的另外的東西,使得子類里面更完善,具體看下面的實(shí)例一。所以說(shuō),子類是對(duì)父類的一個(gè)擴(kuò)展。

在重寫(xiě)的語(yǔ)法中,為了精簡(jiǎn)代碼是重復(fù)率,我們直接使用“super.父類中的方法名”的方式來(lái)實(shí)現(xiàn)對(duì)父類方法的重寫(xiě)覆蓋,就沒(méi)有必要再再一次的編寫(xiě)父類中的方法。

5、調(diào)用構(gòu)造器:

實(shí)例一(實(shí)現(xiàn)簡(jiǎn)單的一個(gè)繼承關(guān)系)

//定義一個(gè)父類(超累):3個(gè)成員變量
class User
{
    String name;
    int age;
    public void display()
    {
        System.out.println("姓名:" + name);
        System.out.println("年齡:" + age);
    }
}
//定義一個(gè)子類(派生類):3個(gè)成員變量
//1、使用extends關(guān)鍵字完成繼承.繼承實(shí)現(xiàn)了代碼的重復(fù)利用。
//2、子類是父類的繼承類。
//3、父類的private成員子類是不可以繼承的。其他的說(shuō)明符的都可以被繼承。
class Student extends User
{
    String password;
    String gender;
    //重寫(xiě)父類的方法。覆蓋父類的定義的方法。這是因?yàn)楦割惗x的不能夠滿足子類的需求。
    @Override //這個(gè)是重寫(xiě)的注解??梢圆粚?xiě),
    public void display()
    {
        //使用super來(lái)顯示父類中已經(jīng)定義的成員方法。從而實(shí)現(xiàn)代碼的重復(fù)利用
        super.display();
        System.out.println("密碼:" + password);
        System.out.println("性別:" + gender);
    }
}
//主類,
public class Extends01
{
    public static void main(String[] args)
    {
        //創(chuàng)建子類的實(shí)例。
        Student st = new Student();
        //賦值
        st.name = "zs";
        st.age = 15;
        st.gender = "男";
        st.password = "123456";
        //打印輸出一下
        st.display();
    }
}

在控制面板中顯示:

姓名:zs

年齡:15

密碼:123456

java中繼承要注意什么?

1、父類也稱作超類、基類。子類:派生類等。

3、Java中只有單繼承,沒(méi)有像 C++那樣的多繼承。多繼承會(huì)引起混亂,使得繼承鏈 過(guò)于復(fù)雜,系統(tǒng)難于維護(hù)。

3、Java中類沒(méi)有多繼承,接口有多繼承。

(視頻教程推薦:java視頻教程)

4、子類繼承父類,可以得到父類的全部屬性和方法 (除了父類的構(gòu)造方法),但不見(jiàn)得可以直接訪問(wèn)(比如,父類私有的屬性和方法)。

5、如果定義一個(gè)類時(shí),沒(méi)有調(diào)用extends,則它的父類是:java.lang.Object。

java中繼承雖然是有好處的,但是也有壞處,就是不支持動(dòng)態(tài)繼承。在運(yùn)行時(shí),子類無(wú)法選擇不同的父類,最后大家如果想要了解更多java初識(shí)知識(shí),敬請(qǐng)關(guān)注賦能網(wǎng)。


本文鏈接:

本文章“java中繼承的好處是什么?java中繼承要注意什么?”已幫助 89 人

免責(zé)聲明:本信息由用戶發(fā)布,本站不承擔(dān)本信息引起的任何交易及知識(shí)產(chǎn)權(quán)侵權(quán)的法律責(zé)任!

本文由賦能網(wǎng) 整理發(fā)布。了解更多培訓(xùn)機(jī)構(gòu)》培訓(xùn)課程》學(xué)習(xí)資訊》課程優(yōu)惠》課程開(kāi)班》學(xué)校地址等機(jī)構(gòu)信息,可以留下您的聯(lián)系方式,讓課程老師跟你詳細(xì)解答:
咨詢熱線:4008-569-579

如果本頁(yè)不是您要找的課程,您也可以百度查找一下: