오버로드된 메소드 오버라이딩...

kws4679의 이미지

뭔가 희한한 상황이어서 질문드립니다!!

문자는 오버로드된 init 메소드를 오버라이딩하는건데요

폰갭 안드로이드 소스내에 init 메소드를 오버라이딩하려고 합니다

/**
* Create and initialize web container with default web view objects.
*/
public void init() {
this.init(new WebView(DroidGap.this), new CordovaWebViewClient(this), new CordovaChromeClient(DroidGap.this));
}

/**
* Initialize web container with web view objects.
*
* @param webView
* @param webViewClient
* @param webChromeClient
*/
public void init(WebView webView, WebViewClient webViewClient, WebChromeClient webChromeClient) {
LOG.d(TAG, "DroidGap.init()");

// Set up web container
this.appView = webView;
this.appView.setId(100);

this.appView.setLayoutParams(new LinearLayout.LayoutParams(
ViewGroup.LayoutParams.FILL_PARENT,
ViewGroup.LayoutParams.FILL_PARENT,
1.0F));

this.appView.setWebChromeClient(webChromeClient);
this.setWebViewClient(this.appView, webViewClient);

this.appView.setInitialScale(0);
this.appView.setVerticalScrollBarEnabled(false);

...

위처럼 init() 메소드와 init(WebView ~~~) 메소드가 있구요

두 메소드는 DroidGap 이라는 클래스에 존재합니다

일반적으로 하던것처럼 DroidGap 을 상속받는 클래스를만들고

init() 메소드를 재정의 하려고 하는데요 init() 에는 접근할수있는데 init(WebView~ ) 에는

자동완성에도 아예 안뜨네요..... 혹시나 해서 동일한 케이스로 테스트클래스를만들어서

해봤는데 잘 되더군요

도대체 무슨 상황인지;;;; public 메소드라도 오버라이딩이 금지되거나 그렇게 할수도 있느건가요??

익명 사용자의 이미지

혹시 메서드가 final로 정의되어있지는 않은가요?