Java中類的定義和初始化示例詳解
類的定義
類的定義格式
//創(chuàng)建類
class ClassName{
field ;//成員屬性/字段
method;//方法
}
class為定義類的關(guān)鍵字,ClassName為類的名字,{ }為類的主體;
例如:
class Person{
public String name ; //成員屬性
public int age;
public void eat(){ // 方法
System.out.println("吃飯!");
}
}
類的成員
類的成員包含,字段(成員變量),方法,代碼塊,內(nèi)部類,接口…
字段/屬性/成員變量
在類中,但是在方法外定義的變量,我們稱為: 字段/屬性/成員變量。
class Person{
public String name ; //成員屬性
public int age;
}
我們?cè)谑褂玫臅r(shí)候,使用 . 訪問(wèn)對(duì)象的屬性,即可以讀,也可以寫(xiě),對(duì)于對(duì)象中的字段,如果沒(méi)有初始值,那么默認(rèn)為“0”值的變形
| 類型 | “0”值 |
|---|---|
| byte/short/int | 0 |
| long | 0L |
| float | 0.0F |
| double | 0.0 |
| boolean | false |
| char | 0x0000對(duì)應(yīng)的字符 |
| 引用類型 | null |
方法
用于描述對(duì)象行為
例如:
class Person{
public String name ; //成員屬性
public int age;
public void eat(){ // 方法
System.out.println("吃飯!");
}
}
類的實(shí)例化
類的實(shí)例化,當(dāng)我們定義了一個(gè)類后,就相當(dāng)于多了一種新的類型,和int類似,只不過(guò)是我們自己定義的類型,我們可以使用它。當(dāng)用這些類來(lái)定義對(duì)象的時(shí)候,稱為類的實(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è)類可以創(chuàng)建多個(gè)對(duì)象。
類和對(duì)象的關(guān)系,我們可以理解為,類是模板,而一個(gè)模板在在不使用的時(shí)候,就放在哪里,而當(dāng)使用的時(shí)候,就可以批量的制造所需要的東西了。
我們還可以借助引用來(lái)理解:例如,上題:new一個(gè)Teacher對(duì)象,將引用a指向該對(duì)象,我們通過(guò)引用訪問(wèn)該對(duì)象。
類的初始化
實(shí)例成員未初始化,默認(rèn)值為對(duì)應(yīng)的“0”值,
在初始化的時(shí)候,定義初始化,和構(gòu)造代碼塊初始化的等級(jí)相同,誰(shuí)在前面誰(shuí)先執(zhí)行,
構(gòu)造方法,永遠(yuǎn)在第一類(定義初始化OR構(gòu)造代碼塊)執(zhí)行之后執(zhí)行,與位置無(wú)關(guān)
總結(jié)
到此這篇關(guān)于Java中類的定義和初始化的文章就介紹到這了,更多相關(guān)Java類的定義和初始化內(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-07
java中四種生成和解析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-07
java使用Dijkstra算法實(shí)現(xiàn)單源最短路徑
這篇文章主要為大家詳細(xì)介紹了java使用Dijkstra算法實(shí)現(xiàn)單源最短路徑,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01
Java 實(shí)現(xiàn)跨平臺(tái)的操作方式
這篇文章主要介紹了Java 實(shí)現(xiàn)跨平臺(tái)的操作方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09

