728x90
반응형
실습과제
특가 할인 매장
가게에서 판매할 상품을 위한 클래스를 만들어보자
MarketGood 클래스
인스턴스 변수
MarketGood 클래스는 아래와 같은 인스턴스 변수들을 포함합니다:
(1) String name (상품의 이름)
(2) int retailPrice (상품의 출시 가격)
(3) int discountRate (상품의 할인율. 단위: %)
모두 private으로 설정해주세요!
생성자
MarketGood 클래스는 두 개의 생성자를 가지고 있습니다:
(1) public MarketGood(String name, int retailPrice, int discountRate)
- 생성자의 파라미터로 받은 값들을 인스턴스 변수에 지정해줍니다.
- discountRate가 0%보다 작거나 100%보다 큰 경우, 0으로 지정해줍니다.
(2) public MarketGood(String name, int retailPrice)
- 두 번째 생성자는 discountRate의 기본값으로 0을 넣어줍니다.
Getter / Setter 메소드
(1) name, retailPrice는 getter 메소드만 만들어줍니다. 값을 지정해주는 것은 생성자에서 완료되었기 때문에 setter 메소드는 따로 만들 필요가 없습니다.
(2) discountRate는 바뀔 수 있기 때문에 getter과 setter 메소드를 모두 만들어줍니다.
public int getDiscountedPrice()
할인가를 리턴하는 메소드를 만듭니다. 예를 들어서 retailPrice가 10000이고 discountRate가 20이면, 8000을 리턴하는 것이죠.
MacBook Air의 할인율: 0%
MacBook Pro의 할인율: 15%
iPhone 7의 정상 가격: 920000원
iPhone 7의 할인 가격: 736000원
경쟁 업체가 많아져서 iPhone 7의 할인율이 35%로 올랐습니다.
iPhone 7의 할인 가격: 598000원
코드 작성
인스턴스 변수 선언
생성자
getter/setter 메소드
public int getDiscountedPrice() 메소드
Main.java 실행 결과
728x90
반응형
'TIL > Java' 카테고리의 다른 글
[Java] 중간고사: 문제 해결 능력 기르기_평균값 계산기 (0) | 2022.01.05 |
---|---|
[Java] 중간고사: 문제 해결 능력 기르기_평균값 계산기 (0) | 2022.01.05 |
[Java] this (0) | 2022.01.04 |
[Java] 생성자(Constructor) (0) | 2022.01.03 |
[Java] 은행 시뮬레이션 프로그램_계좌 이체 메소드 작성하기 (0) | 2022.01.02 |