Java中的抽象类
所以,我有一个面向对象的任务要做。它的一小部分是制作一个由节点组成的图形,可以是类型类别,也可以是类型产品 该类别只有一个名称[a-zA-Z0-9]+作为参数 产品名称为[a-zA-Z0-9]+且id>=0 一开始,a只创建了一个节点,产品中有两个对象类别,其中都为null,根据输入,我创建了这两个对象中的一个的实例,一切正常 我真的很认真地思考了一下,在我检查了讲座之后,我发现了关于抽象类的东西:D。不,我的想法是使节点抽象,并扩展产品和类别节点,因为: 类别具有用于名称和toString的setter和getter 产品有setter和getter作为Name和ID,当然还有toString 名称的Setter、getter和toString是相同的。 Product的构造函数有一个不同之处,因为它还设置了ID 所以, 这样行吗,更好吗?Java中的抽象类,java,class,graph,nodes,abstract,Java,Class,Graph,Nodes,Abstract,所以,我有一个面向对象的任务要做。它的一小部分是制作一个由节点组成的图形,可以是类型类别,也可以是类型产品 该类别只有一个名称[a-zA-Z0-9]+作为参数 产品名称为[a-zA-Z0-9]+且id>=0 一开始,a只创建了一个节点,产品中有两个对象类别,其中都为null,根据输入,我创建了这两个对象中的一个的实例,一切正常 我真的很认真地思考了一下,在我检查了讲座之后,我发现了关于抽象类的东西:D。不,我的想法是使节点抽象,并扩展产品和类别节点,因为: 类别具有用于名称和toString的s
我是否可以创建一个节点,然后在输入后说->这个节点来自类型category,如果它是抽象的,就不能创建一个节点 您应该获得输入,可能是想要创建的类型,并为该类型创建适当的非抽象类
或者,您可以将它们创建为类别,如果用户键入Id,则创建新产品并将数据从第一个对象复制到第二个对象。但这并没有多大意义。似乎类别应该只是产品的一部分。也就是说,您有一个category类和一个product类,它有两个属性:category类和id。这样,您可以从图形上的任何点创建一个类别,如果它是产品,将它传递给第二个构造函数以给它一个id。我认为这应该是一个抽象方法,以验证每个节点类型都可以独立实现 Node表示这是您正在导航的状态图。也许您希望在进入或离开该状态时触发一个方法。每种类型都可以放入所需的任何内容。接口和策略模式在这方面会有所帮助 将图表与所做的事情分开。你的问题目前确实很抽象。考虑添加一些代码以使其具体化。