導航:首頁 > 編程語言 > java有參構造

java有參構造

發布時間:2022-11-29 15:54:19

java什麼時候要設置有參構造

如果是final變數,就不行,比如:

class Test {
private final int i;
public Test(int i) {
this.i = i;
}
public void setI(int i) {
this.i = i;//錯誤,無法通過編譯
}
}

㈡ JAVA一個類寫了有參的構造方法,還會默認有一個無參的構造方法嗎

不會,如果類中你已經寫了有參構造方法,那麼之前的默認無參構造方法就需要自己手動寫上去。

㈢ java 有參構造函數

  1. 第一種是set方法賦值。

  2. 第二種是有參構造方法賦值。

  3. 他們的區別是:當對象被new的時候,

        1. 第一種首先進入的是set方法裡面在從set方法裡面進行賦值。

        2. 第二種是直接給參數賦值。


㈣ java 中有參構造與無參構造區別

無參構造器和有參構造器都是一樣的,只不過一個有參數一個沒有而已。一般創建類的時候,如果你不寫構造器,那麼這個類有一個默認的無參構造器。如果你寫了一個有參的構造器,那麼那個無參的構造器就被覆蓋了!不過經常我都會多寫一個無參的構造器,這樣new對象的時候比較方便

㈤ java有參構造的,參數代表什麼意思

和你寫帶參數的方法是一樣的,參數就是你要傳入的變數。類當然也可以傳了,類不也是一種變數類型嗎

㈥ Java 帶參數構造函數

因為在一個類中,默人有一個沒有帶參數的構造函數;
在上面的這個類中,有自定義了一個帶參數的構造函數。
當你在測試類中寫的時候,實際上也有兩個構造屬性的方法。一個沒有參數,一個有參數,所以必須程序員自己指定。故沒有提示。
只能程序員自己添加。

㈦ java 構造方法可以有參數嗎

構造方法,是你在構造一個對象時調用的方法,使用一個無參的構造方法就好比你創造了一個空的殼,具體的數據要等到你使用的時候再把值放到你創造出來的殼裡面,而你也可以選擇調用一個有參的構造函數,在創建的時候就把部分的值給他加上去。重載是指方法名字一樣,而方法裡面的參數的類型或數量不同。要注意的是單單返回值不同不能算是重載的。

㈧ Java中如何在無參構造方法中調用有參構造

一般正常的都是參數多的調用參數少的。有參數的調用無參數的居多。

當然你要無參調用的參的也可以。

你用無參,調用有參的。那你有參的參數你需要怎麼傳呢。當然如果換一個角度也可以。

我手寫下。沒經過IDE的。提供下思路。我有兩種思路,寫同一個功能。

public class Person{

private String name;

private int age;

//無參

public Person(){

this.name="張三";

this.age=20;

}

//有參

public Person(String name){

this.name=name;

}

//多參

public Person(String name,int age){

this(name);//調用一個參數的構造方法

this.age=age;

}

}

這是一種寫法比較常用的方法。寫第一種。用上面的例子直接寫

public Person(){

this("張三",20);//調用有參構造方法。設置默認值。和第一種方法功能一樣

}

public Person(String name,int age){

this.name=name;

this.age=age;

}

為了程序易讀性。一般。參數的擴展和構造方法的調用都是有一定的規律的。

有參調無參,多參調少參。。擴展參數的時候,最好保持原來的順序。

㈨ Java編程題: 編寫一個Student類,包含name和age屬性,提供有參構造方法

//*********************Student
import java.util.Objects;

public class Student {
public String name;
public int age;
Student(){}
Student(String name,int age){
this.name=name;
this.age=age;
}
public String toString(){//重寫toString()
return "name: "+name+" age: "+age;
}
public boolean equals(Object o) {//重寫equals()
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Student student = (Student) o;
return age == student.age && Objects.equals(name, student.name);
}
public int hashCode() {//重寫hashCode()
return Objects.hash(name)+age;
}
}

//********************StudentTest
import java.util.HashSet;

public class StudentTest {
public static void main(String[] args) {
HashSet<Student> hs=new HashSet<>();
Student s1=new Student("zs",19);//s1
Student s2=new Student("zs",19);//s2
Student s3=new Student("ls",19);//s3
hs.add(s1);//加入集合
hs.add(s2);//
hs.add(s3);//
//s1,s2,equals()返回true,s2不會加入集合
for(Student it:hs) {//遍歷HasSet
System.out.println(it);
}
}
}

閱讀全文

與java有參構造相關的資料

熱點內容
伺服器怎麼用不會斷電 瀏覽:301
主從伺服器有什麼用 瀏覽:213
jstlpdf 瀏覽:14
安卓原神在哪個app下載 瀏覽:808
單片機編程技術什麼意思 瀏覽:104
e點課堂源碼 瀏覽:45
免費打擊墊app哪個好 瀏覽:532
程序員必裝的6款軟體 瀏覽:750
基於單片機的遙控器設計 瀏覽:521
安卓如何取消圓圖標 瀏覽:11
收件伺服器怎麼樣 瀏覽:48
建築設計規范pdf 瀏覽:98
如何合並兩個pdf 瀏覽:174
刷機包必須要解壓的單詞 瀏覽:483
android課表實現 瀏覽:864
頭條app在哪裡能看見有什麼活動 瀏覽:511
冰櫃壓縮機電容80歐 瀏覽:609
安卓各個版本圖標什麼樣 瀏覽:152
無錫哪裡有製作手機app 瀏覽:538
php字元串轉json數組 瀏覽:6