我已经看过几次提到这个,我不清楚这是什么意思.你何时以及为何会这样做?
我知道接口有什么作用,但事实上我不清楚这一点让我觉得我错过了正确使用它们.
如果你这样做是这样的:
IInterface classRef = new ObjectWhatever()
Run Code Online (Sandbox Code Playgroud)
你可以使用任何实现的类IInterface吗?你什么时候需要这样做?我唯一能想到的是,如果你有一个方法,你不确定除了实现之外将传递什么对象IInterface.我想不出你需要多久做一次.
另外,你怎么能写一个接受实现接口的对象的方法?那可能吗?
我对适配器类没有什么疑问.我知道适配器类的目标是什么.何时应该使用.我怀疑是关于班级建设.我已经检查了一些教程,并且所有人都说我应该将"Adaptee"类作为依赖项传递给我的"Adapter".例如
Class SampleAdapter implements MyInterface
{
private AdapteeClass mInstance;
public SampleAdapter(AdapteeClass instance)
{
mInstance=instance;
}
}
Run Code Online (Sandbox Code Playgroud)
此示例是从维基百科复制的.正如您所见,AdapteeClass作为依赖项传递给我的对象.问题是为什么?如果我正在改变对象的界面很明显我将使用"新"界面,我不需要"旧"界面.为什么我需要在我的适配器外创建"旧"类的实例.有人可能会说我应该使用依赖注入,所以我可以传递任何我想要的,但这是适配器 - 我需要更改具体类的接口.就个人而言,我认为代码贝娄更好.
Class SampleAdapter implements MyInterface
{
private AdapteeClass mInstance;
public SampleAdapter()
{
mInstance= new AdapteeClass();
}
}
Run Code Online (Sandbox Code Playgroud)
你有什么意见?