我有一个SuperClass员工,一个子类管理器通过名字扩展员工。
现在我想在查看Employee数组时使用instanceof
示例:
while (employee[i]!=null){
if (employee[i] instanceof Manager)
here is my problem"!!
我想sysout一个Manager atribute" Name":
sysout("Name: "+employee[i].name)
但它说在Employee中创建名称..为什么如果它扩展了员工并且已经使用了instanceof ...我尝试像这样(经理)员工[i] .name但是它没有做任何事情。
答案 0 :(得分:1)
需要将演员表应用于您访问该字段的值。
((Manager)employee[i]).name
你正在使用它
(Manager)employee[i].name
尝试将强制转换应用于通过访问字段name
返回的值。