Java
[days16] 다형성
다연
2020. 10. 17. 22:17
반응형
다형성의 정의
- 여러가지 형태를 가질 수 있는 능력
- 조상클래스 타입의 참조변수로 자손클래스의 인스턴스를 참조할 수 있도록 한 것
다형성 = 상속 + 업캐스팅(+다운캐스팅) + 오버라이딩 (+오버로딩) + 추상메소드(추상클래스) + 인터페이스
public class Ex06 {
public static void main(String[] args) {
Employee emp1 = new Regular();
Employee emp2 = new SalesMan();
Employee emp3 = new Temp();
// 다형성 사용
// 도형 - 삼각형, 사각형, 원, 타원, 마름모 등등
Figure [] figures = {
new Triangle(),
new queadrangle(),
new Circle()
};
for (int i = 0; i < figures.length; i++) {
figures[i].면적(); //실제 객체의 면적 구해서 처리
}
}
}
//추상클래스
abstract class Figure{ //도형클래스
abstract void 면적();
}
class Triangle extends Figure{
void 면적() {
System.out.println(">1/2 * 가로 * 높이");
}
}
class queadrangle extends Figure{
void 면적() {
System.out.println("> 가로 * 높이");
}
}
class Circle extends Figure{
void 면적() {
System.out.println("> 반지름 * 반지름 * 3.14");
}
}
반응형