abstract class vehicle{
abstract int getFuel();
}
class car extends vehicle{
int getFuel(){
return 3;
}
}
class bus extends vehicle{
int getFuel(){
return 8;
}
}
class company{
vehicle [] fleet;
fleet[0]=new car();
fleet[1]=new car();
fleet[2]=new bus();
fleet[3]=new car();
void reportFuel (){
int fuel=0;
for (int i=1;i<fleet.length;i++ ){
fuel+=fleet[1].getFuel();
}
System.out.println(fuel);
}
public static void main(String args[]){
company a=new company();
a.reportFuel();
}
}
那位达人帮我把这个程序该正确下吧,这是自己写的,但是很多东西不知道用的对不。
abstract int getFuel();
}
class car extends vehicle{
int getFuel(){
return 3;
}
}
class bus extends vehicle{
int getFuel(){
return 8;
}
}
class company{
vehicle [] fleet;
fleet[0]=new car();
fleet[1]=new car();
fleet[2]=new bus();
fleet[3]=new car();
void reportFuel (){
int fuel=0;
for (int i=1;i<fleet.length;i++ ){
fuel+=fleet[1].getFuel();
}
System.out.println(fuel);
}
public static void main(String args[]){
company a=new company();
a.reportFuel();
}
}
那位达人帮我把这个程序该正确下吧,这是自己写的,但是很多东西不知道用的对不。
package csdn;abstract class vehicle{
abstract int getFuel();
}
class car extends vehicle{
int getFuel(){
return 3;
}
}
class bus extends vehicle{
int getFuel(){
return 8;
}
}
public class company{
vehicle [] fleet = new vehicle[4];
{
fleet[0]=new car();
fleet[1]=new car();
fleet[2]=new bus();
fleet[3]=new car();
}
void reportFuel (){
int fuel=0;
for (int i=0;i<fleet.length;i++ ){
fuel+=fleet[i].getFuel();
}
System.out.println(fuel);
}public static void main(String args[]){
company a=new company();
a.reportFuel();
}
}
vehicle [] fleet = new vehicle[];
{
fleet[0]=new car();
fleet[1]=new car();
fleet[2]=new bus();
fleet[3]=new car();
}
vehicle [] fleet ={new car(),new car(),new bus(),new car()};
能解释下这段么?vehicle [] fleet=new vehicle[4];
{
fleet[0]=newcar();
fleet[1]=newcar();
fleet[2]=newbus();
fleet[3]=newcar();
}问题一、vehicle不是抽象的么,为什么用new
问题二、直接用{//代码} 这重写法好像没用过
有用过static{}
呵呵,本人不才,希望高人指点
问题一、vehicle不是抽象的么,为什么用new
问题二、直接用{//代码} 这重写法好像没用过
有用过static{} 问题一:是实例化数组,不是实例化此抽象类!意思就是继承这个抽象类的所有子类都可以放这个数组里,也就是向上转型
问题二:{}里的代码跟重写没关系吧,就是非静态块代码,static 有它对应的static代码块,not static 有它对应的not static代码块