다연이네

[days16] 다형성 본문

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");
	}
}
반응형
Comments