我正在重構一段代碼,我必須在一個類(我們稱之爲TestImpl
)中從private
到public
作出一個方法(讓我們稱之爲myMethod
)。因此,我嘗試將此方法添加到其接口(ITest
)。接口引用其實現的內部類
但是,問題是該方法的參數引用了內部類TestImpl
。即類似的:
myMethod (TestImpl.NewType var1, ...)
這對我來說似乎有點奇怪,因爲接口引用了它自己的實現。這裏最好的解決方案是什麼?或者,它確實是一個問題?
我正在重構一段代碼,我必須在一個類(我們稱之爲TestImpl
)中從private
到public
作出一個方法(讓我們稱之爲myMethod
)。因此,我嘗試將此方法添加到其接口(ITest
)。接口引用其實現的內部類
但是,問題是該方法的參數引用了內部類TestImpl
。即類似的:
myMethod (TestImpl.NewType var1, ...)
這對我來說似乎有點奇怪,因爲接口引用了它自己的實現。這裏最好的解決方案是什麼?或者,它確實是一個問題?
據我所知它是靜態類,那麼它不應該是一個問題。但是,我認爲這是更好的以移動NewType
出TestImpl
甚至創造新的接口來概括這個NewType
它違反了DI原則,接口不應該有什幺編譯依賴它的實現。應該將NewType作爲接口或類提取到外部。
'NewType'是否需要訪問'TestImpl'的私有成員? 'NewType'只能被'TestImpl'使用嗎? – acm