欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺談Java封裝、繼承、多態(tài)特性

 更新時(shí)間:2021年12月21日 16:10:24   作者:網(wǎng)友小浩  
大家好,本篇文章主要講的是淺談Java封裝、繼承、多態(tài)特性,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽

1.封裝

什么是封裝,談?wù)勛约簩?duì)封裝的理解,封裝就是將類的信息(比如說(shuō)類的屬性)隱藏在類的內(nèi)部,不允許外部程序直接訪問(wèn)。此時(shí)就要提到一個(gè)關(guān)鍵字private,他是一個(gè)權(quán)限修飾符,可以用來(lái)修飾成員(變量和方法),保護(hù)成員不被其他別的類來(lái)使用,如果需要被其他類來(lái)使用,那么需要提供對(duì)應(yīng)的操作:a.提供get變量名()方法,用于獲取成員變量的值 b.提供set變量名(參數(shù)),用于設(shè)置成員變量的值,同樣也和get方法一樣,都是用public來(lái)修飾(同時(shí)切記變量名的首字母一定大寫(xiě))。

2.繼承

什么是繼承,談?wù)勛约簩?duì)繼承的理解,繼承是類與類之間的一直關(guān)系,類似于數(shù)學(xué)集合之中包含與被包含之間的關(guān)系,比如大學(xué)生屬于學(xué)生,那么可以看成是大學(xué)生類 繼承了學(xué)生類,那么大學(xué)生類就是學(xué)生類的子類(派生類),學(xué)生類是大學(xué)生類的父類(基類),同時(shí)要值得注意的是Java中的繼承是單繼承(多層次繼承),多實(shí)現(xiàn)(接口),(理解成一個(gè)類不可能有兩個(gè)爹,但是兒子可以繼承父親,父親可以繼承爺爺這種多層次)

格式:public class 子類名 extends 父類名{}

舉例:public class zi extends fu{}

3.多態(tài)

什么是多態(tài),封裝和繼承幾乎都是為多態(tài)而準(zhǔn)備的,多態(tài)我個(gè)人理解成是java程序在運(yùn)行中使用繼承時(shí)的一種關(guān)系,比如方法重寫(xiě),繼承是多態(tài)的實(shí)現(xiàn)基礎(chǔ),

舉例:我們可以說(shuō)大學(xué)生是大學(xué)生:大學(xué)生? unst=new 大學(xué)生();

我們也可以說(shuō)大學(xué)生是學(xué)生:學(xué)生 st=new 大學(xué)生();

這里大學(xué)生在不同的時(shí)刻表現(xiàn)出不同的形態(tài),我認(rèn)為這就是多態(tài)

多態(tài)實(shí)現(xiàn)的前提和體現(xiàn)有以下幾點(diǎn):1.有繼承關(guān)系 2.有方法重寫(xiě) 3.有父類引向子類對(duì)象

下面通過(guò)代碼來(lái)給大家展示一下封裝,繼承,多態(tài) java的這三大特性

4.上代碼,效果運(yùn)行放在最后

package Cl1;
//先創(chuàng)造一個(gè)Computer的父類
public class Computer {
    //定義屬性,利用private關(guān)鍵字,對(duì)類的性質(zhì)進(jìn)行封裝,
    private String name;
    private int price;
    //構(gòu)造一個(gè)無(wú)參方法
    public Computer(){
    }
    //構(gòu)造一個(gè)有參方法
    public Computer(String name) {
        this.name = name;
    }
    //構(gòu)造一個(gè)有參方法
    public String getName() {
        return name;
    }
    //通過(guò)set加變量名,首字母大寫(xiě)來(lái)設(shè)置
    public void setName(String name) {
        this.name = name;
    }
    //通過(guò)get加變量名,首字母大寫(xiě)來(lái)獲取
    public Computer(int price) {
        this.price = price;
    }
    //通過(guò)set加變量名,首字母大寫(xiě)來(lái)設(shè)置
    public void setPrice(int price) {
        this.price = price;
    }
    //通過(guò)get加變量名,首字母大寫(xiě)來(lái)獲取
    public int getPrice() {
        return price;
    }
    //定義父類study方法
    public void study(){
        System.out.println("電腦能用來(lái)學(xué)習(xí),也能敲代碼");
    }
}
package Cl1;
//定義一個(gè)Lenovo的子類來(lái)繼承父類
public class Lenovo extends Computer{
    public Lenovo(){
    }
    public Lenovo(String name){
        super(name);
    }
    //重新study方法,并且同時(shí)繼承調(diào)用父類中的study方法
    public void study(){
        super.study();
        System.out.println(getName()+"價(jià)格"+getPrice()+"rmb,"+"敲代碼,年入百萬(wàn)不是夢(mèng)");
    }
}
package Cl1;
//創(chuàng)建一個(gè)Apple的子類來(lái)繼承Computer
public class Apple extends Computer{
    //定義make方法,同時(shí)Computer中的s對(duì)象 調(diào)用study方法
    public void make(Computer s){
        s.study();
    }
}
package Cl1;
//測(cè)試類別
public class test {
    public static void main(String[] args) {
        //自動(dòng)轉(zhuǎn)型(向上轉(zhuǎn)型)
        Computer cp=new Lenovo();
        cp.setName("聯(lián)想小新");
        cp.setPrice(5000);
        //調(diào)用Lenovo中的study方法
        cp.study();
        //多態(tài)展現(xiàn),
        Apple apple=new Apple();
        apple.make(cp);
    }
}

到此這篇關(guān)于淺談Java封裝、繼承、多態(tài)特性的文章就介紹到這了,更多相關(guān)Java封裝繼承多態(tài)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot 緩存 Caffeine使用解析

    SpringBoot 緩存 Caffeine使用解析

    這篇文章主要介紹了SpringBoot 緩存 Caffeine使用解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Mybatis 中如何判斷集合的size

    Mybatis 中如何判斷集合的size

    這篇文章主要介紹了在Mybatis中判斷集合的size操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-02-02
  • java實(shí)現(xiàn)html轉(zhuǎn)pdf方法步驟

    java實(shí)現(xiàn)html轉(zhuǎn)pdf方法步驟

    這篇文章主要給大家介紹了關(guān)于java實(shí)現(xiàn)html轉(zhuǎn)pdf方法的相關(guān)資料,要將HTML轉(zhuǎn)換成PDF,我們需要借助Java中的第三方庫(kù),文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-08-08
  • 最新評(píng)論