初学java,大家帮忙看下这个java程序哪不对,老编译错误!

来源:百度知道 编辑:UC知道 时间:2024/05/22 05:51:47
public class FatherClass {
int x=0;
public FatherClass() {
x=3;
System.out.println("in SuperClass : x="+x);

}
void doSomething(){
System.out.println("in SuperClass.doSomething()");

}
}
class SubClass extends FatherClass{
int x=0;
SubClass(){
super();
x=5;
System.out.println("in SubClass :x="+x);
}
void doSomething(){
super.doSomething();
}
class SubClass extends FatherClass{
int x=0;
SubClass(){
super();
x=5;
System.out.println("in SubClass :x="+x);
}
void doSomething(){
super.doSomething();
System.out.println("in SubClass :x="+x);
}
void doSomething(){
super.doSomething();
System.out.println("in SubClass.doSomething()");
System.out.println

你的code有严重问题。
首先Subclass里面有两个相同的方法doSomething()。稍稍改了一下,请参考:

public class FatherClass {
int x = 0;

public FatherClass() {
x = 3;
System.out.println("in SuperClass : x=" + x);

}

void doSomething() {
System.out.println("in SuperClass.doSomething()");

}

public static void main(String args[]) {
SubClass sub = new SubClass();
sub.doSomething();
}
}

class SubClass extends FatherClass {
int x = 0;

SubClass() {
super();
x = 5;
System.out.println("in SubClass :x=" + x);
}

// void doSomething(int x) {
// super.doSomething();
// System.out.println("in SubClass :x=" + x);
// }

void doSomething() {
super.doSomething();
System.out.println("in SubClass.doSomething()");
System.out.println("s