728x90
Q6.
카드 회사에서 카드를 발급받을 때마다 카드 고유 번호를 부여해준다.
public class Company {
private static int serialNum = 2000;
public int cardNum;
public Company() {
serialNum++;
cardNum = serialNum;
}
public int getCardNum() {
return cardNum;
}
}
public class CardTest {
public static void main(String[] args) {
Company Card1 = new Company();
Company Card2 = new Company();
System.out.println(Card1.cardNum);
System.out.println(Card2.cardNum);
}
}
Q7.
Q6에서 구현한 내용에 카드회사 클래스 CardCompany를 싱글톤 패턴을 사용해 구현해라.
CardCompany
public class CardCompany {
private static CardCompany instance = new CardCompany();
private CardCompany() {}
public static CardCompany getInstance() {
return instance;
}
public Card createCard() {
Card card = new Card();
return card;
//카드를 생성하는 메서드
}
}
Card
public class Card {
private static int serialNum = 2000;
int cardNum;
public Card() {
serialNum++;
cardNum = serialNum;
}
public int getCardNum() {
return cardNum;
}
public void setCardNum(int cardNum) {
this.cardNum = cardNum;
}
}
CardTest
public class CardTest {
public static void main(String[] args) {
CardCompany newCard = CardCompany.getInstance();
//싱글톤 패턴
Card Card1 = newCard.createCard(); //Card 생성 메서드
Card Card2 = newCard.createCard();
System.out.println(Card1); //2001출력
System.out.println(Card2); //2002출력
}
}
[Do it! 자바 프로그래밍 입문] 도서로 공부하며 정리한 글입니다.
300x250