您好,歡迎來到賦能網(wǎng)!

JavaSE構(gòu)造器

賦能網(wǎng) 2023-06-11 143

什么是構(gòu)造器

1. 什么是初始化

JavaSE構(gòu)造器

對象在剛創(chuàng)建時進(jìn)行的工作就稱為初始化, 初始化的主要工作是針對對象的屬性的.

2.構(gòu)造器概念

當(dāng)對象創(chuàng)建時, 希望對象的屬性值被正確賦值, 此時就需要用到了構(gòu)造器, 構(gòu)造器也稱為構(gòu)造方法, 本質(zhì)上構(gòu)造器就是一個方法, 是一個特殊的方法.

3. 如何定義構(gòu)造器

JavaSE構(gòu)造器

構(gòu)造器(構(gòu)造方法)的定義

修飾符 類名(參數(shù)類型1 形參1, 參數(shù)類型2 形參2….) {

代碼塊;

}

public class Teacher {

private String name;

private int age = 30;

private String gender = "女";

public Teacher() { // 無參構(gòu)造器

name = "張三";

age = 35;

gender = "男";

}

public void setName(String name) {

this.name = name;

}

public String getName() {

return name;

}

public void setAge(int age) {

this.age = age;

}

public int getAge() {

return age;

}

public void setGender(String gender) {

this.gender = gender;

}

public String getGender() {

return gender;

}

public String say() {

JavaSE構(gòu)造器

return "姓名:" + this.name + ",年齡:" + this.age + ",性別:" + this.gender;

}

}

注意 : 類中如果沒有提供任何的構(gòu)造器, 編譯器也會自動添加一個缺省的構(gòu)造器

缺省的構(gòu)造器就是 修飾符和類一致, 無參, 并且方法體中沒有代碼.

構(gòu)造器的特點

特點1:

構(gòu)造器沒有返回值, 也不可以聲明void

特點2:

構(gòu)造器名稱必須和類名一致

特點3:

構(gòu)造器不可以被final, static, abstract等修飾

特點4:

構(gòu)造器不像普通方法可以隨意調(diào)用, 只能在創(chuàng)建對象時調(diào)用一次

構(gòu)造器調(diào)用

1.如何調(diào)用構(gòu)造器

使用new關(guān)鍵字在創(chuàng)建對象時就會自動調(diào)用了構(gòu)造器

public class TeacherTest {

public static void main(String[] args) {

Teacher t = new Teacher(); // 調(diào)用無參構(gòu)造方法

System.out.println(t.say()); // 輸出”姓名:張三,年齡:35,性別:男”

}

}

構(gòu)造器重載

1.什么是構(gòu)造器重載

當(dāng)一個類中有多個構(gòu)造器, 并且參數(shù)不同就形成構(gòu)造器重載

構(gòu)造器重載的目的是可以使用多種方式創(chuàng)建不同的對象

public class Teacher {

private String name;

private int age = 30;

private String gender = "女";

public Teacher() { // 無參構(gòu)造器

name = "佟剛";

age = 35;

gender = "女";

}

// 有參構(gòu)造器

public Teacher(String n, int a) {

name = n;

age = a;

gender = "女";

}

// 有參構(gòu)造器

public Teacher(String n, int a, String g) {

name = n;

age = a;

gender = g;

}

public String say() {

return "姓名:" + name + ",年齡:" + age + ",性別:" + gender;

}

}

public class TeacherTest {

public static void main(String[] args) {

Teacher t1 = new Teacher(); // 調(diào)用無參構(gòu)造方法

System.out.println(t1.say());

Teacher t2 = new Teacher(“李四”, 40); // 調(diào)用有參構(gòu)造方法

System.out.println(t2.say());

Teacher t3 = new Teacher(“王五”, 50, “男”); // 調(diào)用有參構(gòu)造方法

System.out.println(t3.say());

}

}

2. this()調(diào)用

在無參構(gòu)造器中, 給對象的3個屬性分別完成賦值, 而這個操作可以通過調(diào)用另外一個構(gòu)造器來完成,調(diào)用的語法this(實參列表);

注意 :

this(…) 調(diào)用必須放在構(gòu)造器的第一行!

this(…) 調(diào)用時,必須保證有一個構(gòu)造器是沒有this(…)的, 否則會形成構(gòu)造器遞歸調(diào)用.

想要了解跟多關(guān)于java培訓(xùn)課程內(nèi)容歡迎關(guān)注達(dá)內(nèi)java培訓(xùn),達(dá)內(nèi)除了這些技術(shù)文章外還有免費的高質(zhì)量大

java培訓(xùn)課程視頻供廣大學(xué)員下載學(xué)習(xí)。

本文鏈接:

本文章“JavaSE構(gòu)造器”已幫助 143 人

免責(zé)聲明:本信息由用戶發(fā)布,本站不承擔(dān)本信息引起的任何交易及知識產(chǎn)權(quán)侵權(quán)的法律責(zé)任!

本文由賦能網(wǎng) 整理發(fā)布。了解更多培訓(xùn)機構(gòu)》培訓(xùn)課程》學(xué)習(xí)資訊》課程優(yōu)惠》課程開班》學(xué)校地址等機構(gòu)信息,可以留下您的聯(lián)系方式,讓課程老師跟你詳細(xì)解答:
咨詢熱線:4008-569-579

如果本頁不是您要找的課程,您也可以百度查找一下: