摘要:中類的概念及類與對象的關(guān)系什么是類從語義上理解,類就是用于創(chuàng)建對象的模版,是一個抽象的概念從語法上理解,類就是我們指定的一種數(shù)據(jù)類型類和對象的關(guān)系語義上,類是創(chuàng)建對象的模版,對象是類的實例語法上,類是自定義數(shù)據(jù)類型,對象是這種類型的變量創(chuàng)建
1、Java中類的概念及類與對象的關(guān)系
什么是類?
從語義上理解,類就是用于創(chuàng)建對象的模版,是一個抽象的概念;從語法上理解,類就是我們指定的一種數(shù)據(jù)類型;
類和對象的關(guān)系
語義上,類是創(chuàng)建對象的模版,對象是類的實例;語法上,類是自定義數(shù)據(jù)類型,對象是這種類型的變量;
創(chuàng)建對象
類名 對象名=new 類();
引用對象成員
引用對象屬性:對象.屬性;
引用對象方法:對象.方法();
注意:字段屬性默認(rèn)為“private”;
2、Java中類的封裝的作用與實現(xiàn)
字段成員公開屬性:public、private,對核心成員對外不公開;屬性成員setter、getter方法,對核心成員操作;
私有字段 屬性 方法 private int stuNo; public int getStuNo(){ return stuNo; } public void setStuNo(int stuNo){ this.stuNo=stuNo; }
技巧:多屬性封裝大同小異,Eclipse右擊source,generate Setter and Getter自動生成;
3、Java中的構(gòu)造方法
構(gòu)造方法:負(fù)責(zé)對象成員的初始化工作,創(chuàng)建類時可以對某些字段賦初值;
語法規(guī)則:方法名和類名相同,沒有返回值【不是“void”】
public 類名(參數(shù)){ ... } //原始構(gòu)造方法(默認(rèn)無參構(gòu)造函數(shù)) public Demo2() { } //構(gòu)造方法重載 public Demo2(int stuNo, String stuName, String className) { this.stuNo = stuNo; this.stuName = stuName; this.className = className; }
構(gòu)造方法是Java類中一種特殊方法:
該方法與類同名
該方法無返回值
該方法不能手工調(diào)用,它是在創(chuàng)建類的實例時系統(tǒng)自動調(diào)用
一個類可以沒有構(gòu)造方法(隱式無參構(gòu)造方法),也可以有多個構(gòu)造方法,它們之間構(gòu)成重載關(guān)系
如果我們定義有參構(gòu)造方法,屏蔽系統(tǒng)無參構(gòu)造方法
構(gòu)造方法不能被重載
構(gòu)造方法作用和使用場合:
創(chuàng)建一個類的實例時,給私有變量賦初值
簡化我們?yōu)轭愖侄钨x值的代碼
4、Java中的重載
當(dāng)一個類中存在兩個或兩個以上同名的方法,當(dāng)這兩個方法滿足以下關(guān)系時,他們之間構(gòu)成重載關(guān)系:
一個類中存在兩個以上同名方法
方法參數(shù)組合必須不同(參數(shù)個數(shù)或參數(shù)類型的組合不同)
返回值類型不能作為判斷方法是否重載的依據(jù)
要是你之前學(xué)過C++,就會覺得這部分挺簡單的!
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/64058.html
摘要:即兩個構(gòu)造函數(shù)創(chuàng)建的實例的是指向同一個原型對象當(dāng)原型鏈修改的時候,其子不會發(fā)生改變通過運算符來進(jìn)行計算屬性對就是上文中的構(gòu)造器。 類和模塊每個js的對象都是屬性的集合。相互之間沒有聯(lián)系。js也能定義對象的類,讓每個對象都共享某些屬性。類的成員或者實例包含一些屬性,用來存放或者定義他們的狀態(tài)。有些屬性定義了其行為,(行為或者稱為方法)方法是類定義的,被所有的實例共享。例如,用一個類來表示...
摘要:什么是對象什么是面向?qū)ο笫裁词穷愂裁词菍ο蟮膶傩允裁词菍ο蟮姆椒惡蛯ο蟮年P(guān)系 什么是對象 showImg(https://segmentfault.com/img/bVbnyOy?w=927&h=595); 什么是面向?qū)ο?showImg(https://segmentfault.com/img/bVbnyO3?w=962&h=539); showImg(https://segmen...
摘要:屬性每個函數(shù)默認(rèn)有屬性方法返回的函數(shù)除外,其值為構(gòu)造函數(shù)創(chuàng)建對象繼承的對象。其思路使用原型鏈實現(xiàn)原型屬性和方法的繼承通過借用構(gòu)造函數(shù)實現(xiàn)實例屬性繼承。 1 類和模塊 每個獨立的JavaScript對象都是一個屬性的集合,獨立對象間沒有任何關(guān)系 ES5中的類是基于原型繼承實現(xiàn)的:如果兩個對象從同一個原型對象繼承屬性,稱兩個對象為同一個類的實例。r instanceof Range.pr...
摘要:嵌套類增加了封裝性內(nèi)部類和靜態(tài)嵌套類的不同根源來自于,最大區(qū)別在于訪問外部類成員的權(quán)限。靜態(tài)嵌套類修飾符使得嵌套類對象成為外部類的靜態(tài)成員,與外部類直接關(guān)聯(lián)。 術(shù)語規(guī)范:按照官方文檔,定義在外部類(封裝類)內(nèi)部的類稱之為nested class,根據(jù)是否被static關(guān)鍵字修飾又分為兩類:static nested classes 和 inner classes。 class Oute...
摘要:開始先裝好的相關(guān)環(huán)境谷歌一下。自動調(diào)用構(gòu)造函數(shù),并且將傳進(jìn)去的三個參數(shù)賦值給的三個屬性因為指向這個出來的對象通過這樣我們可以得到一個的對象的年齡,顏色,尺寸分別為。 寫在前面 作為一個前端切圖仔,再學(xué)點后端的東西吧,感覺后端很有意思啊,不學(xué)白不學(xué)。 記錄下整個過程,方便以后回顧和反思。 開始 先裝好JAVA的相關(guān)環(huán)境(谷歌一下)。 小伙伴們推薦Ide用IDEA(谷歌下載安裝)。 IDE...
閱讀 4320·2021-09-24 09:47
閱讀 1192·2021-09-03 10:33
閱讀 2077·2019-08-30 11:13
閱讀 1039·2019-08-30 10:49
閱讀 1762·2019-08-29 16:13
閱讀 2052·2019-08-29 11:28
閱讀 3102·2019-08-26 13:31
閱讀 3638·2019-08-23 17:14