Я хочу создать экземпляр моего объекта, автомобиля. У меня проблема в том, что я могу создать экземпляр объекта car, например, Car car1 = new car ("Audi", "A4", "BF10YMR"); однако я хочу создавать автомобильные объекты через вспомогательный класс. Как мне вызвать этот вспомогательный класс в main, чтобы он относился к типу car, а не к типу carHelper?
Автомобильный объект требует создания случайного регистрационного номера, который создается в классе carHelper. Объект возвращается.
public class Car implements Comparable<Car>
{
public class Car
{
private String make;
private String model;
private String registration;
public Car(String make, String model, String reg)
{
this.make= make;
this.model= model;
registration = reg;
}
}
public class carHelper
{
public car genCar()
{
String reg = //some method to generate random registration.
String Make = //some method to randomly pick make from a list
String model = //some method to randomly pick model from a list
return new Car(make,model,registration);
}
}
public class Garage
{
public static void main (String args[])
{
Garage MyGarage = new Garage();
Car car1 = new Car("Audi","A4","BF10YMR") //works, but doesn't use helper
Car car2 = carHelper.genCar(); // something like this?
carHelper c = new carHelper(); // thought something like this but
System.out.println(c.genCar()); // creates object of type carHelper
// not car.
MyGarage.add(car1);
MyGarage.add(car2); // gives me carHelper cannot be converted to Car
}
}
public class GarageOp implements CarList
{
public GarageOp()
{
list = new ArrayList<Car>();
}
public boolean add(Car car)
{
if (list.contains(car) == false)
{
list.add(car);
return true;
}
}
}
Ожидаемый результат - создать объект car с помощью вспомогательного класса и добавить его в ArrayList.