๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Java

[Java] ์—ฐ์Šต๋ฌธ์ œ

by ์ฝ”๋”ฉํ•˜๋Š” ๋ถ•์–ด 2021. 2. 19.
๋ฐ˜์‘ํ˜•

์—ฐ์Šต๋ฌธ์ œ Q6) ์นด๋“œ ํšŒ์‚ฌ์—์„œ ์นด๋“œ๋ฅผ ๋ฐœ๊ธ‰ํ•  ๋•Œ๋งˆ๋‹ค ์นด๋“œ ๊ณ ์œ  ๋ฒˆํ˜ธ๋ฅผ ๋ถ€์—ฌํ•ด ์ค€๋‹ค.

06-3์˜ <ํ•™๋ฒˆ ์ƒ์„ฑํ•˜๊ธฐ> ์˜ˆ์ œ๋ฅผ ์ฐธ๊ณ ํ•˜์—ฌ ์นด๋“œ๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ๋งˆ๋‹ค ์นด๋“œ ๋ฒˆํ˜ธ๊ฐ€ ์ž๋™์œผ๋กœ ์ฆ๊ฐ€ํ•  ์ˆ˜ ์žˆ๋„๋ก ์นด๋“œ ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค๊ณ  ์ƒ์„ฑํ•ด๋ณด์ž.

โ€‹

โ€‹

<๋‚ด๊ฐ€ ํ•œ ๊ฒƒ>

package singleton;

public class Card {
	private static int serialNum = 100;
	String cardName;
    int cardNum;

	public Card() {
		serialNum++;
		cardNum = serialNum;
	}

	public Card(String card) {
        serialNum++;
		cardNum = serialNum;
        this.cardName = card;
	}

	public int getCardNum() {
		return cardNum;
	}

}

 

package singleton;

public class CardTest {
    public static void main(String[] args) {
        Card card1 = new Card();
        Card card2 = new Card();
        Card card3 = new Card("BC");

        System.out.println(card1.cardName + " ์นด๋“œ๋ฒˆํ˜ธ : " + card1.getCardNum());
        System.out.println(card2.cardName + " ์นด๋“œ๋ฒˆํ˜ธ : " + card2.getCardNum());
        System.out.println(card3.cardName + " ์นด๋“œ๋ฒˆํ˜ธ : " + card3.getCardNum());
    }
}

 

<ํ—ท๊ฐˆ๋ ธ๋˜ ๊ฒƒ>

 

<๊ฒฐ๊ณผ๊ฐ’>

 

๋”๋ณด๊ธฐ

โ€‹<์„ ์ƒ๋‹˜์ด ํ•œ ๊ฒƒ>

package singleton;

public class Card {
	private static int serialNum = 100;
	String cardName;
    String cardNum;

	public Card() {
		serialNum++;
		cardNum = String.valueOf(serialNum);
	}

    public Card(String cardName) {
        this();
        this.cardName = cardName;
    }

	public String getCardNum() {
		return cardNum;
	}

}

 

package singleton;

public class CardTest {
    public static void main(String[] args) {
        Card card1 = new Card();
        Card card2 = new Card();
        Card card3 = new Card("BC");

        System.out.println(card1.cardName + " ์นด๋“œ๋ฒˆํ˜ธ : " + card1.getCardNum());
        System.out.println(card2.cardName + " ์นด๋“œ๋ฒˆํ˜ธ : " + card2.getCardNum());
        System.out.println(card3.cardName + " ์นด๋“œ๋ฒˆํ˜ธ : " + card3.getCardNum());
    }
}

 

 

 

์—ฐ์Šต๋ฌธ์ œ Q7) Q6์— ๊ตฌํ˜„ํ•œ ๋‚ด์šฉ์— ์นด๋“œ ํšŒ์‚ฌ ํด๋ž˜์Šค CardCompany๋ฅผ ์‹ฑ๊ธ€ํ†ค ํŒจํ„ด์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌํ˜„ํ•ด ๋ณด๋ผ.

package singleton;

public class CardCompany {
	private static CardCompany instance;

	private CardCompany() {
	}

	public static CardCompany getInstance() {
		if (instance == null) {
			instance = new CardCompany();
		}
		return instance;
	}

    public Card createCard() {
        return new Card();
    }

    public Card createCard(String cardName) {
        return new Card(cardName);
    }
}

 

package singleton;

public class CardCompanyTest {
	public static void main(String[] args) {
        CardCompany company = CardCompany.getInstance();       

		Company myBC = Company.createCard();
		Company myVisa = Company.createCard("Visa");

		System.out.println(myBC.cardName + " " + myBC.getCardNum());
		System.out.println(myVisa.cardName + " " + myVisa.getCardNum());
	}
}

<๊ฒฐ๊ณผ๊ฐ’>

โ€‹

 

 

์‹ฌํ™”๋ฌธ์ œ ) member ๊ฐ์ฒด ์ƒ์„ฑ์‹œ ์„ฑ(last name)๊ณผ ์ด๋ฆ„์„ ๋งค๊ฐœ ๋ณ€์ˆ˜๋กœ ๋ฐ›๊ณ 

memberID๊ฐ’์— lastname์ด ํฌํ•จ๋˜๊ฒŒ ์ž๋™ ํ• ๋‹น - ๋งค๊ฐœ ๋ณ€์ˆ˜ ๊ฐ’์ด ์—†์œผ๋ฉด ์•ˆ๋œ๋‹ค!

ํด๋ž˜์Šค : Member

๋ฉค๋ฒ„ ๋ณ€์ˆ˜ : memberID, memberName, lastName - get, set ํ•จ์ˆ˜

 

Member ํด๋ž˜์Šค

 

MemberTest ํด๋ž˜์Šค

-์ฃผ๋ชฉ! ์ด๋ผ๊ณ  ํ‘œ์‹œํ•œ ๋ถ€๋ถ„๊ณผ Member ํด๋ž˜์Šค์— ๋…ธ๋ž€ ํ˜•๊ด‘ํŽœ๋ถ€๋ถ„์„ ์ž˜ ์‚ดํŽด๋ณด์ž.

โ€‹

โ€‹

โ€‹

์‹ฌํ™”๋ฌธ์ œ ) site ํด๋ž˜์Šค

๋ฉค๋ฒ„ ๋ณ€์ˆ˜ : siteCode, siteName

ํด๋ž˜์Šค ๋ณ€์ˆ˜ :

1. siteCode ๊ฐ’์„ ์ž๋™ ์ฆ๊ฐ€ ํ• ๋‹นํ•˜๋Š” ๋ณ€์ˆ˜

2. ์‹ฑ๊ธ€ํ†ค์„ ์œ„ํ•œ ๋ณ€์ˆ˜

์‹ฑ๊ธ€ํ†ค์œผ๋กœ ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ๋˜๊ฒŒ ์ž‘์„ฑ์„ ํ•˜๊ณ  ๊ฐ์ฒด ์ƒ์„ฑ ์‹œ site์ด๋ฆ„์„ ์ž…๋ ฅ๋ฐ›์•„ ์ €์žฅํ• ์ˆ˜์žˆ๊ฒŒ ํ•  ๊ฒƒ!

โ€‹

Site ํด๋ž˜์Šค

-๋นจ๊ฐ„์ƒ‰ ๋ฐ‘์ค„ ์นœ ๋ถ€๋ถ„์ด ํ—ท๊ฐˆ๋ ธ๋‹ค.

 

SiteTest ํด๋ž˜์Šค

 

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€