interface infAircraft
{
public void takeoff();
public void fly();
public void landfall();
}abstract class absAircraft
{
double L,W,H,weight,speed,volume;
public double vol()
{
volume = L*W*H;
return 0.0;
}; ????????????????????????? public abstract void voice();
}class airplane extends absAircraft implements infAircraft
{
airplane( double L1,double W1, double H1)
{
L=L1;
W=W1;
H=H1;
} double weight=300;
double speed=300;
public void voice()
{
System.out.println("飞机发出飞机的叫声");
} public void takeoff()
{
System.out.println("airplane can takeoff!");
}
public void fly()
{
System.out.println("airplane can fly!");
}
public void landfall()
{
System.out.println("airplane can landfall!");
}
} public class oopDemo
{
public static void main(String[] args)
{
airplane a = new airplane(1,2,3);
a.vol();
a.fly();
a.takeoff();
a.voice();
a.landfall();
}
}别看程序长 就问一个小问题 就是我打问号的那一排 为啥在方法后面加分号也不显示错误的?
{
public void takeoff();
public void fly();
public void landfall();
}abstract class absAircraft
{
double L,W,H,weight,speed,volume;
public double vol()
{
volume = L*W*H;
return 0.0;
}; ????????????????????????? public abstract void voice();
}class airplane extends absAircraft implements infAircraft
{
airplane( double L1,double W1, double H1)
{
L=L1;
W=W1;
H=H1;
} double weight=300;
double speed=300;
public void voice()
{
System.out.println("飞机发出飞机的叫声");
} public void takeoff()
{
System.out.println("airplane can takeoff!");
}
public void fly()
{
System.out.println("airplane can fly!");
}
public void landfall()
{
System.out.println("airplane can landfall!");
}
} public class oopDemo
{
public static void main(String[] args)
{
airplane a = new airplane(1,2,3);
a.vol();
a.fly();
a.takeoff();
a.voice();
a.landfall();
}
}别看程序长 就问一个小问题 就是我打问号的那一排 为啥在方法后面加分号也不显示错误的?
jvm 解析的时候 如果是空语句 自己会优化的~ 所以没有的问题~
和方法也没关系,因为你在后面再加几个分号也一样不报错。我觉得这就是编译器有意为之的,这种对编译结果没有影响的东西,编译器就直接忽略掉了。
如果它不忽略报错也是可以的,也许其他的Java编译器有些就会报错也说不定呢