R3.1 解释局部变量和参数变量之间的差异
答:局部变量和参数变量的作用范围都是在方法之内,参数变量的初始化在传参的时候初始化,局部变量在定义的时候初始化。
R3.2 解释实例字段和局部变量之间的差异
答:实例的字段存在的范围在对象中,局部变量的范围在代码块中。
R3.3 为什么BankAccount(double initialBalance)构造函数不是严格必需的?
答:用户可以在初始化后使用,使用deposit方法来初始化
R3.4 解释下面两条语句之间的差异:
BankAccount b;
BankAccount b = new BankAccount(5000);
答:第一条语句只是定义了一个BankAccount的变量,没有给b赋值
R3.5 解释下面两条语句之间的差异
new BankAccount(5000);
BankAccount b = new BankAccount(5000);
答:第一条语句只生成了一个BankAccount的对象,没有把这个对象赋给一个变量
R3.6 在所实现的BankAccount类中,当取款额多元当前余额时会发生什么事情?怎样实现“透支罚款”?
答:余额为负,判断一个余额为负的情况
R3.7 完成下列操作后b.balance的值是多少?
BankAccount b = new BankAccount(10);
b.deposit(5000);
b.withdraw(b.getBalance()/2);
答:2505
R3.8 如果b1和b2存储BankAccount类的对象,查看下列指令。
BankAccount b1 = new BankAccount(10);
BankAccount b2 = new BankAccount(100);
b1和b2的余额现在相等吗?解释其原因
答:否
R3.9 什么是this引用?为什么使用this引用?
答:this指当前对象,使用this可以动态获得对象信息
R3.10 下面的方法有什么作用?举例说明如何调用该方法。
public class BankAccount
{
public void mystery(BankAccount that,double amount)
{
this.balance = this.balance - amount;
that.balance = that.balance + amount;
}
}
答:向其他略账户汇款的方法
R3.11 假设要实现一个SavingAccount类。存款账户与银行账户相似,但有存款利率,同时一年累计一次利息。设计该类的公有接口。
答:public void addInterest(double rate)
R3.12 CashRegister类的访问器和修改器是什么?
答:略