Java(12) - 식대 계산 프로그램

JeJune Lee·2021년 8월 20일
0

Java

목록 보기
12/18

점심 식대 계산 프로그램

배웠던 것들을 활용해서 식대 계산 프로그램을 한번 짜볼 것이다~ 추상클래스를 본격적으로 사용할 것이다.

먼저 식대를 기본적으로 상수로 설정해주고 시작할 것이다.

PriceTable.java

package com.javalec.childlunch;

public class PriceTable {

	public static final int RICE = 1000;
	public static final int BULGOGI = 2000;
	public static final int BANANA = 700;
	public static final int MILK = 200;
	public static final int ALMOND = 100;
	
	
}

static final로 정의 해주었다.

이제 점심 식대 추상 클래스로 선언 해준다.

LunchMenu.java

package com.javalec.childlunch;

public abstract class LunchMenu {

	public int rice;
	public int bulgogi;
	
	public int banana;
	public int milk;
	public int almond;
	
	public LunchMenu(int rice, int bulgogi, int banana, int milk, int almond) {
		this.rice = rice;
		this.bulgogi = bulgogi;
		this.banana = banana;
		this.milk = milk;
		this.almond = almond;
	}
	
	public abstract int calculating();
	
}

기본적으로 밥, 불고기, 바나나, 우유, 아몬드가 있다. abstract이기 때문에 꼭 상속 받아야 한다. super를 사용할 것이다. 그리고 calculating 메소드로 식대를 계산할 것이다. 이것도 추상 메소드이기 때문에 상속 받아서 처리할 것이다.

Child1.java

package com.javalec.childlunch;

public class Child1 extends LunchMenu {
	
	public Child1(int rice, int bulgogi, int banana, int milk, int almond) {
		super(rice, bulgogi, banana, milk, almond);
	}
	
	@Override
	public int calculating() {
		return rice + bulgogi + banana;
	}

}

extends 로 상속 받고 super로 변수들을 상속했다. 그리고 override로 첫번째 아이 클래스가 먹을 것의 식대만 더해주면 된다.

Child2.java

package com.javalec.childlunch;

public class Child2 extends LunchMenu {

	public Child2(int rice, int bulgogi, int banana, int milk, int almond) {
		super(rice, bulgogi, banana, milk, almond);
	}
	
	@Override
	public int calculating() {
		return rice + bulgogi + milk + almond;
	}

}

두번째 아이 클래스도 비슷한 로직이다.

MainClass.java

package com.javalec.childlunch;

public class MainClass {

	public static void main(String[] args) {
		
		LunchMenu child1 = new Child1(PriceTable.RICE, PriceTable.BULGOGI, PriceTable.BANANA, PriceTable.MILK, PriceTable.ALMOND);
		LunchMenu child2 = new Child2(PriceTable.RICE, PriceTable.BULGOGI, PriceTable.BANANA, PriceTable.MILK, PriceTable.ALMOND);
		
		System.out.println("child1 아이의 식대 : " + child1.calculating());
		System.out.println("child2 아이의 식대 : " + child2.calculating());
		
	}
}

객체를 생성해서 각각 선언해두었던 값들을 넣어준다. 그리고 calculating 메소드로 계산된 식대를 출력해준다.

출력

child1 아이의 식대 : 3700
child2 아이의 식대 : 3300

오늘은 여기까지..

간단하게 추상 메소드와 클래스를 사용해서 식대를 계산하는 프로그램을 구현해보았다. 매우 간단하기 때문에 쉽게 쉽게 구조를 생각해볼 수 있다.

profile
Being Server developer

0개의 댓글