1
投票
1答案
126 次观看

ATL / COM:我可以在同一对象的两个不同接口中具有相同功能吗?

我有一个用VC ++ 6.0编写的基于ATL / COM的DLL。直到最近,我的COM接口和类之间还是一一对应的。例如,假设有一个ICar接口;然后还有一个实现它的CCar类,除了CCar实现ICar之外没有其他类,并且CCar除了ICar之外没有实现任何接口。同样,IPlane和CPlane。定义可能类似于: ICar具有功能“ StepOnGas”和“ MaxPassengers”; IPlane具有“ LowerLandingGear”和“ MaxPassengers”功能。 最近,我对其进行了更改,以便有一个IVehicle接口,该接口没有相应的CVehicle类,并且由C...

0
投票
2答案
155 次观看

Linqtosql-返回带有接口的自定义类

为什么我不能作为实现ISite的新自定义类(cms.bo.Site)返回? public IQueryable<ISite> GetSites() { return (from site in Db.Sites select new cms.bo.Site(site.id, site.name)); }

2
投票
3答案
3280 次观看

如何从方法返回实现接口的对象

我正在尝试学习界面,并希望尝试以下操作: 比方说,我有一个名为ICustomer的接口,该接口定义了基本属性(UserID,UserName等)。现在,我有多个具体的类,例如ProductA_User,ProductB_User,ProductC_User。每个属性都有不同的属性,但是它们都是ICustomer,因为它们都是客户。 我想在一个名为MemberFactory的工厂类中调用一个共享方法,并告诉它给我一个新用户,我只是给它一个我想要的枚举值的参数。由于每个具体的类都不同,但是实现了ICustomer,因此我应该能够返回实现ICustomer的实例。但是,由于我的返回类型是I...

3
投票
4答案
3178 次观看

Java接口静态方法解决方法?

我们有一个给定的REST接口: POST /calculation <data>abc</data> 可以根据服务器配置,由不同的逻辑“计算器”执行此计算。 我们现在正在设计每个计算器必须实现的Java接口。该接口将为每个REST服务提供一个方法。 鉴于所有REST(和HTTP)调用都是无状态的,因此每个方法都应该是静态的。但是,您不能在Java接口中定义静态方法。对于这种情况是否有好的解决方法? 我们可以将方法定义为非静态方法,然后只需首先创建计算器类的实例即可。通过在界面中使用static关键字似乎更清晰地表明这些方法是无状态的。

8
投票
7答案
681 次观看

接口在基于组件的体系结构中放在哪里?

在基于组件的体系结构中,大量分离的组件通过一组标准化接口进行通信-是否有关于在何处存储/如何对接口进行分组的准则? 极端的解决方案是: 全部都在同一程序集中(然后您就可以离开了) 每个接口一个组件 这两个选项对我来说似乎都是错误的-第一个不够灵活(例如,如果您只想更改一个界面),第二个则是另一个极端,这可能会迅速升级为维护噩梦。 尤其是,我正在寻找KILLER的论点,以不采纳上述两个极端情况,并且显然采用其他方式。 任何意见表示赞赏。

20
投票
4答案
19680 次观看

C ++中的接口继承

我具有以下类结构: class InterfaceA { virtual void methodA =0; } class ClassA : public InterfaceA { void methodA(); } class InterfaceB : public InterfaceA { virtual void methodB =0; } class ClassAB : public ClassA, public InterfaceB { void methodB(); } 现在以下代码不可编译: int main() { ...

2
投票
3答案
623 次观看

确定最接近类的子接口

让我们说我有一个接口的继承树: IParent> IChild> IGrandChild 我将如何: 找到实现IParent的类 确定也是IParent的孩子的最接近祖先。 例如: var myClass = FindImplementor<IParent>(); var myInterface = ClosestAncestor<IParent, myclass>(); 我不是要创建与上述签名匹配的函数。只是为了澄清。 IParent的后代以及实现类在动态加载的程序集中。我不确定这是否会有所作为。

-2
投票
2答案
1044 次观看

如何用Java编写Audit方法?

随着我的Java应用程序的复杂性增加,我想编写审计方法以确保我做对了。 如何在Java中做到这一点?

2
投票
1答案
375 次观看

属性与私有和扩展类组合的界面混乱

我已经下载了A-Plot Chart的示例代码。 .h文件之一: @interface MainViewController : UIViewController <APYahooDataPullerDelegate, CPPlotDataSource> { CPLayerHostingView *layerHost; @private APYahooDataPuller *datapuller; CPXYGraph *graph; } @property (nonatomic, retain) IBOutlet CPLayerHost...

55
投票
12答案
47731 次观看

接口中的toString(),equals()和hashCode()

所以,我有一个接口,其中包含一堆需要实现的方法,这些方法的名称无关紧要。 实现此接口的对象通常放入集合中,并且具有我希望它们使用的特殊toString()格式。 因此,我认为将hashCode(),equals()和toString()放入接口会很方便,以确保我记得重写这些默认方法。但是,当我将这些方法添加到接口中时,即使我没有明确实现这三个方法,IDE / Compiler也不会抱怨,即使我将它们明确地放在了接口中。 为什么我不强制这样做?如果我没有实现其他任何方法,它会抱怨,但是它不会强制执行这三个方法。是什么赋予了?有任何线索吗?

0
投票
1答案
669 次观看

带接口的InsertOnSubmit(LINQ to SQL)

在我们的代码中,我们有: public interface ILogMagazine { string Text { get; set; } DateTime DateAndTime { get; set; } string DetailMessage { get; set; } } SimpleDataContext: DataContext { public Table<ILogMagazine> LogMagaines { get { return GetTable<ILogMagazine>(); } } } 我们...

0
投票
2答案
1529 次观看

为什么不能从IList <iparent>强制转换为List实现Child的List <child></child></iparent>

可能重复: IList 到IList 我正在使用.NET 2.0在C#中编程,但我不明白为什么下面的强制转换会导致空引用。 如果您有IList ,为什么不能将其转换为IChild实现IParent的IList 。 using System.Collections.Generic; namespace InterfaceTest { public interface IParent { } public interface IChild : IParent { } public abstract ...

1
投票
3答案
564 次观看

Python响应中的有用继承。接口的替代

据我所知,在Python中变量是无类型的。所以现在我想拥有一个基类 class baseClass: def x(): print "yay" 和两个子类 class sub1(baseClass): def x(): print "sub1" class sub2(baseClass): def x(): print "sub2" 在其他编程语言中,我可以像这样针对接口进行开发 baseClass c = new sub1() 所以现在我可以将c用作具有sub1功能的baseClass,也许在运行时可以通过进行更改 c = new...

7
投票
3答案
8503 次观看

使用interface.i进行Hibernate一对一映射

我正在开发一个应用程序,其中所有pojo都作为接口公开,但是我们映射了实际的实现类。我们正在使用spring和JPA批注。我将测试一对一的关系,界面有问题。 由以下原因引起:org.springframework.beans.factory.BeanCreationException:创建类路径资源[META-INF / model-config.xml]中定义的名称为'sessionContainer'的bean时出错: 设置构造函数参数时,无法解析对bean'sessionFactory'的引用;嵌套的异常是org.springframework.beans.factor...

1
投票
2答案
1646 次观看

接口继承和子接口

接口IA:接口IB {...} 因此,IB是IA的父接口,IA是IB的_____。什么应该空白?子界面?

2
投票
2答案
7625 次观看

是否可以更改Visual Studio 2008界面语言?

我已经在计算机上安装了Visual Studio 2008西班牙语版本(专业版),但我想知道是否有可能或存在某种语言包将该界面更改为英语。 我做了一些研究,但没有发现对VS2008 Professional有用的东西。 谢谢

47
投票
10答案
28434 次观看

Xcode:可以为协议接口所需的方法自动创建存根吗?

来自Eclipse / Java背景,我最喜欢的功能之一是能够快速创建接口所需的所有方法的功能。在Eclipse中,我可以从源菜单中选择“覆盖/实现”,以为Interface的任何方法生成存根方法。 我想在Objective-C中做同样的事情。例如,如果我声明一个实现“ NSCoding”协议的类,我希望Xcode自动生成实现该协议所需的方法。必须查找然后复制/粘贴我要实现的每个协议的必需方法的签名,这很令人沮丧。 我已经尝试了一段时间,以找出是否有可能,但是还没有发现任何有希望的东西。在XCode中可以吗?

4
投票
5答案
1969 次观看

如何在接口中公开方法而不将其公开给所有类

我遇到了一个问题,我正在使用特定的界面处理很多事情。但是,我有一个特定的方法,希望只对特定的一组类可用(基本上是internal方法)。 interface IThing { function thisMethodIsPublic():void; function thisMethodShouldOnlyBeVisibleToCertainClasses():void; } 问题是,无法在界面中添加访问修饰符(即public,private,internal)-至少在ActionScript 3.0中不行。 所以我想知道什么是最佳实践?公开此内部方法似乎是一种...

4
投票
17答案
805 次观看

即使未指定接口,也针对接口编译Java类

我正在教授编程课程的入门知识,而我们正在使用Java。我想帮助学生学习如何将书面的课堂规范转换为工作程序。我将提供书面说明。它以方法签名的形式指定类的名称和行为。我希望学生将其转换为有效的Java班。 我可以为他们提供一个接口并让他们实现该接口,但这不能实现部分目的:读取和解释书面的功能说明文档。我希望他们从头开始编写课程。然后我要给他们的作品打分。 我检查他们的工作的想法是:根据我自己的接口编译他们的Java类文件。如果可以编译,那么至少我会知道它们已经遵循了所有方法约定,并且可以开始测试功能。如果无法编译,我将收到一条错误消息,报告哪些方法未正确实现。 即使源代码中最初未指定Java...

2
投票
2答案
76 次观看

查看接口的方法时,能否看到“最终” C#代码?

我想说的是,如果将对象定义为接口,然后从类工厂实例化,在VS 2008中是否可以右键单击该对象的方法调用并查看真实代码,而不是界面的空签名? 换句话说,我们的代码中有很多内容: ISomeInterface myObject = ObjectCreationFactory.CreateConcreteClassX(); myObject.DoSomething(); 如果我右键单击DoSomething()并转到其定义,我最终会看到ISomeInterface中的(空白)方法定义,而不是ObjectCreationFactory返回的类的定义。 当然,我可以去Creat...

0
投票
7答案
396 次观看

Java-当您拥有的都是引用类型时,实例化类型X的对象

我快速浏览了建议的“相关问题”,但找不到与我所问的问题直接相关的问题。即使有一个,也仍然很感谢您对最好的方法的意见。 首先介绍一下上下文。 我正在扩展Java应用程序,并且具有以下接口和类: public interface Mapper { public void foo(); } public class SomeGrammar implements Mapper { public SomeGrammar() {} public SomeGrammar(SomeGrammar toCopy) { //Copy specific fields } ...

2
投票
2答案
1699 次观看

使用PHP中的array_search使对象可搜索

我想在PHP中创建一个类,例如可以使用PHP本机方法array_search进行搜索。目前,我的类实现了IteratorAggregate和Countable,这使我可以在其上执行foreach。 还有一些其他的SPL接口(SeekableIterator,ArrayAccess等)似乎很合适,但我想知道是否有人已经这样做了,以及哪个接口适合我想要做的事情 谢谢

7
投票
1答案
507 次观看

C#是否有可能在调用具有可选参数的VB6方法时遇到问题?

我向VB6 DLL中找到的方法添加了3个可选的布尔参数。容纳它的类是MultiUse(公共),而方法本身是Private。该类从TLB实现一个特定的接口,允许对此方法进行公共调用。 在VB6端添加了3个可选参数之后,我修改了相关的C#代码,以便它指定了3个可选参数。它构建良好...但是,当我尝试运行该代码时,它失败并显示以下错误消息: 找不到方法:'布尔值 MyTLBName.IMyClassName.MyMethod(System.Object, System.String,布尔值,布尔值, Int32,Int32 ByRef,System.Object, S...

5
投票
4答案
673 次观看

我可以强制实现类返回其自身类型的对象吗?

我想在C#中创建一个接口,该接口定义一个始终返回实现类对象的方法,因此: public interface IParser { IParser Parse(string s); } public class Parser : IParser { public Parser Parse(string s) { return new Parser(s); } } 我可以强制实现类返回其自身类型的对象吗?如果可能的话,如何?还是泛型在这里是答案? 注意::该代码仅是一个示例,并不代表 应该运行。

1
投票
2答案
846 次观看

抽象类和接口,特别是PHP

此问题是我上一篇帖子的延续,该帖子位于此处。&gt; 由于没有编辑您的原始帖子就无法再次发布代码示例的方法,所以我开始了一篇新文章。而且,其中包含PHP代码。 我正在编写两个类,第一个是用于打开和关闭与数据库的连接,第二个是为数据库访问提供各种可重用的功能。 下面是我的Connection类的PHP代码: &lt;?php /** * DBConnection Base Class Definition */ /* Include dependency */ require_once("\config\dbconfig.php"); abstract class dbconnect...

1
投票
5答案
394 次观看

该宏结构的缺点和可能的替代方法

我最近看到了一些使用宏的代码,例如 #define CONTAINS(Class, Name)\ private:\ std::list&lt;Class&gt; m_##Name##s;\ public:\ void add_##Name(const Class&amp; a_##Name) {\ m_##Name##s.push_back(a_##Name);\ }\ int get_##Name(int pos) {\ return m_##Name#...

48
投票
19答案
44447 次观看

什么时候应该使用接口?

我知道一个接口没有一个主体,只是一个方法定义。但是我什么时候应该使用接口?如果我为某人提供了一组没有主体的接口,为什么他们会觉得需要编写函数主体?他们会更好地编写带有抽象方法的自己的抽象类吗? 已编辑: 我想当您是团队的一员时,对Interfaces的使用会更多。假设A团队为某件事编写了代码,并且他们想查看是否调用了方法。名称为getRecords()的完成与否。这将帮助团队B编写提供给他们的接口的正文,并且团队B必须保持方法名称相似,以便团队A的代码得以运行。 只是一个想法。我可能错了。我认为接口对于单个开发人员没有用。 已编辑: 谢谢大家的回答。根据大家的回答,我认为在制作...

5
投票
2答案
31095 次观看

接口中的C#构造函数

我知道您不能在接口中使用构造函数,但这是我想要做的: interface ISomething { void FillWithDataRow(DataRow) } class FooClass&lt;T&gt; where T : ISomething , new() { void BarMethod(DataRow row) { T t = new T() t.FillWithDataRow(row); } } 我真的很想用构造函数替换ISomething的Fil...

6
投票
2答案
2772 次观看

如何在VB.NET中使用隐式实现创建接口

在C#中,我可以创建一个接口,当我使用该接口时,编译器知道基类可以满足某些接口要求。用一个例子可能更清楚: interface FormInterface { void Hide(); void Show(); void SetupForm(); } public partial class Form1 : Form, FormInterface { public Form1() { InitializeComponent(); } public void SetupForm() { } }...

4
投票
3答案
743 次观看

具有视图和演示者的C#继承

我正在使用ASP.NET中的MVP,想看看是否有更简单/更干净的方法来实现这一点。 我有一个主持人,有一个观点。事实证明,我可以在同一应用程序区域的其他视图/演示器中重用某些视图属性和演示器方法。 让我们说我有一个酒吧,从逻辑上讲是Foo。基本演示者FooPresenter具有Bar及其兄弟的通用逻辑。IFoo视图也具有共同的属性。 我希望能够在FooPresenter中将视图视为IFooView,在BarPresenter中将视图视为IBarView并具有相同的实例,因此我在视图实现中将所有Foo东西(aspx)页面。 这是我所拥有的: public interface I...