java,get方法疑问?

来源:百度知道 编辑:UC知道 时间:2024/06/20 16:33:06
public class IdentifierTest {

static String name="1";
static String myHeight="183";
static final int MAX_WEIGHT=75;

public String getName(){
return name;
}

public String getMyHeight(){
return myHeight;
}

public static void main(String[] args){
System.out.println("我的名字是"+name+",身高是"+
myHeight+"cm,体重最多时达到"+MAX_WEIGHT+"kg。");
}
我把上面的getMyHeight()方法里的myHeight写成了getMyHeight()为什么还能得到和myHeight一样的值?谢谢,请详细解答。

System.out.println("我的名字是"+name+",身高是"+
myHeight+"cm,体重最多时达到"+MAX_WEIGHT+"kg。");
直接调用了myHeight,没有调用到getMyHeight()方法。

因为你没有用到getMyHeight方法,所以他没有提示错误。
如果用到了 他是死循环。
IdentifierTest i = new IdentifierTest ();
System.out.println("我的名字是"+name+",身高是"+
i.getMyHeight()+"cm,体重最多时达到"+MAX_WEIGHT+"kg。");
}
你再试试,然后给我结果

你是说pubvlic String getMyHeigt(){
return getMyHeight();
}
会返回183??
```我说呢··我以为在上面的方法会返回183.但是实际上是不能返回值得··这个运行的时候有错。

在方法内部调用方法很正常,因为getMyheight返回myheight的值。调用这个方法得到myheight所以直接引用和调用方法所得到的效果是一样的。

1楼正解