4월 21일 내용정리
클래스와 상속을 이용하여 프로그램 짜봄
조그맣게 클래스를 어떻게 짜고 상속관계를 어떻게 할지 설계하고 짜봤는데, 어렵긴 한데, 구현 하고 나니 재밌음
부모 클래스
package study_0421_practice;
import java.util.Scanner;
public class Person {
//필드선언
int money;
int num;
//생성자
//메서드
Scanner scan= new Scanner(System.in);
public void personMoney() {
System.out.println("가진돈 입력");
this.money=scan.nextInt();
}
public void beveregeNum() {
System.out.println("몇잔?");
this.num=scan.nextInt();
}
}
자식 클래스
package study_0421_practice;
import java.util.Scanner;
public class Menu extends Person{
//필드선언
String [] menuName={"아메리카노","카페라떼","카푸치노","자몽에이드"};
int [] menuMoney= {1000,2000,3000,4000};
int [] jeago= {10,20,30,40};
int choiceNum;
int jeagoNum;
//생성자
//메서드 선언
Scanner scan= new Scanner(System.in);
public void menuChoice() {
personMoney();
beveregeNum();
for(int i=0;i<num;i++) {
System.out.println("0.아메리카노 = 1000원");
System.out.println("1.카페라떼 = 2000원");
System.out.println("2.카푸치노 = 3000원");
System.out.println("3.자몽에이드 = 4000원");
System.out.println("메뉴를 선택하세요");
this.choiceNum=scan.nextInt();
if(0<=choiceNum&&choiceNum<=3) {
System.out.println(menuName[choiceNum]+" 를 선택 하셨습니다.");
if(menuMoney[choiceNum]<=money) {
changes();
jeago();
}else {
System.out.println("잔돈이 모자릅니다.");
break;
}
System.out.println();
}else {
System.out.println("잘못 입력 했습니다.");
break;
}
}
}
public void changes() {
for(int i=0;i<1;i++) {
money-=menuMoney[choiceNum];
System.out.println("잔돈:"+money);
}
}
public void jeago() {
for(int i=0;i<1;i++) {
jeago[choiceNum]-=1;
System.out.println("재고:"+jeago[choiceNum]);
}
}
}
실행클래스
package study_0421_practice;
public class Main {
public static void main(String[] args) {
Person p =new Person();
Menu m=new Menu();
m.menuChoice();
}
}