Java中類(lèi)的定義和初始化示例詳解
類(lèi)的定義
類(lèi)的定義格式
//創(chuàng)建類(lèi) class ClassName{ field ;//成員屬性/字段 method;//方法 }
class為定義類(lèi)的關(guān)鍵字,ClassName為類(lèi)的名字,{ }為類(lèi)的主體;
例如:
class Person{ public String name ; //成員屬性 public int age; public void eat(){ // 方法 System.out.println("吃飯!"); } }
類(lèi)的成員
類(lèi)的成員包含,字段(成員變量),方法,代碼塊,內(nèi)部類(lèi),接口…
字段/屬性/成員變量
在類(lèi)中,但是在方法外定義的變量,我們稱(chēng)為: 字段/屬性/成員變量。
class Person{ public String name ; //成員屬性 public int age; }
我們?cè)谑褂玫臅r(shí)候,使用 . 訪(fǎng)問(wèn)對(duì)象的屬性,即可以讀,也可以寫(xiě),對(duì)于對(duì)象中的字段,如果沒(méi)有初始值,那么默認(rèn)為“0”值的變形
類(lèi)型 | “0”值 |
---|---|
byte/short/int | 0 |
long | 0L |
float | 0.0F |
double | 0.0 |
boolean | false |
char | 0x0000對(duì)應(yīng)的字符 |
引用類(lèi)型 | null |
方法
用于描述對(duì)象行為
例如:
class Person{ public String name ; //成員屬性 public int age; public void eat(){ // 方法 System.out.println("吃飯!"); } }
類(lèi)的實(shí)例化
類(lèi)的實(shí)例化,當(dāng)我們定義了一個(gè)類(lèi)后,就相當(dāng)于多了一種新的類(lèi)型,和int類(lèi)似,只不過(guò)是我們自己定義的類(lèi)型,我們可以使用它。當(dāng)用這些類(lèi)來(lái)定義對(duì)象的時(shí)候,稱(chēng)為類(lèi)的實(shí)例化。
通過(guò) new 關(guān)鍵字來(lái)實(shí)例化對(duì)象。
例如:
public class Teacher { public String name; public int age; public void 自我介紹() { // 在方法中可以直接使用屬性 // name 讀取該對(duì)象中,屬性 name 的值 System.out.printf("我叫 %s,我今年 %d 歲", name, age); } }
public class TeacherTest { public static void main(String[] args) { // 構(gòu)造對(duì)象,并且得到 a 引用,用于以后操作對(duì)象 Teacher a = new Teacher(); // 通過(guò) a 引用,為對(duì)象的屬性進(jìn)行賦值操作 a.name = "aa"; a.age = 35; // 通過(guò) a 引用,調(diào)用屬于該對(duì)象的方法 a.自我介紹(); // 再來(lái)一個(gè)新的老師 Teacher b = new Teacher(); b.name = "bb"; b.age = 33; b.自我介紹(); Teacher c=new Teacher(); c.name="ccc"; c.age=18; c.自我介紹(); } }
注意:
- new關(guān)鍵字用于創(chuàng)建一個(gè)對(duì)象實(shí)例。
- 同一個(gè)類(lèi)可以創(chuàng)建多個(gè)對(duì)象。
類(lèi)和對(duì)象的關(guān)系,我們可以理解為,類(lèi)是模板,而一個(gè)模板在在不使用的時(shí)候,就放在哪里,而當(dāng)使用的時(shí)候,就可以批量的制造所需要的東西了。
我們還可以借助引用來(lái)理解:例如,上題:new一個(gè)Teacher對(duì)象,將引用a指向該對(duì)象,我們通過(guò)引用訪(fǎng)問(wèn)該對(duì)象。
類(lèi)的初始化
實(shí)例成員未初始化,默認(rèn)值為對(duì)應(yīng)的“0”值,
在初始化的時(shí)候,定義初始化,和構(gòu)造代碼塊初始化的等級(jí)相同,誰(shuí)在前面誰(shuí)先執(zhí)行,
構(gòu)造方法,永遠(yuǎn)在第一類(lèi)(定義初始化OR構(gòu)造代碼塊)執(zhí)行之后執(zhí)行,與位置無(wú)關(guān)
總結(jié)
到此這篇關(guān)于Java中類(lèi)的定義和初始化的文章就介紹到這了,更多相關(guān)Java類(lèi)的定義和初始化內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java嵌套for循環(huán)的幾種常見(jiàn)優(yōu)化方案
這篇文章主要給大家介紹了關(guān)于Java嵌套for循環(huán)的幾種常見(jiàn)優(yōu)化,在Java中優(yōu)化嵌套for循環(huán)可以通過(guò)以下幾種方式來(lái)提高性能和效率,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-07-07java中四種生成和解析XML文檔的方法詳解(介紹+優(yōu)缺點(diǎn)比較+示例)
本篇文章主要介紹了四種生成和解析XML文檔的方法,即:DOM、SAX、JDOM和DOM4J,具有一定的參考價(jià)值,有興趣的可以了解一下。2016-11-11淺談SpringBoot 中關(guān)于自定義異常處理的套路
這篇文章主要介紹了淺談SpringBoot 中關(guān)于自定義異常處理的套路,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04解決springmvc整合Mybatis的Log4j日志輸出問(wèn)題
這篇文章主要介紹了解決springmvc整合Mybatis的Log4j日志輸出問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07java使用Dijkstra算法實(shí)現(xiàn)單源最短路徑
這篇文章主要為大家詳細(xì)介紹了java使用Dijkstra算法實(shí)現(xiàn)單源最短路徑,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01Java 實(shí)現(xiàn)跨平臺(tái)的操作方式
這篇文章主要介紹了Java 實(shí)現(xiàn)跨平臺(tái)的操作方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09