다형성은 가장 중요한 OOP 개념 중 하나입니다. 이는 단일 작업을 여러 가지 방법으로 수행할 수 있는 개념입니다. 다형성에는 두 가지 유형이 있습니다. 하나는 컴파일 타임 다형성이고 다른 하나는 런타임 다형성입니다.
메서드 오버로딩은 컴파일 시간 다형성의 예이고, 메서드 재정의는 런타임 다형성의 예입니다.
메서드 오버로딩은 컴파일 시간 다형성의 예이고, 메서드 재정의는 런타임 다형성의 예입니다. p>
고급. |
Keys |
컴파일 시간 다형성 | 런타임 다형성 |
1
|
Basic
|
컴파일 시간 다형성은 컴파일 시간에 바인딩이 발생함을 의미합니다.
|
런타임 다형성, 런타임 시 우리는 어떤 메소드가 호출될지 알고 있습니다. 2
|
정적/동적 바인딩
|
| 정적 바인딩으로 달성 가능
동적 바인딩을 통해
| 4.
상속 | 상속과 관련되지 않음 | 상속과 관련됨 |
5
|
Example | 메소드 오버로딩은 컴파일 타임의 예입니다. 다형성 | 메서드 재정의는 런타임 다형성의 예입니다. |
컴파일 시간 다형성의 예 | public class Main {
public static void main(String args[]) {
CompileTimePloymorphismExample obj = new CompileTimePloymorphismExample();
obj.display();
obj.display("Polymorphism");
}
}
class CompileTimePloymorphismExample {
void display() {
System.out.println("In Display without parameter");
}
void display(String value) {
System.out.println("In Display with parameter" + value);
}
}
런타임 다형성의 예public class Main {
public static void main(String args[]) {
RunTimePolymorphismParentClassExample obj = new RunTimePolymorphismSubClassExample();
obj.display();
}
}
class RunTimePolymorphismParentClassExample {
public void display() {
System.out.println("Overridden Method");
}
}
public class RunTimePolymorphismSubClassExample extends RunTimePolymorphismParentExample {
public void display() {
System.out.println("Overriding Method");
}
}
위 내용은 컴파일 타임 다형성과 런타임 다형성의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!