IT/솔루션) Power Java
Power JAVA 7장 ) 클래스와 객체 - LAB
돔찌
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());
}
}