【问题标题】:Real time use of abstract, sealed and static class [closed]抽象、密封和静态类的实时使用[关闭]
【发布时间】:2015-06-21 19:43:24
【问题描述】:

如果我必须在一个类中保留一些通用功能,那么我会选择静态、密封或抽象类...所有这些类型的类是否都用于将通用功能保持在一起? ..当我必须去一个时,实际上不同之处在哪里

【问题讨论】:

  • 谁能帮助我们在抽象类、密封类和静态类中选择一个的场景是什么
  • 您的问题似乎过于宽泛。也许您可以将其改写为更具体?你想实现什么场景?
  • 谢谢 Jeroen..但正如我所说,这些文章只告诉你这些是什么以及理论上的差异......这些都没有真正说明我们必须在哪些情况下使用这些......当我必须让一个类密封而不是抽象......如果我选择不密封的抽象会带来什么变化,反之亦然......希望你理解我的情况
  • 投反对票(不是我)不是,因为你的问题很糟糕,这是因为它超出了stackoverflow的范围。 Stackoverflow 是关于在你的软件中被卡住(在一个错误上)。发布一个问题和一些示例代码(比如你尝试过的)以及一些你被困在哪里的解释。像我们这样的人试图了解问题并提供提示/解决方案,让您重回正轨。

标签: c# .net static abstract sealed


【解决方案1】:

抽象、密封、静态与实时开发无关。它与在您的软件中引入结构有关,以便可以并且应该以正确的方式使用类中实现的功能。


在一些 cmets 之后,我认为:

我认为你只能通过这样做来学习这一点。没有一本书或 epub 可以解释你如何进行编程。他们将展示语法和一些示例。这将是反复试验。每天你都会面临新的挑战。 你必须练习它。最好的建议是,看看其他人已经创建了什么,并尝试想象他们为什么要这样写/解决它。

我可以解释静态/密封/抽象类是什么/做什么,但它不会告诉你什么时候使用它。


回到问题:定义“实时”。我认为静态/抽象/密封不应该决定您如何编写“实时”软件。如果您对这个级别的性能感到“害怕”,C# 不应该是您的选择。我会写 c++,或者如果你想要一个真正的挑战,试着用 asm 打败编译器;-)

我认为您不会衡量“开销”

所以,以正确的方式使用 abstract/static/sealed,以便你未来的collega/你可以阅读/维护它。

我使用 C# 在 Windows 计算机和 PLC(带有 delta 机器人)之间进行通信 (tcp/ip)。但这远非实时。它的速度足以让许多机器人每秒处理超过 100 条消息。

【讨论】:

  • 我想向您寻求更多帮助...如果我采用 Console 类和 TextWriter 类....为什么一个是静态的,另一个是抽象的
  • 我认为@BhuwanPandey 正在寻找的是这些功能在开发中的实际实现。与文本或学术界列出的差异相反。
  • @MattRowland 谢谢……至少我有一个能理解我的情况和情况的人
  • @BhuwanPandey 尝试编辑原始问题,使其更具描述性。
  • @MattRowland 我在 Gooogle 上进行了大量搜索....但我最终发现了这些行之间的差异....当我们不得不去寻找这些时无法获得
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-24
  • 2011-03-03
  • 1970-01-01
  • 2010-11-19
  • 2013-04-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多