У меня есть программа, в которой классная машина реализует два интерфейса: арендуемый и покупаемый.
Мой класс выглядит примерно так:
Class Car implements IRentable, IBuyable{
private String name;
private float rentValue;
private float sellValue;
//rentable constructor
public Car(String name, float rentValue){
...
}
//buyable constructor
public Car(String name, float buyValue){
...
}
...
}
И создание экземпляра объекта будет выглядеть примерно так например:
IRentable c1= new Car("name",700f);
IBuyable c2= New Car ("name",35_000f);
Мне было интересно, есть ли способ вызвать конкретный c конструктор, основанный на типе объекта * stati c. Например, если у меня есть тип IRentable:
IRentable c1= new Car("name",700f);
, вызовите рентабельный конструктор. Если у меня есть тип IBuyable:
IBuyable c2= New Car ("name",35_000f);
, вызовите конструктор с возможностью покупки.