❶ java中方法的重載和構造方法的重載有什麼不同
方法的重載是一個類中同一個方法的不同實現,是java多態的一種表現形式
普通方法和構造方法的重載唯一的不同就是普通方法要考慮返回值,而構造方法不需要。
普通方法:
public
int
check(){
.......
return
3;
}
public
String
check(){
.......
return
"3";
}
構造方法:
public
Class(String
s){
.......
}
public
Class(int
a){
.......
}
❷ 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中的構造方法怎麼重載
無論是構造方法還是普通方法
區別2個方法是否相同要看2個方面,方法名和參數
普通方法:方法名不同。
重載方法:方法名相同,參數不同(可以是參數個數或者參數類型)。
調用的重載方法的時候會根據傳入的參數類型判斷使用哪個方法。
就你的代碼而言
new classWuMingFen("ma", 1); //就是調用classWuMingFen(String ma,int qtity)這個構造方法
new classWuMingFen(「ma」,1,true); //就是調用classWuMingFen(String thema,int Quantity,boolean likesoup)這個構造方法
❹ java構造方法的重載有什麼作用,構造不是用來初始化類的成員變數嗎,有一個就可以在建立對象時在小括
這個問題你可以把sub裡面test方法的this.a改為super.a會發現輸出的是5,也就是說new
sub()時先去初始化super,會調用super里的test方法,而在sub里重寫了test方法,則這個this其實是sub,而還sub還未初始化故a=0,改為super後訪問的是super的a就是5了,你可以把sub里的test注掉再跑一邊
❺ 舉例說明java中的構造方法和重載
構造方法是構造類事例的方法
重載可以對任何方法(出了final的)重載,包括構造方法
那一樓的例子為例:
public
classic
Man(){
int
weight;
int
height;
String
name;
int
age;
Man(){
}
Man(String
name,int
weight,int
height,int
age){
this.weight=weight;
this.height=height;
this.name=name;
this.age=age;
}
public
viod
ptintXXX(){
System.out.prinln("fsdaghahah");
}
}
當你要生成Man的實例時
Man
man=new
Man();
或者Man
man=new
Man("asd",120,180,20);
其中Man類中的Man()和Man(String
name,int
weight,int
height,int
age)是構造方法,用來構造類的實例的
至於重載
public
classic
son
extends
Man(){
int
weight;
int
height;
String
name;
int
age;
public
viod
ptintXXX(String
str){
//重載Man的ptintXXX方法
System.out.prinln(str);
}
}
❻ 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中的方法重載
重載
含義:
只要方法名相同,參數表不同,就可以構成方法重載。
方法重載,在JAVA中,也叫:
編譯時多態。(由編譯的時候來確定調用哪個方法)
重載的原則:
向上就近匹配原則
注意:
如果只有print(
double
d
)
方法,而要調用
print(int)
,則編譯器會自動地就近向上匹配
print(double)
方法。但是反過來就不行,
因為從大到小會丟失精度,
所以,沒有就近向下匹配原則.
關鍵字:
this
This:
指當前對象的。
。
。
有兩種用法:
表示當前對象:
this.age
=
age;
this.name
=
name;
在調用本類的其它構造方法時。
This(參數表),
註:this的這種用法只能放在第一行。
方法調用:傳值,
傳引用
記住:
在JAVA中,簡單類型變數一定是傳值。
對象變數一這是傳引用(也就是指向對象的首地址)
❽ java重載構造方法怎麼操作啊
重載了方法,是一個一個方法調用 干嗎要一起調用 需要調用的話就跟平常多個方法一樣,多調用幾次 構造方法用來構造對象 A a = new A(); 構造方法調用自己的另一個構造方法: 在第一行調用this(參數表);
❾ Java中方法重載和構造方法的區別
方法重載就是同一個類中,有多個方法,方法名是一樣的,但是形參不一樣,調用的時候,程序會根據傳入的形參不同,而選擇對應的方法。例如void a(){} 和 void a(String b)和void a(int b){}就是重載的三個方法。
構造方法也叫構造器,它也是一種方法,也可以重載,它的方法名與類名相同,不用寫返回值,也不用加void。例如
class a{
public a(){}
}
另外構造器是在創建此類的對象的時候就會調用的,它的作用是初始化類的對象。 如果你沒有為類寫構造器,JAVA虛擬機自動為類添加一個無參數的構造器,只是你看不到。
❿ java 構造方法怎麼重載
需要在java進行一下操作:
public class apple{public int apple(int a)}
return a
private string apple(string k){return k}