初学JAVA,帮忙找找程序错误

来源:百度知道 编辑:UC知道 时间:2024/06/23 05:09:32
class hhello{
int a;
int b;
hhello(int c,int d){
a=c;
b=d;
System.out.println(a+2);

}
}
class ii extends hhello{

void ha(int c,int d){

System.out.println(c+d);
//this.a=c;
//this.b=d;
}

}
public class hello{
public static void main(String[] args){
hhello bb=new hhello(7,8);
ii aa=new ii();
aa.ha(5,6);
}
}

上面的class ii extends hhello{ 提示有错误,但不知道为什么
类名不大写,编绎器也不会给算错,这几个类是都写在一起.不过这样写也不算错吧!虽然没有面向对象的感觉.但这些道理我都明白.不过你说的那2个错误跟我这个错误没什么关系.

大哥大姐们,希望这个分数能满足你们,只是个小程序而以,我再给分就要退级了.i'm beging you

hhello必须有个默认的构造函数

或者你在class ii中声明一个和hhello一样的构造函数,
比如: public ii(int a, int b) {
super(a, b); // 这个必须加上
// 下面你可以自己增加代码
}

你把父类以及父类的方法、属性都声明为public试试。

1.类名请大写
2.你不会把这么多类写到一个.java文件里了把

因为类hhello中的构造函数已经被你重写,而这时默认构造函数就已经不存在的,没有默认构造函数的类不能被继承
代码应将hhello类改成这样:
class hhello{
int a;
int b;
hhello(){}
hhello(int c,int d){
a=c;
b=d;
System.out.println(a+2);

}
}

class ii extends hhello

里面没写构造,加入:

public ii(int c, int d)
{
super(c, d);
}

class hhello{
int a;
int b;
hhello(){
}
hhello(int c,int d){
a=c;
b=d;
System.out.println(a+2);
}
}
class ii extends hhello{

void ha (int c,int d){
System.out.println(c+d);
//this.a=c;
//this.b=d;
}

}
public class hello{
public static void main(String[] args){