作者johnchiang (錡)
看板java
標題[問題] java
時間Thu Nov 20 20:59:50 2008
因為實在看得不清不楚
乾脆直接PO出程式碼來問好了
這是某個課本上的範例
public class Account
{ private String accountNumber;
private double balance;
public Account()
{
this("empty",0.0); //這一行的意思是不是說如果有一個Account物件被建立
但是沒有沒有初始值的話他就是("empty",0.0)嗎??
}
public Account(String accountNumber,double balance)
{
this.accountNumber=accountNumber;
this.balance=balance;
}
public String getAccountNumber()//這行以下我看不懂 return accountNumber;
{ return balance;是要回傳
值吧但是要回傳到哪裡去阿
return accountNumber;
}
public double getBalance()
{
return balance;
}
public void deposit(double money)//這行用了void代表沒有回傳值但是
但是為什麼最後結果還是會balance+=money;
{
balance+=money;
}
public double withdraw(double money)
{
balance-=money;
return money;
}
}
public class AccountDemo
{
public static void main(String[] args)
{
Account account=new Account();//為什麼這一行前面有Account
System.out.println("帳戶:"+account.getAccountNumber());
System.out.println("餘額:"+account.getBalance());
account=new Account("123-4567",100.0);//這一行前面卻沒有Account
account.deposit(1000.0);
System.out.println("帳戶:"+account.getAccountNumber());
System.out.println("餘額:"+account.getBalance());
}
}
程式有分為兩個部分
印出的結果為
帳戶:empty
餘額:0.0
帳戶:123-4567
餘額:1100.0
懇請高手大大幫我回答一下
我在//後面不懂的地方
回傳值的問題也很困擾我
像上面的地方deposit()是不用回傳值的方法
可是最後為什麼餘額的地方還是1000.0+100.0=1100.0
學java後在這裡一直遇到困難
可是我真的想學好他= =
看了好幾本書跟線上的資料都不是很清楚
助教也講得不清楚
所以懇求高手幫我解答一下
謝謝~~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.102.110
推 LPH66:你把你的書裡講java基本語法的地方再從頭仔仔細細把它讀懂吧 11/21 02:21
推 gotoo:慢慢看會看懂的 加油 11/21 09:59
→ johnchiang:嗯嗯 我會慢慢摸索的~~3Q 11/21 10:13
推 kuope:你什麼地方call那個方法,就回傳到那個地方去 11/21 12:04
→ kuope:不回傳,但可以對變數作加減的動作啊 11/21 12:05
推 tzeng0401::可能他不明瞭「成員變數」的定義以及它的Scope吧... 11/21 12:26
推 MrAshan:這不會很困難的 多參考成員變數 還有先思考此程式的作用:) 11/21 14:40
推 yhgyhg:我竟然看得懂 果然還是要花時間去下功夫才有代價XD 11/21 20:17
推 tzeng0401:其實就2個成員變數(和他的get Method)、2個建構子 11/21 21:12
→ tzeng0401:存款、提款2個方法,只用理解類別建立的過程和成員變數 11/21 21:17
→ tzeng0401:2個基本的觀念,此例題大概就在說明這些東西...不算難懂 11/21 21:24