如何从超类中检测对象

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从超类中检测对象相关的知识,希望对你有一定的参考价值。

我有一个Employee和Person类。 Person是Employee的超类。

以下是Person类构造函数的示例:

public Person(int id, String firstName, String lastName )

以下是Employee类构造函数的示例:

public Employee(Person person, double salary) 

还有一个txt文件,我正在从那里读取输入:

人123杰克哥伦布

员工123 5000

你可以看到员工和人是同一个人,怎么能从员工的身份检测到员工是杰克·哥伦布?

这是测试类代码:

case "Employee": 

                int id = input.nextInt();

                double salary = input.nextDouble();

                Employee employee (person(how can  ı fill here),salary) ; 
答案

一种方法是将您在数组中读取的所有人物对象或任何类型的列表存储起来,然后每次找到一名员工时,您遍历该列表并搜索具有相同ID的人员,但是您应该确保在该员工之前总有一个人已经存储了该ID

以上是关于如何从超类中检测对象的主要内容,如果未能解决你的问题,请参考以下文章

Django,Python继承:从超类中排除一些字段

为什么@UniqueConstraint不能从超类中找到列?

从超类调用子类的方法

如何键入提示 Python 函数返回从超类派生的任何类的实例?

OWL:如何从超类继承两个类之间的属性关系?

未检测到超类中声明的 Swift 协议一致性