ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Power JAVA 7장 ) 클래스와 객체 - LAB
    IT/솔루션) Power Java 2019. 4. 23. 07:36

    <2016. 10. 3. 18:48>

     

    Power JAVA 7장 ) 클래스와 객체 - LAB

    /* 
     * 은행 계좌를 나타내는 BankAccount 클래스를 입력하고 다양한 실험을 하여 보자.
     * BankAccount는 잔고를 나타내는 정수형 멤버 변수(balance)를 가지고 있고 예금 인출 메소드(draw)와 예입 메소드(deposit),
     * 현재 잔고를 반환하는 메소드(getBalance)를 가지고 있다.
     * 
     * 1.main() 메소드 안에서 BankAccount 객체 b를 생성하고 다음과 같은 순서대로 메소드를 호출한다.
     *   1)b의 잔고를 100으로 한다.
     *   2)b에서 60을 인출한다.
     *   3)b에서 현재  잔고를 얻어서 화면에 출력한다.
     */
    // 4. BankAccount 클래스 앞에 public을 추가하고 프로그램을 컴파일 해보자. 어떤 오류가 발생하는가?
    // public을 붙이는 것과 붙이지 않은 것의 차이는 무엇인가? -하나의 소스 파일 안에는 한 개의 public 클래스만 존재하여야 한다.
    class BankAccount {
    	int balance;
    	void deposit(int amount) {
    		balance += amount;
    	}
    	// 3. 현재 잔고가 음수이면 예금 인출이 일어나지 않도록, withdraw()를 변경하라.
    	// 이러한 BankAccount 클래스의 변경은 BankAccountTest, 클래스를 변경해야 하는가? - No, 변경할 필요 없다.
    	void withdraw(int amount) {
    		if (balance-amount < 0)
    		   System.out.println("잔액이 부족합니다."); else
    		   balance -= amount;
    	}
    	int getBalance() {
    		return balance;
    	}
    	//2. 현재 잔액에 대하여 연 7.5%의 이자를 계산하여 추가하는 addInterest() 메소드를 구현하고 테스트하라.
    	void addinterest() {
    		balance *= 1.075;
    	}
    }
    public class LAB {
    	public static void main(String[] args) {
    		BankAccount b = new BankAccount();
    		// 1.main() 메소드 안에서 BankAccount 객체 b를 생성하고 다음과 같은 순서대로 메소드를 호출한다.
    		b.balance = 100;
    		// 1-1. b의 잔고를 100으로 한다.
    		b.withdraw(60);
    		// 1-2. b에서 60을 인출한다.
    		System.out.printf("현재 잔고는 %d 입니다 \n",b.getBalance());
    		b.addinterest();
    		System.out.printf("현재 잔고는 %d 입니다 \n",b.getBalance());
    	}
    }

    댓글

다치지 말고 운동하자.