【发布时间】:2014-09-27 04:40:59
【问题描述】:
我目前正在学习继承,但在理解这个概念时遇到了一些麻烦。 对于下面的代码,有人能告诉我为什么我不能声明 Superclass 类型的子类吗?
public class Test{
public static void main(String[] args){
Superclass myA = new Superclass();
Superclass myB = new Subclass();
}
public class Superclass{
private string a;
public Superclass()
{
a="";
}
public void setA(String userA)
{
a = userA;
}
}
public class Subclass extends Superclass{
private String b;
public Subclass()
{
b = "";
}
public void setB(String userB)
{
b = userB;
}
public void display()
{
System.out.print(b)
}
}
myA 不会给我任何问题,但 myB 会。我想做一系列让我们说超类, 但我希望能够使用子类。像这样的东西
Superclass[] X = new Superclass[2];
x[0] = new Subclass();
X[0].setB("hello");
X[0].display();
【问题讨论】:
标签: java superclass