您的位置:首页 > 编程语言 > Java开发

测试java三大特性之一(继承)的代码

2011-06-18 11:26 387 查看
import static java.lang.System.out;
class Foundation {
String a = "Foundation class";
int b = 100;
public Foundation() {
out.println("这是父类的默认构造方法!");
}
public Foundation(String a,int b) {
this.a = a;
this.b = b;
}
public void setName(String a) {
this.a = a;
}
public void setNumber(int b) {
this.b =b;
}
public String getName() {
return a;
}
public int getNumber() {
return b;
}
}
public class InheritFound {
String a = "inherit class";
int b = 200;
public InheritFound() {
out.println("这是子类的默认构造方法,目的是测试子类继承父类隐式调用父类的构造器!");
}
public InheritFound(String a,int b) {
super("Hello,This a test!",1);
out.println("这里如果调用的是父类的属性的话,应该输出其String属性为"+super.a+", int属性为"+super.b);
this.a = a;
this.b = b;
out.println("子类的String属性:"+a);
out.println("子类的int属性:"+b);
}
public void setName(String a) {
this.a = a;
}
public void setNumber(int b) {
this.b = b;
}
public String getName() {
return a;
}
public String getNumber() {
return b;
}
public static void main(String[] args) {
InherFound i1 = new InherFound();//这个位置是否会输出"这是父类的默认构造方法!"这句,如果输出,那么子类默认构 造器内已隐式调用了父类的默认构造方法
InherFound i2 = new Foundation();//这个位置是否输出"这是父类的默认构造方法!",如果是,那么对象i2是否优先调用 父类的属性与方法呢?是否可以在这里添加这样的语句“i2.setName("这里调用的是 什么类的属性:");out.println(i2.getName());”
Foundation i3 = new Foundation();//是否可以在这里创建一个父类的对象?
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: