相关疑难解决方法(0)

"编程到界面"是什么意思?

我已经看过几次提到这个,我不清楚这是什么意思.你何时以及为何会这样做?

我知道接口有什么作用,但事实上我不清楚这一点让我觉得我错过了正确使用它们.

如果你这样做是这样的:

IInterface classRef = new ObjectWhatever()
Run Code Online (Sandbox Code Playgroud)

你可以使用任何实现的类IInterface吗?你什么时候需要这样做?我唯一能想到的是,如果你有一个方法,你不确定除了实现之外将传递什么对象IInterface.我想不出你需要多久做一次.

另外,你怎么能写一个接受实现接口的对象的方法?那可能吗?

language-agnostic oop interface

791
推荐指数
17
解决办法
16万
查看次数

适配器模式和依赖

我对适配器类没有什么疑问.我知道适配器类的目标是什么.何时应该使用.我怀疑是关于班级建设.我已经检查了一些教程,并且所有人都说我应该将"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)

你有什么意见?

oop design-patterns

2
推荐指数
1
解决办法
1795
查看次数