class Animal{
private int legs;
private String kinds;
public Animal(){
setLegs(4);
}
public Animal(int l){
setLegs(l);
}
public void eat(){
System.out.println("Eating");
}
public void move(){
System.out.println("Moving");
}
public void setLegs(int l){
if(l!=0&&l!=2&&l!=4){
System.out.println("Wrong Number Of Legs");
}
}
public void setKind(String str){
kinds=str;
}
}
public class Fish extends Animal{
public Fish(0){
setLegs(0);
setKind("Fish");
}
public static void main(String[]args){
Fish fish=new Fish();
fish.eat();
fish.move();
}
}
非法的类型开始,为什么?
答案:2 悬赏:0 手机版
解决时间 2021-04-04 22:03
- 提问者网友:凉末
- 2021-04-04 08:35
最佳答案
- 五星知识达人网友:三千妖杀
- 2021-04-04 08:41
编译器不会根据上下文推到0是什么类型,你这里必须标明Fish的构造函数的参数类型,你可以
public Fish(){
setLegs(0);
setKind("Fish");
}
// 降低访问级别不给访问 这个构造
private Fish(int leg){
}
// 或者给访问,但leg没有用
public Fish(int leg){
this.()
}
// 最后问一下:你这类型继承的修饰符确定没问题?父类 默认friendly 子类 public,这也行?请允许很久没有写java的小白问下这个问题
public Fish(){
setLegs(0);
setKind("Fish");
}
// 降低访问级别不给访问 这个构造
private Fish(int leg){
}
// 或者给访问,但leg没有用
public Fish(int leg){
this.()
}
// 最后问一下:你这类型继承的修饰符确定没问题?父类 默认friendly 子类 public,这也行?请允许很久没有写java的小白问下这个问题
全部回答
- 1楼网友:人间朝暮
- 2021-04-04 08:53
public class newclass{ //第一个public 类型的class
package com; //检查下是否应该放这里呢?往上移到class前面是否这样呢?
public class point //第二个public类型的class
{
private string x;
private string y;
public string getx()
{
return x;
}
public void setx(string x)
{
this.x = x;
}
public string gety()
{
return y;
}
public void sety(string y)
{
this.y = y;
}
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯