问题标签 [nested-class]

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 投票
8 回答
186854 浏览

c# - 为什么我需要使用 C# 嵌套类

我试图了解 C# 中的嵌套类。我知道嵌套类是在另一个类中定义的类,我不明白为什么我需要这样做。

0 投票
4 回答
2732 浏览

c# - C#中的内部类

直到最近,我才发现普通类和内部类/子类之间存在差异。

内部类的实例与其包含类的实例之间有什么关系,内部类的目的是什么/是什么使它们不同?

0 投票
4 回答
800 浏览

c++ - 带有数组的嵌套结构

请帮我创建一个带有数组的嵌套结构。如何修复此代码?

谢谢。

0 投票
6 回答
874 浏览

c# - 重构:嵌套类还是单独的类?

我目前正在对我们的一些框架类进行一些重构(+ 添加新功能)。情况是我们有一个(类似上帝的)类,它执行我们想要拆分的一堆逻辑。该类表示类似于财政代码的验证规则。所以它会验证人名、生日等。

我要做的是将其拆分为单个规则,基本上是一个规则,它根据财政代码验证人的名字,另一个验证生日等等。对于最后的程序员来说,它看起来几乎相同。他不会调用 FiscalCode 规则的巨大构造函数,而是执行类似的操作FiscalCode.GetRules(...)并在此处传递参数。然后GetRules(...)将在内部构造单个规则并将它们作为数组传回。这对我们来说是完全正确和正确的。

你的背景就这么多。现在我的问题如下。FiscalCode 类(这是我们当前强大的神级)有很多实用方法,我将要创建的更多单一“规则类”将需要这些方法。我所知道的是,我仍然需要 FiscalCode 类来做这GetRules(...)件事(这是为了程序员以某种方式保持不变,而不是他们必须做一个全新的事情)。

我有两个选择:

  1. 创建我的新规则类并访问 FiscalCode 类的公共静态实用程序方法
  2. 创建我的新规则类作为 FiscalCode 类 st 的内部嵌套类我已经访问了实用程序方法(因此不需要公开我的实用程序方法)

我已经有一个最喜欢的,但我想先听听你们中的一些人的意见。

谢谢

0 投票
1 回答
549 浏览

vb.net - .net 框架如何在类中嵌套表单。(vb.net)

如果我查看框架中的一些类,使用反射器,我可以看到表单和用户控件是私有的并嵌套在父类中。

例如,我有一个控件,它使用特定于该控件的弹出表单。目前,我使弹出式表单朋友可访问。如果我想以框架方式进行操作,我会将其设为私有并将其嵌套到控制类中。但是,如果这样做,我将无法再使用 ide 来设计表单,并且在尝试编译时会出错。所以,我有两个问题:

(1) 微软是否会在最后一刻将所有东西都嵌套为私有?

(2) 他们的方式是首选方式还是我应该坚持我的朋友访问者?

0 投票
9 回答
1025 浏览

c# - 你什么时候想在 C# 中嵌套类?

具体来说,谁能给我具体的例子,说明何时或何时不使用嵌套类?

我从很久以前就知道这个功能,但从来没有理由使用它。

谢谢。

0 投票
2 回答
523 浏览

c# - 在不同的程序集中具有相同名称的嵌套类导致序列化头痛

我正在使用设计不佳的 API。我有一个需要序列化的类,并且我可以控制该类的构成,但不能控制构成该类正在序列化的属性的类型。下面是一个例子:

问题是,我无法控制“安装”和“卸载”类型,它们的嵌套类型具有相同的名称。“安装”驻留在 MyCompany.Install.dll 中,“卸载”驻留在 MyCompany.Uninstall.dll 中。但更重要的是,MyCompany.Uninstall.dll 引用了 MyCompany.Install.dll,这完全没有意义。我知道这是一个糟糕的设计(我正在处理的整个框架都很糟糕),但我没有选择使用它。

我得到的错误是:

“类型 'MyCompany.Install.Uninstall.DefaultStep' 和 'MyCompany.Install.DefaultStep' 都使用来自命名空间 '' 的 XML 类型名称 'DefaultStep'。使用 XML 属性为类型。”

这将是一个好主意,除了我对包含“安装”和“卸载”类的程序集的控制为零。

有任何想法吗?

0 投票
5 回答
7578 浏览

c++ - 嵌套的 C++ 类可以继承其封闭类吗?

我正在尝试执行以下操作:

…但我的编译器似乎对此感到窒息。这是合法的 C++,如果不是,有没有更好的方法来完成同样的事情?本质上,我想创建一个更简洁的类命名方案。(我不想Animal从公共基类派生内部类)

0 投票
2 回答
230 浏览

c++ - 为什么我的嵌套类被视为抽象的?

我有一个包含私有嵌套实现的抽象基类。当我尝试实例化非抽象嵌套实现时,visual c++ 给我以下错误:

错误 C2259:'node::empty_node':无法实例化抽象类(第 32 行)

据我所知,我已经覆盖了基类的所有抽象成员

代码如下:

0 投票
3 回答
950 浏览

language-agnostic - 我什么时候应该使用/嵌套类的例子?

请重新标记此问题以包含与其相关的语言

所以我的 Java 书有一整章是关于嵌套类的,但最后指出只有在“建模组合关系和实现要隐藏的类的内部”时才应该真正使用它们。因此,让我们讨论一下您何时想要使用嵌套类和一些示例。