IT/Java

[JAVA] 다형성을 이용한 과일 정보 프로젝트 구현

eternitys 2020. 12. 14. 22:40

다형성이란 기본적으로 다양한 형태의 성질을 가집니다.

 

다형성의 특징은 객체지향 프로그래밍 언어이며, 이것을 이용하여 객체를 사용할 때 사용하는 변수 형태를 

 

바꾸어 여러타입의 객체를 참조할 수 있습니다.

 

결과적으로 이런 개념을 적절하게 이용할 때 프로그램의 소스코드를 유연하게 구성할 수 있습니다.

 

다형성은 부모클래스 타입의 참조 변수로 하위 클래스의 객체를 참조할 수 있게 해 줍니다.

 

자바 클래스 인스턴스 변수를 자신의 변수로 넣을 수 있는 것이 다향성의 기본 개념입니다.

 

 

Fruit class 생성

public class Fruit {
	
	String name;
	int price;
	int fresh;

	public void show() {
		System.out.println("이름: " + name);
		System.out.println("가격: " + price);
		System.out.println("이름: " + fresh);
	}
}

 

Banana class 생성

public class Banana extends Fruit {

	public Banana() { // 초기화해주는부분
		price = 1000;
		name = "바나나";
		fresh = 80;
	}

}

 

Peach class 생성

 

public class Peach extends Fruit {
	public Peach() {
		price = 1500;
		name = "복숭아";
		fresh = 75;

	}
}

 

 

Main class 생성

 

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {

		Scanner scanner = new Scanner(System.in);
		System.out.println("바나나 : 1, 복숭아 : 2?");
		int input = scanner.nextInt();
		Fruit fruit;
		if (input == 1) {
			fruit = new Banana();
			fruit.show();
		} else if (input == 2) {
			fruit = new Peach();
			fruit.show();
		}
	}

}

 

 출력 결과

 

선택하는 화면이 나옵니다.

 

 

1을 누르면 바나나 정보가 나옵니다.

 

 

2를 누르면 복숭아 정보가 나옵니다.