본문 바로가기
자바 코딩

클래스, 메서드 Coding 연습 5

by akasha.park 2023. 3. 17.

public class Account {
	private int balance;

	public Account(int balance) {
		this.balance = balance;// 잔액 초기화
	}

	public int getBalance() {
		return balance;
	}

	public void setBalance(int balance) {
		this.balance = balance;
	}

	public boolean deposit(int amount) {
		System.out.print(amount+" 원 입금 :" );
		boolean success = false;
		if (amount > 0) { //입금액이 0보다 크면
			balance += amount;  //잔액에 누적
			success = true; //입금 성공
		}
		return success;
	}

	public boolean withdraw(int amount) {//예금인출
		System.out.print(amount+" 원 출금 :" );
		boolean success = false;
		//인출할 금액은 0보다 커야 하고 잔액보다 작은 금액을 인출 하면 성공
		if (amount > 0 && balance - amount >= 0) {
			balance -= amount;  //잔액-인출금
			success = true; //출금성공
		}
		return success;
	}
}
public class Customer {
	private String ssn;//고객번호 or 계좌번호
	private String name;//고객이름
	private Account account; //고객의 계좌
	public Customer(String ssn, String name) {		
		this.ssn = ssn;
		this.name = name;
	}
	public String getSsn() {
		return ssn;
	}
	public void setSsn(String ssn) {
		this.ssn = ssn;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Account getAccount() {
		return account;
	}
	public void setAccount(Account account) {//고객 클래스에 계좌 추가(설정)
		this.account = account;
	}
	 
	public String toString() {
		return  name + "님의 현재 잔액:" + account.getBalance() + "원";
	}
	
}
public class BankingTest {

	public static void main(String[] args) {
		Account accout = new Account(10000);
		Customer hong = new Customer("", "홍길동");//고객정보 초기화
		hong.setAccount(accout);//고객객체에 계좌 추가(설정)
		System.out.println(hong);
		if(accout.deposit(1000)) {
			System.out.println("입금성공");
			System.out.println(hong.toString());
		}else {
			System.out.println("입금실패");
			System.out.println(hong);
		}
		System.out.println();
		if(accout.withdraw(5000)) {
			System.out.println("출금성공");
			System.out.println(hong);
		}else {
			System.out.println("출금실패");
			System.out.println(hong);
		}		
		System.out.println( );
		if(accout.withdraw(7000)) {
			System.out.println("출금성공");
			System.out.println(hong);
		}else {
			System.out.println("출금실패");
			System.out.println(hong);
		}

	}

}

'자바 코딩' 카테고리의 다른 글

클래스, 메서드 Coding 연습5  (0) 2023.03.16
클래스, 메서드 Coding 연습4  (0) 2023.03.16
클래스, 메서드 Coding 연습3  (0) 2023.03.16
클래스 , 메서드 Coding 연습1  (0) 2023.03.16
메서드 구현 Coding 연습2  (0) 2023.03.15