作者biowave (BIOWAVE)
看板java
标题Re: [问题] java
时间Sat Nov 22 03:55:58 2008
※ 引述《johnchiang (錡)》之铭言:
: 因为实在看得不清不楚
: 乾脆直接PO出程式码来问好了
: 这是某个课本上的范例
Account这个类别没有主方法,程式不会从这边执行
所以你问getAccountNumber()这个方法回传去哪
我找只能跟你说,当呼叫getAccountNumber()这个方法的时候才会回传
: 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;
: }
当你呼叫getAccountNumber()这个方法的时候
才把accountNumber回传
: public double getBalance()
: {
: return balance;
: }
: public void deposit(double money)//这行用了void代表没有回传值但是
: 但是为什麽最後结果还是会balance+=money;
: {
: balance+=money;
: }
因为方法主体里面就是这样写
引入一个参数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
因为宣告一个Account参考值account,後面是new出一个Account物件
"="是将物件指定给account
: System.out.println("帐户:"+account.getAccountNumber());
: System.out.println("余额:"+account.getBalance());
上面这两行,就是呼叫getAccountNumber()
return出accountNumber
: account=new Account("123-4567",100.0);//这一行前面却没有Account
account已经被Account了
现在只是new出一个新的Account的物件(accountNumber:123-4567,balance:100)
: account.deposit(1000.0);
: System.out.println("帐户:"+account.getAccountNumber());
: System.out.println("余额:"+account.getBalance());
: }
: }
所以现在有一个account参考值
两个Account物件
: 程式有分为两个部分
: 印出的结果为
: 帐户:empty
: 余额:0.0
: 帐户:123-4567
: 余额:1100.0
: 恳请高手大大帮我回答一下
: 我在//後面不懂的地方
: 回传值的问题也很困扰我
: 像上面的地方deposit()是不用回传值的方法
应该说那是一个不需要回传值的方法
: 可是最後为什麽余额的地方还是1000.0+100.0=1100.0
因为他呼叫了deposit方法
做了balance += 1000的计算
: 学java後在这里一直遇到困难
: 可是我真的想学好他= =
: 看了好几本书跟线上的资料都不是很清楚
看深处浅出java吧
: 助教也讲得不清楚
: 所以恳求高手帮我解答一下
: 谢谢~~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.160.162.216