다형성 - Polymorphism
형을 여러가지로 표현할 수 있다.
class KakaoLogin extends OAuthLogin { @Override void login() { ... }; void kakao() { system.out.println("나는 카카오"); } } class NaverLogin extends OAuthLogin { @Override void login() { ... }; void naver() { system.out.println("나는 네이버"); } } // KakaoLogin k = new KakaoLogin(); OAuthLogin k = new KakaoLogin();
OAuthLogin login1 = new OAuthLogin(); OAuthLogin login2 = new KakaoLogin(); ((KakaoLogin)login2).kakao(); OAuthLogin login3 = new NaverLogin(); ((NaverLogin)login3).naver();
같은 메모리공간에 대해 접근하는 자료형에 따라 기능을 제한할 수 있다.