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;
}
我們在使用的時(shí)候,使用 . 訪問對象的屬性,即可以讀,也可以寫,對于對象中的字段,如果沒有初始值,那么默認(rèn)為“0”值的變形
| 類型 | “0”值 |
|---|---|
| byte/short/int | 0 |
| long | 0L |
| float | 0.0F |
| double | 0.0 |
| boolean | false |
| char | 0x0000對應(yīng)的字符 |
| 引用類型 | null |
方法
用于描述對象行為
例如:
class Person{
public String name ; //成員屬性
public int age;
public void eat(){ // 方法
System.out.println("吃飯!");
}
}
類的實(shí)例化
類的實(shí)例化,當(dāng)我們定義了一個(gè)類后,就相當(dāng)于多了一種新的類型,和int類似,只不過是我們自己定義的類型,我們可以使用它。當(dāng)用這些類來定義對象的時(shí)候,稱為類的實(shí)例化。
通過 new 關(guān)鍵字來實(shí)例化對象。
例如:
public class Teacher {
public String name;
public int age;
public void 自我介紹() {
// 在方法中可以直接使用屬性
// name 讀取該對象中,屬性 name 的值
System.out.printf("我叫 %s,我今年 %d 歲", name, age);
}
}
public class TeacherTest {
public static void main(String[] args) {
// 構(gòu)造對象,并且得到 a 引用,用于以后操作對象
Teacher a = new Teacher();
// 通過 a 引用,為對象的屬性進(jìn)行賦值操作
a.name = "aa";
a.age = 35;
// 通過 a 引用,調(diào)用屬于該對象的方法
a.自我介紹();
// 再來一個(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è)對象實(shí)例。
- 同一個(gè)類可以創(chuàng)建多個(gè)對象。
類和對象的關(guān)系,我們可以理解為,類是模板,而一個(gè)模板在在不使用的時(shí)候,就放在哪里,而當(dāng)使用的時(shí)候,就可以批量的制造所需要的東西了。
我們還可以借助引用來理解:例如,上題:new一個(gè)Teacher對象,將引用a指向該對象,我們通過引用訪問該對象。
類的初始化
實(shí)例成員未初始化,默認(rèn)值為對應(yīng)的“0”值,
在初始化的時(shí)候,定義初始化,和構(gòu)造代碼塊初始化的等級相同,誰在前面誰先執(zhí)行,
構(gòu)造方法,永遠(yuǎn)在第一類(定義初始化OR構(gòu)造代碼塊)執(zhí)行之后執(zhí)行,與位置無關(guān)
總結(jié)
到此這篇關(guān)于Java中類的定義和初始化的文章就介紹到這了,更多相關(guān)Java類的定義和初始化內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java BufferedWriter BufferedReader 源碼分析
本文是關(guān)于Java BufferedWriter ,BufferedReader 簡介、分析源碼 對Java IO 流深入了解,希望看到的同學(xué)對你有所幫助2016-07-07
SpringBoot詳解自定義Stater的應(yīng)用
Springboot的出現(xiàn)極大的簡化了開發(fā)人員的配置,而這之中的一大利器便是springboot的starter,starter是springboot的核心組成部分,springboot官方同時(shí)也為開發(fā)人員封裝了各種各樣方便好用的starter模塊2022-07-07
Java基于Session登錄驗(yàn)證的實(shí)現(xiàn)示例
基于Session的登錄驗(yàn)證方式是最簡單的一種登錄校驗(yàn)方式,本文主要介紹了Java基于Session登錄驗(yàn)證的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2024-02-02
Java使用JDBC驅(qū)動(dòng)連接MySQL數(shù)據(jù)庫
這篇文章主要為大家詳細(xì)介紹了Java使用JDBC驅(qū)動(dòng)連接MySQL數(shù)據(jù)庫的具體步驟,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-12-12
Springboot實(shí)現(xiàn)根據(jù)條件切換注入不同實(shí)現(xiàn)類的示例代碼
這篇文章主要介紹了Springboot實(shí)現(xiàn)根據(jù)條件切換注入不同實(shí)現(xiàn)類的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
Java中有界隊(duì)列的飽和策略(reject policy)原理解析
這篇文章主要介紹了Java中有界隊(duì)列的飽和策略(reject policy)原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04
SpringBoot中如何統(tǒng)一接口返回與全局異常處理詳解
全局異常處理是個(gè)比較重要的功能,一般在項(xiàng)目里都會(huì)用到,這篇文章主要給大家介紹了關(guān)于SpringBoot中如何統(tǒng)一接口返回與全局異常處理的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-09-09
Java服務(wù)假死之生產(chǎn)事故的排查與優(yōu)化問題
在服務(wù)器上通過curl命令調(diào)用一個(gè)Java服務(wù)的查詢接口,半天沒有任何響應(yīng),怎么進(jìn)行這一現(xiàn)象排查呢,下面小編給大家記一次生產(chǎn)事故的排查與優(yōu)化——Java服務(wù)假死問題,感興趣的朋友一起看看吧2022-07-07

