账户和顾客类练习
/*写一个名为Account的类模拟账户 1.该类的属性和方法如下所示: 该类包括的属性: 账户id,余额balance,年利率annualInterestRate 该类包含的方法:个属性的set和get方法。取款方法withdraw(),存款方法deposite() 写一个测试程序 1.创建一个Customer,名叫Jane smith,他有一个账号为1000,余额为2000,年利率为1.28 2.对Jane smith操作: 存入100元,再取出960元,再取出2000. 打印Jane smith的基本信息 信息显示如下: 成功存入:100 成功取出:960 余额不足,取钱失败 */ public class test04 { public static void main(String[] args) { //先创建账户Account类对象 Account a = new Account("1000",2000,1.28); //创建客户类对象 //传递给构造方法的 a 是让Customer对象和Account对象产生关系 //表示这个对象是给smith的 Customer c = new Customer("Jame smith",a ); c.getAcc().deposite(100); c.getAcc().withdraw(960); c.getAcc().withdraw(2000); } } //创建一个账户Account类 class Account { //都创建为私有属性, private String id; private double balance; private double annualInterestRate; //无参构造 public Account(){ } //有参构造 public Account(String id, double balance, double annualInterestRate){ this.id = id; this.balance = balance; this.annualInterestRate = annualInterestRate; } //三个私有属性对应的set 和 get方法; public String getId() { return id; } public void setId(String id) { this.id = id; } public void setBalance(double balance) { this.balance = balance; } public double getBalance() { return balance; } public double getAnnualInterestRate() { return annualInterestRate; } public void setAnnualInterestRate(double annualInterestRate) { this.annualInterestRate = annualInterestRate; } //定义取款方法withdraw()和存款方法deposite() public void withdraw(double money){ if(balance < money){ System.out.println("余额不足,取款失败"); return; } //进行到这里,说明可以取款 //this.balance += money; //利用this.set() this.get() 方法修改存取后的余额 this.setBalance(this.getBalance()-money); System.out.println("成功取出"+money); } public void deposite(double money){ this.setBalance(this.getBalance()+money); System.out.println("成功存入"+money); } } /* 由这里的 ”1.创建一个Customer,名叫Jane smith,他有一个账号为1000,余额为2000,年利率为1.28“ 应该得知需要 创建一个Customer类,包含有人名,账号 两个属性 ,通过new一个Customer类的实例对象来连接与Account类。 */ class Customer{ private String name; //这里用Account类创建一个属性账户:acc private Account acc; //无参 和 有参 public Customer(){ } public Customer(String name,Account acc){ this.name = name; this.acc = acc; } //两个私有属性对应的set 和 get方法 public String getName() { return name; } public void setName(String name) { this.name = name; } public Account getAcc() { return acc; } public void setAcc(Account acc) { this.acc = acc; } }