[DURGA 코딩인터뷰] public static void main() 상속/오버로딩/숨김/오버라이딩?
Explain about public static void main(String[] args) 두번째 강의인
Overloading, inheritance, overriding & method hiding에 관한 내용이다.
public static void main()에 대한 오버로딩, 상속, 오버라이딩, 메쏘드 숨김에 관한 내용을 다루고 있다.
1. main()는 overloading컨셉이 적용될 수 있음
(1) 그러나, JV은 항상 String[] argument main method를 call한다.
(2) 다른 오버로딩된 메쏘드들은 보통 메쏘드 콜을 수행한다.
2. main()는 상속(Inheritance)도 적용 가능
(1) child 클래스가 수행된될때, child 클래스가 main()를 포함하지 않는다면 parent클래스의 main()가 수행된다.
-> java P output : parent main
-> java C output : parent main
3. main()는 overriding컨셉은 적용될 수 없고, mehod hiding이 나타남
(1) overriding컨셉이 적용되는 것으로 보이나,
(2) 그러나 이것은 overriding이 아니고, method hiding임
-> java P output : parent main
-> java C output : child main
4. 정리
(1) main method 상속과 overloading은 적용가능한 컨셉
(2) 그러나, overriding 컨셉은 적용가능하지 않고,
(3) 메쏘드 hiding 컨셉은 적용가능함