问题标签 [concrete]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4155 浏览

uml - 在 UML 中,您是否必须显示抽象方法的具体实现?

我正在绘制一些 UML,其中具体类继承自定义纯虚拟方法的抽象类。是否也需要在具体类中显示此方法?它是通过从抽象类继承来暗示的。

0 投票
5 回答
66881 浏览

c# - 查找接口实例背后的具体类型

长话短说,我有一个 C# 函数,它对作为 Object 实例传入的给定类型执行任务。传入类实例时一切正常。但是,当对象被声明为接口时,我真的很想找到具体的类并对该类类型执行操作。

这是一个普遍存在的坏例子(带有不正确的属性大小写等):

我希望 PerformAction 中的代码对其参数使用反射,并看到它不仅是 IA 的实例,而且是 B 的实例,并通过 GetProperties() 查看属性“b”。如果我使用 .GetType() 我会得到 IA 的类型 - 这不是我想要的。

PerformAction 如何确定 IA 实例的底层具体类型?

有些人可能会建议使用 Abstract 类,但这只是我的坏例子的限制。该变量最初将被声明为接口实例。

0 投票
1 回答
1438 浏览

python - SQLAlchemy 声明式具体自动加载表继承

我有一个已经存在的数据库,并想使用 SQLAlchemy 访问它。因为,数据库结构由另一段代码(实际上是 Django ORM)管理,我不想重复自己,描述每个表结构,我正在使用autoload自省。我坚持使用简单的具体表继承。

这是代码,表 SQL 描述作为文档字符串:

实际的表有额外的列,但这与问题完全无关,所以为了尽量减少代码,我将所有内容都简化到了核心。

问题是,当我运行这个时:

生成的 SQL 没有意义(注意缺少连接条件):

当我尝试访问时payment.date,出现以下错误:Concrete Mapper|FooPayment|payments_foo does not implement attribute u'date' at the instance level.

我尝试添加隐式外键引用id = Column('payment_ptr_id', Integer, ForeignKey('payments_payment.id'), primary_key=True)FooPayment没有任何成功。完美地尝试print session.query(Payment).first().user工作(我省略User了课程并评论了这一行),所以 FK 内省有效。

如何对结果实例执行简单查询FooPayment和访问的值?Payment

我正在使用 SQLAlchemy 0.5.3、PostgreSQL 8.3、psycopg2 和 Python 2.5.2。感谢您的任何建议。

0 投票
2 回答
6213 浏览

c# - c# 使用 Moq 模拟具体类的接口成员

我有一个接口 ITransaction 如下:

我有一个派生类 PaymentTransaction 如下:

我想模拟 PaymentTransaction 对象的所有三个属性。

我尝试了以下方法,但它不起作用:

但是当我注入

(mockedTxn.Object 作为 PaymentTransaction)

在我正在测试的方法中(因为它只需要一个 PaymentTransaction 而不是 ITransaction,我也无法更改它)调试器显示进入时间和退出时间的空引用。

我想知道是否有人可以帮助我。

感谢期待。

0 投票
2 回答
818 浏览

structuremap - Structuremap 按对象类型使用不同的具体类型

我在注册表中定义了一个默认的具体类型:

ChaceXRepository 具有以下构造函数:

公共类 CacheXRepository: IXRepository{

在构造函数中,它接收一个与自身具有相同接口类型的对象,但我想传入不同的具体类型。

如何在注册表中定义如果类型是 CacheXRepository,那么我希望参数 IXRepository 的具体类型为 XRepository,在所有其他情况下,IXRepository 应该解析为 CacheXRepository。

0 投票
4 回答
1167 浏览

c# - C#:返回其具体类型在运行时确定的对象的方法?

我正在考虑设计一种方法,该方法将返回一个实现接口但其具体类型直到运行时才知道的对象。例如假设:

直到运行时我们才知道我们会取回什么车。

a) 我想知道这个人的车是什么类型的。

b) 根据我们返回的具体汽车类型,我们将调用不同的方法(因为某些方法只对类有意义)。所以客户端代码会做类似的事情。

这是一个好的设计吗?有代码味道吗?有一个更好的方法吗?

我对返回接口的方法很好,如果客户端代码正在调用接口方法,显然这很好。但我担心的是客户端代码转换为具体类型是否是好的设计。

0 投票
1 回答
438 浏览

c++ - 我可以教 dynamic_cast<>() 新技巧吗?

在 C++ 中有没有办法构造你的类,这样给定一个指向你的类的指针,你可以指示 dynamic_cast<>() 如何转换到另一个你正在为其包装实现的类?运营商演员会成功吗?想象一下,我有一个抽象接口基类,并从中派生了一个具体A 以及具体B,但是具体B 将接口包装到一个具体A 类型的对象。如果我收到从具体 A 转换为具体 A 的请求,我希望它能够工作:

0 投票
1 回答
442 浏览

linq - 泛型基类和扩展方法的具体实现

这篇文章的最终目标是覆盖通用基类的具体实现的 ToString() 方法,同时仍然能够使用 Linq 展平技术搜索实现。因此,如果您阅读本文并看到更好的方法,请告诉我。我正在为 Silverlight 使用 Telerik 控件,它们不会更改其 api 以允许其某些控件属性是数据绑定的,而是依赖于它们绑定到的任何对象的 ToString() 方法。是的,愚蠢的..无论如何,这就是我所拥有的。

我的页面上的 RadTreeView 控件。树视图中每个节点的 FullPath 属性使用其绑定到的每个项目的 ToString() 方法(所以这是我需要覆盖的)。

我必须创建一个“中间”类来增强我的基本模型类,以便它可以绑定为树视图中的层次结构,然后是该通用类的具体实现以覆盖 ToString()。现在的问题是我有一个 Linq 扩展,因为它无法将具体实现转换回基本泛型类。我喜欢仿制药,但这对我来说太多了。需要帮助解决扩展方法问题。

中间泛型类:

基本模型类:(使用此类将数据往返于 WCF Ria 服务)

具体实现,以便我可以覆盖 ToString():

最后是在编译期间爆炸的 Linq 扩展方法,因为我介绍了我的通用基类的具体实现。

正在破坏的实际代码:(x.Children 以错误突出显示)

0 投票
3 回答
6470 浏览

php - PHP:接口中的抽象方法

为什么我不能在接口中声明抽象方法?这是我的代码。谢谢你。

0 投票
1 回答
186 浏览

content-management-system - 将我的域指向concrete5文件夹

我有一个域名,并在我的 public_html 文件夹下安装了concrete5。所以它是 public_html/concrete5.4.1 文件夹。现在我将如何将我的流量重定向到具体5 文件夹?也就是说,当用户键入 www.domainname.com 时,它应该显示来自 public_html/concrete5.4.1 文件夹的 index.php 页面。

非常感谢。