问题标签 [abstract]

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 回答
123620 浏览

java - Java - 包含变量的抽象类?

让抽象类定义实例变量是一种好习惯吗?

子类 ExternalJavaScript.class 然后会自动获取源变量,但我觉得如果所有子类自己定义源而不是继承,则代码更容易阅读。

你有什么建议?

/亚当

0 投票
3 回答
1852 浏览

c# - 使用 C# 和 gppg,我将如何构建抽象语法树?

有没有办法做到这一点几乎是开箱即用的?

我可以编写一个大方法,使用收集到的标记来确定哪些叶子应该放在哪些分支中,最后填充一个 TreeNode 对象,但是由于 gppg 已经使用提供的正则表达式处理了所有事情,我想知道是否有更简单的方法吗?即使没有,任何关于如何最好地解决创建 AST 问题的指针都将不胜感激。

抱歉,如果我说了什么愚蠢的话,我才刚刚开始玩编译器游戏。:)

0 投票
6 回答
222 浏览

oop - 处理多个对象实例

这个问题是用伪 PHP 编写的,但我真的不介意我用什么语言得到答案(Ruby :-P 除外),因为这纯粹是假设性的。事实上,PHP 很可能是执行此类逻辑的最糟糕的语言。不幸的是,我以前从未这样做过,所以我无法提供真实世界的示例。因此,假设的答案是完全可以接受的。

基本上,我有很多执行任务的对象。对于此示例,假设每个对象都是一个从 Internet 下载文件的类。每个对象将下载不同的文件,并且下载是并行运行的。显然,某些对象可能会先于其他对象完成下载。数据的实际抓取可能在线程中运行,但这与这个问题无关。

所以我们可以这样定义对象:

好的,所以我们有很多这样的对象在运行:

我们可以将它们存储在一个数组中:

所以我们有一个充满下载的数组:

我们可以像这样遍历它们:

好的,现在假设下载 2 完成,并且对象被销毁。现在我们应该在数组中有两个对象:

但是阵中有一个洞!密钥 #2 未被使用。此外,如果我想开始新的下载,不清楚将下载插入到数组的哪个位置。以下可以工作:

然而,这是非常低效的(并且while $i++循环是nooby)。所以,另一种方法是保留一个计数器。

这会起作用,但我们仍然会在数组中找到漏洞:

太丑了 然而,这样可以接受吗?是否应该对数组进行“碎片整理”,即重新排列键以消除空格?

还是我应该注意另一种程序结构?我想要一个结构,我可以添加东西,从中删除东西,引用变量中的键,迭代等等,这不是一个数组。这样的事情存在吗?

我已经编码多年了,但是这个问题多年来一直困扰着我,我仍然不知道答案。这对一些程序员来说可能很明显,但对我来说却非常重要。

0 投票
6 回答
1011 浏览

java - 使用抽象类实现接口时要声明什么(不)?

我有一个接口 A,我必须为此提供几个不同的实现。但是,这些实现共享一些辅助方法,因此我将这些方法移至抽象基类。

我的代码按预期工作,但我有几个问题:

  • 我应该在 B 类中声明抽象方法 doX() 吗?为什么不)?

  • 我是否还应该在 C 类和 D 类上明确声明“实现 A”?为什么不)?

0 投票
28 回答
632544 浏览

oop - 抽象方法和虚拟方法有什么区别?

抽象方法和虚拟方法有什么区别?在哪些情况下建议使用抽象或虚拟方法?哪一个是最好的方法?

0 投票
3 回答
28007 浏览

c# - 设计者必须创建一个...不能的实例,因为该类型被声明为抽象

Visual Studio 抱怨:警告 1 设计者必须创建一个类型为“RentalEase.CustomBindingNavForm”的实例,但它不能,因为该类型被声明为抽象。

Visual Studio 不允许我访问表单的设计器。该类已经实现了 CustomBindingNavForm 中的所有抽象方法。CustomBindingNavForm 提供了一些具体和抽象的功能。

有没有解决的办法?

这是课程:

0 投票
9 回答
33249 浏览

c# - C#:创建抽象类的实例而不定义新类

我知道它可以在 Java 中完成,因为我过去曾广泛使用过这种技术。下面将显示 Java 中的示例。(附加问题。这种技术叫什么?很难找到没有名字的例子。)

现在,我的主要问题是,这也可以在 C# 中完成,如果可以,怎么做?

0 投票
4 回答
477 浏览

xml - XSLT 映射算法

我有一个特殊的问题,我不知道如何解决。在办公室,我们有一个庞大而笨拙的 XSLT,用于将一种类型的 XML 适配到另一种类型。问题是它不是很一致地编写并且很难遵循。在这个样式表的古老创作中,似乎忘记了它的确切作用。

有没有办法以人类可读的格式轻松绘制出巨型 XSLT 的功能?即每个可能的输入 -> 每个可能的输出。我们无法创建一个包罗万象的输入文档,因为适配器对不同的输入有不同的行为(我们估计需要 100 多个输入文档才能覆盖所有可能的输出)

任何建议都将受到欢迎。

0 投票
17 回答
138070 浏览

javascript - 如何在 JavaScript 中创建抽象基类?

是否可以在 JavaScript 中模拟抽象基类?最优雅的方法是什么?

说,我想做类似的事情: -

它应该输出:'bark','meow'

0 投票
5 回答
2640 浏览

c# - C#中的虚方法问题

在 MSDN 中提到,

http://msdn.microsoft.com/en-us/library/9fkccyh4(VS.80).aspx

我很困惑这个项目是什么意思“可以通过包含使用覆盖修饰符的属性声明来覆盖派生类中的虚拟继承属性。”?

(这是虚拟和抽象之间的第二个区别)

提前谢谢,乔治