這篇文章主要介紹了Java封裝、繼承、多態(tài)特性實(shí)例代碼分析的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡(jiǎn)單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇Java封裝、繼承、多態(tài)特性實(shí)例代碼分析文章都會(huì)有所收獲,下面我們一起來(lái)看看吧。
網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)的開(kāi)發(fā),更需要了解用戶,從用戶角度來(lái)建設(shè)網(wǎng)站,獲得較好的用戶體驗(yàn)。成都創(chuàng)新互聯(lián)多年互聯(lián)網(wǎng)經(jīng)驗(yàn),見(jiàn)的多,溝通容易、能幫助客戶提出的運(yùn)營(yíng)建議。作為成都一家網(wǎng)絡(luò)公司,打造的就是網(wǎng)站建設(shè)產(chǎn)品直銷的概念。選擇成都創(chuàng)新互聯(lián),不只是建站,我們把建站作為產(chǎn)品,不斷的更新、完善,讓每位來(lái)訪用戶感受到浩方產(chǎn)品的價(jià)值服務(wù)。
什么是封裝,談?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ě))。
什么是繼承,談?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{}
什么是多態(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的這三大特性
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)特性實(shí)例代碼分析”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“Java封裝、繼承、多態(tài)特性實(shí)例代碼分析”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
新聞標(biāo)題:Java封裝、繼承、多態(tài)特性實(shí)例代碼分析
標(biāo)題URL:http://chinadenli.net/article4/ggjgie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站建設(shè)、外貿(mào)建站、網(wǎng)站導(dǎo)航、品牌網(wǎng)站制作、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)