【问题标题】:What are the different types of java classes?有哪些不同类型的 java 类?
【发布时间】:2017-10-07 16:16:38
【问题描述】:

我是 SO 新手,所以如果我做错了,请指出正确的方向。

我认为这是一个有点尴尬的问题,因为我不太善于表达自己的想法。

在大学里,我们被教导将一个 java 类写成一个对象,带有构造函数、getter、setter 等,称为“容器类”。它们包含关于自身的数据(例如,名称属性)。

我的问题是其他类型的课程是什么?例如,您必须有一个类来创建和操作您的对象。对于一个小程序,这不是问题(只需将其放入主类/方法中)。对于更大的程序,这将是愚蠢且难以管理的,因此显然您创建了其他类。我已经开始命名我的“处理程序”。我有一个“FileHandler”一个“ObjectHandler”等等。

这些是什么类型的课程?还有其他类类型吗?

编辑:澄清一下,我想知道如何称呼一类类,例如旨在做特定事情的类。辅助类?实用程序类?

最终编辑:我在这里回答了我自己的问题:https://stackoverflow.com/a/43964279/7985805

【问题讨论】:

  • 在大学里,我们被教导说 java 类本身就是一个对象......尽快退出那个 uni!!!!跨度>
  • 一个类不是一个对象,它是一个对象蓝图。另外,这不是编程问题。
  • 您的问题看起来好像您正在寻找MVC for example 的设计模式。至少是第二部分
  • Java class type 是一个非常广泛的问题,您可以根据很多标准对它们进行分类:access levelinheritance、目的、design pattern 他们实现。对于其中一些,请查看this link

标签: java class types


【解决方案1】:

在大学里,我们被教导说 java 类本身就是一个 对象

我不得不在这里不同意,类是对象的模板,您可以将它们视为包含特定对象的描述,即对象状态、行为该对象可以执行等。对象是类的实例,因此类不是对象

我的问题是其他类型的课程是什么?

一个类可以是 any 类型,它只取决于你想要完成的事情,例如在制作太空侵略者游戏时,你可以有一类外星人(敌人),一类防御者(射手),一类子弹,防御者可以用来射击外星人等。

【讨论】:

  • 抱歉,翻译错误。我们没有被教导所有类都是对象,我只是说“一个被设计为对象的类”以在我的示例中使用。另外,关于“类类型”,我指的不是“对象类型”。我们被告知,“已开发为对象”的类(即具有构造函数、getter/setter 等的类)称为“容器类”。如何引用不是容器类的类?
【解决方案2】:

在我看来,如果您将“类”称为“容器类”,那么您只是添加了一个多余的词。

在较大的程序中,可能有一些具有相同目的的类,例如,可能有 ModelData 类,它们只保存数据:如员工、合同、ComplicatedCalculationResult;或者可能有处理程序类:FileHandler,MouseHandler,...但是所有这些都没有设置为固定的措辞。

您可以根据需要为您的班级命名。最好给它命名,以便其他人可以猜出这个类的用途。

【讨论】:

    【解决方案3】:

    所以经过一番研究后发现,我试图为其命名的“类类型”实际上被称为“设计模式”。诸如构建器、工厂、适配器等。

    我在这里找到了一个方便的教程来更深入地解释它们:https://www.tutorialspoint.com/design_pattern/design_pattern_overview.htm

    感谢您尝试回答我措辞非常糟糕的问题。正如我所说,我很难解释我想说的话。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-23
      • 2010-09-27
      • 2012-01-17
      • 2013-09-12
      • 2010-12-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多