반응형
다형성(Polymorphism)은 부모 클래스를 정의한 다음 자식 클래스가 부모 클래스를 상속받아
자식 클래스 만의 특징을 쉽게 변경-관리 할 수 있다는 특징이 있습니다.
즉, 하나의 메소드/클래스만으로 다양한 기능을 만들어낼 수 있다는 특징이 바로 다형성입니다.
여기서 해볼 예제로는 부모클래스의 경우 과일 클래스를 만들어주고
자식 클래스로 바나나와 복숭아 클래스를 만들어 과일 클래스를 상속받아올 것입니다.
과일 클래스
1
2
3
4
5
6
7
8
9
10
11
12
|
public class Fruit {
String name;
int price;
int fresh;
public void show() {
System.out.println("이름 : "+name);
System.out.println("가격 : "+price);
System.out.println("신선도 : "+fresh);
}
}
|
cs |
복숭아 클래스
1
2
3
4
5
6
7
8
|
public class Peach extends Fruit {
public Peach() {
name = "복숭아";
price = 1000;
fresh = 5;
}
}
|
cs |
바나나 클래스
1
2
3
4
5
6
7
8
|
public class Banana extends Fruit {
public Banana(){
name = "바나나";
price = 1000;
fresh = 6;
}
}
|
cs |
Main 클래스
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("바나나 : 1, 복숭아 : 2");
int input = sc.nextInt();
Fruit fruit;
if(input ==1)
fruit = new Banana();
else
fruit = new Peach();
fruit.show();
}
}
|
cs |
출력결과
반응형
'Computer Science > Java' 카테고리의 다른 글
[Spring 인프런 강의] 0~1단원 (0) | 2020.08.06 |
---|---|
[Java] - Eclipse 프로젝트 Github 연동 (0) | 2020.02.17 |
Java - 인터페이스 (0) | 2020.01.27 |
Java - Final (0) | 2020.01.27 |
Java - 추상화 (0) | 2020.01.26 |