코딩/java

은행계좌(생성자)

런던전통손만두 2019. 2. 8. 01:57
반응형

 

import java.util.Random;

public class BankAccount {

  Random rd = new Random();

 

private String name, accountNo;

private int balance;

private double interest;

 

public void setName(String n) { name = n;}

public void setAccountNo(String a) {accountNo = a;}

public void setBalance(int b) {balance = b;}

public void setRate(double r) {interest = r;}

public String getName() {return name;}

public String getAccountNo() {return accountNo;}

public int balance() {return balance;}

public double rate() {return interest;}

 

public String toString() {

String bank;

bank = "이름: " + name + "\n계좌 번호: " + accountNo + "\n잔액: " + balance + "\n이자율: " + interest + "%\n이자: " + calcInterest();

return bank;

 }

 

private int calcInterest() {

double interate;

interate = interest * (double)balance / 100;

return (int)interate//함수 반환값에 맞추어 interate를 int형으로 변환시켜야 한다

  }

 

private String makeID() {

return (rd.nextInt(9000) + 1000) + "-" + (rd.nextInt(9000) + 1000);

  }

 

public BankAccount() {

this("모름", 0);

 }

 

public BankAccount(String name, int balance) {

this(name, balance, 0);

}

 

public BankAccount(String name, int balance, double interest) {

this.name = name;

this.balance = balance;

this.interest = interest;

this.accountNo = makeID();

}

}

 

 

 

 

public class Practice_54 {

 

public static void main(String[] args) {

BankAccount b1 = new BankAccount();

BankAccount b2 = new BankAccount("김동덕", 100);

BankAccount b3 = new BankAccount("홍길동", 2000, 2.15);

 

System.out.println("첫 번째 은행 계좌의 정보입니다.");

System.out.println(b1.toString() + "\n");

System.out.println("두 번째 은행 계좌의 정보입니다.");

System.out.println(b2.toString() +"\n");

System.out.println("세 번째 은행 계좌의 정보입니다.");

System.out.println(b3.toString() +"\n"); 

 }

 

}

 

 

결과:

 

 

반응형