IT이야기/JAVA

[DURGA 코딩인터뷰] public static void main() 상속/오버로딩/숨김/오버라이딩?

FelixShin 2016. 4. 24. 14:58
반응형


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 컨셉은 적용가능함