Method Overriding
상속받은 method내용을 변경하는 것
•
method name, parameter, return type (선언부 declaration) 모두가 일치해야함
◦
함수 내용만 달리함. 그 외는 변경 불가
◦
접근 지정자를 부모 클래스의 method보다 좁은 범위로 변경할 수 없다
•
예외 (throws Exception) 는 부모 클래스의 method 수와 같거나 적어야한다
•
@override method위에 표시하기
Overloading
•
Overrding과는 관련 x
•
이름이 같은 method를 매개변수 (parameter)를 다르게 해서
public Pizza() { ... }
public Pizza(int slices) {...}
JavaScript
복사
다형성 (Polymorphism)
•
객체들의 타입이 다르면 똑같은 메시지가 전달되더라도 서로 다른 동작을 함
•
부모 타입으로 자손 타입 객체를 다루는 것
class TV{
}
class SmartTV extends TV{
}
JavaScript
복사
TV television = new TV();
TV television = new SmartTV();
JavaScript
복사
참조변수와 객체의 타입이 불일치가 허용된지만 참조 변수의 field와 method만 사용할 수 있다.
자식 타입의 참조변수로 부모 타입의 객체를 생성 할 수 없다
SmartTV television = new TV(); —→ error
JavaScript
복사
Class Name
2개 이상의 class가 있을때는 접근 지정자를 지정한 class의 이름이 file name이여야함
file name: Override Test
class Point{...}
public class OverrideTest{...}
JavaScript
복사