JAVA 初学,不会写阿,求高手指教
来源:百度知道 编辑:UC知道 时间:2024/06/23 18:18:43
项目名称:Bank Account Management System 银行账户管理系统 简称BAM
项目一
练习1:(面向对象基础语法)
写一个账户类(Account),属性:
id:账户号码 长整数
password:账户密码
name:真实姓名
personId:身份证号码 字符串类型
email:客户的电子邮箱
balance:账户余额
方法:
deposit: 存款方法,参数是double型的金额
withdraw:取款方法,参数是double型的金额
构造方法:
有参和无参,有参构造方法用于设置必要的属性
练习2:(封装)
将Account类作成完全封装,注意:要辨别每个属性的set/get方法是否需要公开
练习3:(继承,多态)
银行的客户分为两类,储蓄账户(SavingAccount)和信用账户(CreditAccount),区别在于储蓄账户不允许透支,而信用账户可以透支,并允许用户设置自己的透支额度.
注意:CreditAccount需要多一个属性 ceiling 透支额度
为这两种用户编写相关的类
同时要求编写Bank类,属性:
1.当前所有的账户对象的集合,存放在数组中
2.当前账户数量
方法:
1.用户开户,需要的参数:id,密码,密码确认,姓名,身份证号码,邮箱,账户类型(int),返回新创建的Account对象
2.用户登录,参数:id,密码 返回Account对象,提示 用s1.equals(s2)判断s1和s2两个字符串内容是否相等
3.用户存款,参数:id,存款数额,返回修改过的Account对象
4.用户取款,参数:id,取款数额,返回修
项目一
练习1:(面向对象基础语法)
写一个账户类(Account),属性:
id:账户号码 长整数
password:账户密码
name:真实姓名
personId:身份证号码 字符串类型
email:客户的电子邮箱
balance:账户余额
方法:
deposit: 存款方法,参数是double型的金额
withdraw:取款方法,参数是double型的金额
构造方法:
有参和无参,有参构造方法用于设置必要的属性
练习2:(封装)
将Account类作成完全封装,注意:要辨别每个属性的set/get方法是否需要公开
练习3:(继承,多态)
银行的客户分为两类,储蓄账户(SavingAccount)和信用账户(CreditAccount),区别在于储蓄账户不允许透支,而信用账户可以透支,并允许用户设置自己的透支额度.
注意:CreditAccount需要多一个属性 ceiling 透支额度
为这两种用户编写相关的类
同时要求编写Bank类,属性:
1.当前所有的账户对象的集合,存放在数组中
2.当前账户数量
方法:
1.用户开户,需要的参数:id,密码,密码确认,姓名,身份证号码,邮箱,账户类型(int),返回新创建的Account对象
2.用户登录,参数:id,密码 返回Account对象,提示 用s1.equals(s2)判断s1和s2两个字符串内容是否相等
3.用户存款,参数:id,存款数额,返回修改过的Account对象
4.用户取款,参数:id,取款数额,返回修
要求中用户的数量是Bank的变量
class Bank {
int SAVING=1;
int CREDIT=2;
Account[] accounts = new Account[10];
int accountNumber = 0;
public Account createAccount(int id, /*一堆参数*/ int type) {
Account a;
if(type==SAVING) a = new SavingAccount(/*一堆参数*/);
else if(type==CREDIT) a = new CreditAccount(/*一堆参数*/);
accounts[accountNumber] = a;
accountNumber++;
return a;
}
}
15??
返回空对象错误是因为
for(int i=0;i<a.length;i++){
System.out.println("用户名: "+a[i].getName()+" "+"用户ID :"+a[i].getId()+" "+"用户余额 :"+a[i].getBalance());
当循环中i = 2时 调用a[i].getName(),getId(),getBalance() 这三个出错的
a[0],a[1]在上面已经 new过了 放的是Account对象所以不会出错 只要对象实例过的 就不会出现空指针导常了
当访问到a[2]的成员变量或方法时,此是就会报错,因为你没有实例化a[2]中引用也称指针 所以为空就报错了
有问题可以hi给我留言~!