jjzjj

FooInterface

全部标签

php - PHP 接口(interface)的最佳实践 : should I document only the interface?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭7年前。Improvethisquestion我正在尝试标准化PHP接口(interface)的文档。最好的做法是只在接口(interface)中维护方法头吗?例如,对于这个界面:interfaceFooInterface{/***Thiswilltestthesysteminsomespecialway*@paramstring$sName*@paraminteger$iCount*@returnvoid*/publicfuncti

java - 子类中存在但父类中不存在的调用方法

publicclassParent{....}publicclassChild1extendsParent{....publicvoidfoo(){....}}publicclassChild2extendsParent{....publicvoidfoo(){....}}这里的方法foo()只存在于子类中,不能添加到父类中(甚至抽象方法也不行)。在这种情况下,当我想在obj上调用foo()方法时,它是Parent类的引用,那么我需要使用intanceof与多个if..else我想避免。Parentobj=...//Objectofoneofthechildclassesobj.foo

java - 我如何告诉 Dagger 2 要基于 X 实例化哪个实现?

在模块内部,如果我需要根据模块构造时已知的变量提供接口(interface)的不同实现,我可以将逻辑放在该接口(interface)类型的@Provides方法中。像这样:@ModulepublicclassFooModule{privatefinalStatestate;publicFooModule(Statestate){this.state=state;}@ProvidesFooInterfaceprovideFooImplementation(){switch(state){caseSTATE_1:returnnewFooImpl1();caseSTATE_2:returnn

java - 如何在 Java 中实现 API/SPI 模式?

我正在创建一个框架,为开发人员公开一个API以供使用:publicinterfaceMyAPI{publicvoiddoSomeStuff();publicintgetWidgets(booleanhasRun);}开发人员所要做的就是根据这些API方法编写他们的项目。我还希望他们能够在运行时类路径上放置不同的“驱动程序”/“API绑定(bind)”(与JDBC或SLF4J的工作方式相同)并调用API方法(doSomeStuff()等.)在不同的第3方资源(文件、服务器等)上运行。因此,相同的代码和API调用将映射到不同资源上的操作,具体取决于运行时类路径看到的驱动程序/绑定(bind

c++ - 现代编译器可以在使用依赖注入(inject)时去虚拟化函数调用吗

当您希望您的代码可测试时,依赖注入(inject)是一种非常重要的模式,它一直在大型C++项目中使用。这是一个简单的例子://Copyright2019GoogleLLC.//SPDX-License-Identifier:Apache-2.0classFooInterface{public:virtualvoidf()=0;virtual~FooInterface()=default;};classFoo:publicFooInterface{public:voidf()override{/*Actualwork*/}};classMockFoo:publicFooInterface