创建子类的对象数组

时间:2015-09-20 02:24:02

标签: java

所以看起来我必须创建一个子类(Bicycle)的对象数组。

然后我向这个添加了两个对象..并循环数组并打印每个对象的构造。

这听起来让我感到困惑,我不确定如何解决这个问题。

我还会发布我的其余代码,以便更有意义。

主要:

package javaapplication4;

public class JavaApplication4 {

    public static void main(String[] args) {

        Bicycle myBike = new Bicycle(1, "Haro BMX", true, "Handlebars, Tyres, Frame");
        System.out.println(myBike);        
    }
}


package javaapplication4;

public class Implement {

  String name;
  boolean hasMovingParts;
  String constructedFrom;

  public Implement() {
  }

  public Implement(String name, boolean hasMovingParts, String constructedFrom) {
    this.name = name;
    this.hasMovingParts = hasMovingParts;
    this.constructedFrom= constructedFrom;
  }

  public String getName() {
    return name;
  }

  public boolean getMovingParts() {
    return hasMovingParts;
  }

  public String getConstructedFrom(){
    return constructedFrom;
  }

  public class Bicycle extends Implement {
    public int seatNumber;

  public Bicycle(int seatNumber, String name, boolean hasMovingParts, String constructedFrom) {
    this.seatNumber = seatNumber; //takes the value you pass as parameter
    this.name = name; // and stores it into the instance variable
    this.hasMovingParts = hasMovingParts;
    this.constructedFrom = constructedFrom;   
    }

    @Override
  public String toString(){
      return String.format("*Vehicle Statistics* Seats: %d, Name:" +
           " %s, Contains Moving Parts: %b, Materials: %s",
                seatNumber, name, hasMovingParts, constructedFrom);
  }
}
}


package javaapplication4;

public class Bicycle extends Implement {
  public int seatNumber;

  public Bicycle(int seatNumber, String name, boolean hasMovingParts, String constructedFrom) {
    this.seatNumber = seatNumber;
    this.name = name;
    this.hasMovingParts = hasMovingParts;
    this.constructedFrom = constructedFrom;
  }

  @Override
  public String toString() {
    return String.format("*Vehicle Statistics* Seats: %d, Name:" +
      " %s, Contains Moving Parts: %b, Materials: %s",
      seatNumber, name, hasMovingParts, constructedFrom);
  }
}

1 个答案:

答案 0 :(得分:0)

更改主方法以创建自行车数组,然后按索引添加它们:

public static void main(String[] args) {

    Bicycle[] bicycles = new Bicycle[2];
    bicycles[0] = new Bicycle(1, "Haro BMX", true, "Handlebars, Tyres, Frame");
    bicycles[1] = new Bicycle(1, "Orah XMB", true, "Handlebars, Tyres, Frame");

    for (Bicycle bicycle : bicycles){
        System.out.println(bicycle);
    }
}