번개멍
[Java] 메소드와 상속관계를 이용한 문제 본문
문제
이름과 부서와 연봉, 수당을 입력받아서 연산하는 프로그램을 작성하세요.
1. 상속관계 이용 2. 생성자이용 3. 메소드 이용
package test;
import java.util.Scanner;
/*
문제
이름과 부서와 연봉, 수당을 입력받아서 연산하는 프로그램을 작성하세요
1. 상속관계 이용 2. 생성자이용 3. 메소드 이용
*/
class Department extends money { // 관리
static int salary; // 월급을 의미함
public static int Development(int salary) { // 개발부
salary = 2800000;
System.out.println("개발부서 월급은" + salary + "입니다");
return salary;
}
public static int sales(int salary) { // 영업
salary = 2700000;
System.out.println("영업 월급은" + salary + "입니다");
return salary;
}
public static int marketing(int salary) { // 마케팅부
salary = 2600000;
System.out.println("마케팅부 월급은" + salary + "입니다");
return salary;
}
public static int management(int salary) { // 경영부
salary = 2500000;
System.out.println("경영부 월급은" + salary + "입니다");
return salary;
}
}
class money {
static int salary;
static int hour;
static Scanner scc = new Scanner(System.in);
static int money = 10000;
static int result;
public static int Allowance() { // 수당
System.out.println("추가 근무시간을 입력하세요");
hour = scc.nextInt();
result = hour * money;
return result;
}
}
public class annualsalaryprogram extends Department {
static String name;
static int Department;
static int finalpay;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
do {
System.out.println("이름을 입력해주세요 종료를 원하면 exit를 입력하세요");
name = sc.next(); // exit를 누르면 프로그램 종료하는 방법이 궁금함
if (name.equals("exit")) {
System.out.println("프로그램을 종료합니다.");
System.exit(0);
} else {
annualsalaryprogram ac = new annualsalaryprogram();
result = ac.result; // 수당을 변수 result에 넣어준다
System.out.println("부서번호를 입력해주세요");
System.out.println("1. 개발부, 2.영업부, 3. 마케팅부 4.경영부");
Department = sc.nextInt();
switch (Department) {
case 1:
salary = Development(salary);
Allowance();
finalpay = salary + result;
System.out.println("수당은 :" + result + "이고" + "수당을 포함 최종 월급은" + finalpay);
break;
case 2:
salary = sales(salary);
Allowance();
finalpay = salary + result;
System.out.println("수당은 :" + result + "이고" + "수당을 포함 최종 월급은" + finalpay);
break;
case 3:
salary = marketing(salary);
Allowance();
finalpay = salary + result;
System.out.println("수당은 :" + result + "이고" + "수당을 포함 최종 월급은" + finalpay);
break;
case 4:
salary = management(salary);
Allowance();
finalpay = salary + result;
System.out.println("수당은 :" + result + "이고" + "수당을 포함 최종 월급은" + finalpay);
break;
}
System.out.println();
}
} while (true);
}
}
'코딩이야기 > JAVA' 카테고리의 다른 글
[JAVA]제네릭2 (0) | 2020.04.28 |
---|---|
[JAVA] 제네릭 (0) | 2020.04.28 |
[JAVA] 상속과 인터페이스 (0) | 2020.04.22 |
[JAVA] 인터페이스 (0) | 2020.04.22 |
[JAVA] 상속 (0) | 2020.04.22 |
Comments