비디오: Java - 다형성 (1/6) : 메소드와 다형성 2024
다형성 (Polymorphism) 는 기본 클래스 변수를 사용하여 서브 클래스 객체를 참조하고, 객체가 속한 서브 클래스를 추적하며, 프로그램이 컴파일 될 때 서브 클래스가 알려지지 않았더라도 대체 된 서브 클래스 메소드를 사용하십시오.
휴! 그것은 한 입 가득합니다. 매개 변수가 특정 유형을 호출 할 때마다 대신 해당 유형의 하위 클래스에서 생성 된 객체를 사용할 수 있다는 점이 특징입니다.
public void MakeAMove (Player p) {int i = p. 움직임(); return i;}
다음과 같이 MakeAMove 메서드를 호출 할 수 있습니다.int m = MakeAMove (new Player ());
이 경우, MakeAMove 메서드는 보드의 첫 번째 빈 사각형을 반환합니다.
하지만 다음과 같이 호출한다고 가정 해보십시오.
int m = MakeAMove (new BetterPlayer ());
BetterPlayer 클래스가 플레이어의 다음 이동을 결정하는 데 더 나은 알고리즘을 사용하기 때문에이 경우 MakeAMove 메서드가 더 나은 생각으로 이동합니다.