0
저는 OOP (Java 사용)의 첫 번째 수준에 대한 최종 시험을 위해 실제로 공부하고 있으며 OOP 측면에서 개념적으로 정확해야합니다.이 두 샘플 코드 중 어느 것이 다형성을 구현합니까?
기타Light.turnOn(pc);
Light.turnOn(car);
...
그리고이 다른 하나 :
pc.turnOn();
car.turnOn();
는 아직 첫 번째를 구현하지 않은
그래서,이 코드가 있습니다. Light
가 abstract
클래스 인 경우 두 번째, 나는 ... 같은
class pc extends Light { ... }
class car extends Light { ... }
그것을했다. 각각 다른 클래스 인 pc
과 car
은 Light
에서 확장되며 각각 turnOn()
메서드의 자체 버전을 구현합니다. (아직 구현하지 않은) 첫 번째 샘플 코드에서는 "확장"하지 않고 동일한 클래스의 turnOn()
메서드의 다른 버전을 사용할 수 있습니다.
그래서 두 코드 중 어느 것이 다형성을 구현하고 사용합니까? 왜? 다른 예제는 어떻게 구현/사용하지 않습니까?
미리 감사드립니다.
Java 명명 규칙을 따르십시오. Light.turnOn (...)은 정적 메서드 호출을 의미하고 pc.turnOn()은 인스턴스 메서드 호출을 의미합니다. 하지만 클래스 이름은 pc입니다. 이것은 혼란스럽고 오해의 소지가 있습니다. –
이 코드는 완전한 코드를 작성하고 코딩 규칙을 존중하는 경우이 질문이 더 유용 할 것이라고 생각합니다. 클래스는 대문자로 시작하는 이름을 가져야합니다. 덮어 쓰는 메소드를 표시하지 않으며 Light.turnOn (car)이 무엇이어야하는지 명확하지 않습니다. "Light"가 클래스 인 경우 정적 메서드 호출과 같습니다. – Gustave
결승에서 행운을 빈다. –