導航:首頁 > 編程語言 > java構造方法重載

java構造方法重載

發布時間:2022-12-10 03:08:34

java重載構造方法

public class Cat{
private String name;
private int age;
private String foot="魚";

public Cat(){}

public Cat(String name){
this.name=name;
}

public Cat(String name,int age){
this.name=name;
this.age=age;
}

public void eat(){

}

public void eat(String foot){

}

public String getName(){
return name;
}

public int getAge(){
return age;
}

public String getFoot(){
return foot;
}

public String toString(){
StringBuffer buffer=new StringBuffer();
buffer.append("名叫"+getName()+"的小貓,今年"+getAge()
+"歲,正在吃+getFood()+");
return buffer.toString();
}

public static void main(String[] args){
Cat cat=new Cat("coffei cat",2);
cat.eat("老鼠");
System.out.println(cat);
}
}

㈡ java 構造方法怎麼重載

需要在java進行一下操作:

public class apple{public int apple(int a)}
return a

private string apple(string k){return k}


㈢ java的構造方法可以重寫嗎

構造方法不能被繼承,不能重寫,但構造方法可以重載。

在一個類中,可以有多個構造方法(方法參數不同) ,即重載,來實現對象屬性不同的初始化;但是子類中不能定義一個方法無void無返回值的方法,編譯錯誤,即子類無法繼承構造方法,但是子類的構造器中可以調用父類的構造方法(默認自動調用無參構造)。

㈣ Java 構造方法重載後,在構造方法中可以使用this語句進行構造方法之間的調用,

  1. 兩個構造方法不能用this相互調用,this調用構造方法的最大個數只能是構造方法總數-1

  2. 否則會出現無限遞歸調用。

  3. 也就是說兩個構造方法不能同時用this調用另一個,會產生無限的遞歸調用。

  4. 如下代碼:就會無限遞歸。

classA{

inta;

intb;

A(inta){

this(a,0);

}

A(inta,intb){

this(a);

thia.b=b;

}

}

㈤ java簡答題,構造方法重載為什麼

當不寫構造方法的重載時,系統會默認提供一個無參數的構造方法。也就是說,在new一個新對象時,沒有任何參數,不可以為對象中的屬性賦初始值
當你需要在創建對象的時候就為你的屬性賦初始值時,就需要自己手動提供一個有參數的構造方法。也就是構造方法的重載,此時系統不再提供默認的無參數的構造方法。
為了防止new一個對象時的不同情況,一般來說,會自己寫一個有參數的構造方法的同時,再手動補充無參數的構造方法。在new一個對象是,自己按照參數的不同進行調用。

㈥ Java中方法重載和構造方法的區別

方法重載就是同一個類中,有多個方法,方法名是一樣的,但是形參不一樣,調用的時候,程序會根據傳入的形參不同,而選擇對應的方法。例如void a(){} 和 void a(String b)和void a(int b){}就是重載的三個方法。
構造方法也叫構造器,它也是一種方法,也可以重載,它的方法名與類名相同,不用寫返回值,也不用加void。例如
class a{
public a(){}
}
另外構造器是在創建此類的對象的時候就會調用的,它的作用是初始化類的對象。 如果你沒有為類寫構造器,JAVA虛擬機自動為類添加一個無參數的構造器,只是你看不到。

㈦ java中構造方法重載嗎

在使用new創建對象時,Java會根據提供的參數來決定構建哪一個構造器。比如在構建neZha時,我們提供了兩個參數: 整數150和字元串"shit",這對應第二個構建方法的參數列表,所以Java會調用第二個構建方法。
在Java中,Java會同時根據方法名和參數列表來決定所要調用的方法,這叫做方法重載(method overloading)。構建方法可以進行重載,普通方法也可以重載,比如下面的breath()方法:

public class Test
{
public static void main(String[] args)
{
Human aPerson = new Human();
aPerson.breath(10);
}

}

class Human
{
/**
* breath() 1
*/
void breath()
{
System.out.println("hu...hu...");
}

/**
* breath() 2
*/
void breath(int rep)
{
int i;
for(i = 0; i < rep; i++) {
System.out.println("lu...lu...");
}
}

int height;
}

運行結果:
lu...lu...
lu...lu...
lu...lu...
lu...lu...
lu...lu...
lu...lu...
lu...lu...
lu...lu...
lu...lu...
lu...lu...

可以看到,由於在調用的時候提供了一個參數: 整數10,所以調用的是參數列表與之相符的第二個breath()方法。

㈧ java 構造方法重載

方法重載:

1.必須在同一個類

2.方法名相同

3.方法參數個數或參數類型(或參數順序)不同


註:

1.參數順序指的是參數類型順序,與參數名字無關,比如show(int a,,Stringa,int c)和show(int c,String b,int a)是一樣的方法,非方法重載,因為他們的參數類型順序一樣是int,String,int


2.方法重載與訪問許可權修飾符和方法返回值無關


調用:


1.當調用的時候,填好方法參數時,它會自動判斷參數類型,參數類型順序,個數,然後再調用相應的重載 方法,當匹配不到相應的重載方法,那麼直接編譯錯誤


例子:


方法1. show()

方法2. show(int a,int b)

方法3. show(int a,String b)

方法4. show(String b,int a)

方法5. show(int b,int a)


1. 方法1.2.3.4是重載方法(1與[234]參數個數不同,2與[34]參數類型不同,3與[4]參數類型順序不同)

2. 方法1.3.4.5是重載方法(1與[534]參數個數不同,5與[34]參數類型不同,3與[4]參數類型順序不同)

3. 方法2和5非方法重載,因為參數類型順序一樣,跟參數名字無關

4. 以方法1.2.3.4為例,show()會調用方法1,show(1,1)會調用方法2,show(1,"1")會調用方法3

show("1",1)會調用方法4



----------------------------------------------------------------------------------------------------------------

  1. 你兩個方法名分別是test1,test2,方法名不同,肯定不是方法重載,而且構造方法名必須跟類名一樣,不可能出現不同名的構造方法


2.假如test(int i,String s){} test(String s,int i){}

那麼這2個構造方法是重載,不會出現編譯錯誤,因為參數類型順序不同,第一個構造方法參數類型順序是int,String,第二個構造方法參數類型順序是String,int

㈨ java構造方法的重載有什麼作用,構造不是用來初始化類的成員變數嗎,有一個就可以在建立對象時在小括

構造方法重載可以有效降低模型的復雜程度。它可以使不同的參數類型共用同一個方法,提高通用性。
例如,有如下構造方法sum(int a, int b),作用是計算a+b的值。但由於兩個參數都是整型,當需要用該方法對兩個雙精度型的參數初始化時,就會碰到問題。此時,就可以使用重載sum(double a, double b),使得雙精度類型同樣可以使用該方法。這樣,在類外調用該類的構造方法時,無需考慮不同參數類型的情況,可以大幅降低編程復雜性。

㈩ JAVA中方法的重載和構造方法的重載有什麼不同

方法的重載是一個類中同一個方法的不同實現,是java多態的一種表現形式
普通方法和構造方法的重載唯一的不同就是普通方法要考慮返回值,而構造方法不需要。
普通方法:
public
int
check(){
.......
return
3;
}
public
String
check(){
.......
return
"3";
}
構造方法:
public
Class(String
s){
.......
}
public
Class(int
a){
.......
}

閱讀全文

與java構造方法重載相關的資料

熱點內容
相機卡滿了沒文件夾 瀏覽:747
如何批量快速壓縮視頻 瀏覽:432
我的世界如何加入ice伺服器 瀏覽:873
兄弟cnc編程說明書 瀏覽:204
php閃電入門教程學習 瀏覽:152
金岳霖邏輯pdf 瀏覽:938
linuxtomcat線程 瀏覽:77
pboc長度加數據加密 瀏覽:187
英雄聯盟國際服手游怎麼下安卓 瀏覽:297
程序員的思路 瀏覽:234
只能用命令獲得的四種方塊 瀏覽:358
怎麼用命令方塊防止開創造 瀏覽:807
掃描版的pdf 瀏覽:790
編程貓怎樣做3d游戲 瀏覽:207
怎麼查找雲伺服器上的ftp 瀏覽:156
我的世界伺服器如何注冊賬號 瀏覽:934
統計英文字元python 瀏覽:424
linux信息安全 瀏覽:910
壓縮機接線柱爆 瀏覽:1001
程序員自主創業 瀏覽:586