问题标签 [subclassing]

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 投票
1 回答
1149 浏览

iphone - iPhone - 以正确的方式子类化 UIToolbar?

  1. 我创建了一个名为 CustomToolbar 的新类
  2. 然后我创建了一个空笔尖,为其添加了一个工具栏,并将工具栏类设置为“CustomToolbar”。

在代码中初始化 CustomToolbar 以便我的类使用 nib 文件的正确方法是什么?

我已经编写了代码来做到这一点,但我知道这不是正确的方法并且它有泄漏。

0 投票
4 回答
9332 浏览

python - 在子类列表之前要考虑什么?

我最近正在处理我遇到的一个编码问题,有人查看代码说子类列表很糟糕(我的问题与那个类无关)。他说你不应该这样做,而且它带来了一堆不好的副作用。这是真的?

我在问 list 通常对子类是否不好,如果是,原因是什么。或者,在 Python 中对列表进行子类化之前我应该​​考虑什么?

0 投票
1 回答
469 浏览

winapi - “跨进程子类化”的问题

两个问题。

1)我知道这一定是预期的结果,但也许有人可以告诉我我做错了什么;我正在尝试在全局挂钩中对所有窗口类进行子类化,它可以正常工作,只是我无法按我应该的方式关闭商店,并且当最初注册挂钩的程序取消注册挂钩并退出时,子类化的应用程序开始崩溃。

这就是我正在尝试的方法..

在 DllMain 我不对 DLL_PROCESS_DETACH 做任何事情。相反,ClearHooks() 是从最初注册钩子的程序中调用的,并且只有在钩子发送一条消息表明它已执行 EnumWindows 操作(恢复原始 wndprocs,见上文)之后才调用。

我在 WndProc 钩子中子类化窗口;所有接收消息且当前 wndproc 不是 dll 中的窗口的可见窗口都被子类化。

基本上所有(据我所知)应用程序在退出时都会崩溃,尽管 Windows 似乎确实将 wndproc 设置回它被替换时的状态。任何人都知道我可能做错了什么?

2)我需要这个来拦截 WM_MINMAXINFO 并在窗口最大化时修改窗口 maxsize。不幸的是,我不能在 dll 中执行此操作,但我必须与程序交谈以获取大小信息。那么,与那个窗口对话的最佳方式是什么?我需要它传回一些信息,以便我可以修改原始 WM_MINMAXINFO 消息附带的结构。WM_COPYDATA 中的结构是否会保留其数据,直到对 SendMessageTimeout 的调用返回?

谢谢

0 投票
2 回答
1655 浏览

objective-c - 覆盖objective-c中的可变参数方法

在objective-c中进行子类化时,在可变参数方法的情况下,如何将调用转发到超类。我应该用什么替换??? 下面发送我得到的所有对象?

0 投票
1 回答
327 浏览

objective-c - 静态objective-c类是否必须继承NSObject?

在我的 Objective-C 项目中,我有一个奇怪的功能,可以说,我有一个类,如下所示:

发生的情况是,当我单步执行代码时它工作正常,但我在控制台中收到一个神秘错误(即使代码完全正常,按预期工作):

然而,即使它说中止,代码仍然有效。但是,当我在没有单步执行这些代码行的情况下运行它时,它会中止。发生了什么,为什么?

0 投票
2 回答
2723 浏览

iphone - 有没有办法改变 scrollRectToVisible 的速度?

有没有办法改变滚动 UIScrollView 时 scrollRectToVisible 动画的速度?

0 投票
2 回答
8722 浏览

iphone - iPhone - 从 nib 文件加载 UIView?

我正在对 UIView 进行子类化,试图从 nib 文件加载我在界面构建器中放置的视图。我在返回线上收到以下错误:

由于未捕获的异常“NSGenericException”而终止应用程序,原因:“此编码器要求从 initWithCoder 返回替换的对象:”

0 投票
3 回答
393 浏览

c# - 如何根据 SQL 行中的值创建正确的子类

当我弄清楚如何在 C# 中为 ASP.NET 项目创建子类时,我感觉很聪明,然后我发现了一个问题——我不知道如何根据 SQL 查询的结果创建正确子类的对象.

假设您有一个名为 Animal 的类和两个名为 Zebra 和 Elephant 的子类。你明白吗?

我想要做的是执行一个 SQL 查询,如果返回的行有 row["Type"]="Zebra" 然后加载一个 Zebra 对象(或者如果它是一个大象那么......)。

所以,原则上,Animal 类应该有一个静态方法:

这是可能的还是我只是简单地理解了子类的想法是错误的。很明显,我不是 OO 专家。

在此先感谢,杰克

0 投票
3 回答
712 浏览

java - 在Java中设计没有多重继承的类层次结构

我试图弄清楚如何为我正在实现的 Carrier 类设计类层次结构。

我目前有一个抽象基类 Carrier。

我有另一个抽象类 TimedCarrier(TC),它使用时间和域相关信息扩展 Carrier。具体类从 Carrier 和 TimedCarrier 扩展而来。

用户需要一个进度监视器,所以我创建了一个从 Carrier 扩展的抽象类 MonitoredCarrier(MC)。具体类从 Monitored Carrier 扩展而来。

在用户需求发生变化之前,这可以正常工作一段时间。现在我需要一个 MonitoredTimedCarrier。我显然不能同时继承 TC 和 MC。我正在考虑将 MC 实现为接口:

(因为在这个领域的上下文中这对我来说更有意义,我应该能够监控 Carriers 是否定时),但是 MC 是丰富实现的类,我必须将所有方法复制粘贴到过去从 MC 扩展而来的类。我不想重复编码。

那我将如何解决这个问题?谢谢。

[编辑]

TimedCarrier 使用一组成员变量和 getter/setter 方法扩展了 Carrier。MonitoredCarrier 使用成员变量、getter/setter 方法和一系列与监视器一起使用的方法扩展 Carrier。

0 投票
4 回答
98140 浏览

c# - 如何在 C# 中创建子类?

如何使用 Visual Studio 2010 在 C# 中为 ASP.NET 创建子类?