У меня есть некоторые final static Road
«s заявил так:Как получить имя поля переменной?
public static final Road street = new Road().setWidth(20).setRoadColour(0xAAAAAA).setRoadLengths(500, 100).setDiversity(0);
public static final Road junction = new Road().setWidth(60).setRoadColour(0x999999).setCustomGenerator(new JunctionGenerator());
public static final Road normalRoad = new Road().setWidth(30).setRoadColour(0x999999).setRoadLengths(1000, 2000).setDiversity(2).setChanceForTurn(0).setRoadChance(street, 1);
public static final Road motorway = new Road().setWidth(60).setRoadColour(0x0000FF).setRoadLengths(1000, 100000).setDiversity(1).setChanceForTurn(0).setRoadChance(normalRoad, 1);
И я хочу, чтобы иметь возможность получать имя пути по его экземпляр, EG-
Я думал, метод будет что-то в этом направлении
Road.street.getClass().fieldName();
И это вернет имя поля, в котором я его объявил.
Использовать перечисление или наследование – siledh
Вы считаете, что дороги будут работать лучше, чем Enums? Я дам этот выстрел. Сначала это не происходило. –
Если у вас есть только четыре типа с очень похожими свойствами, просто различие по числам, то да – siledh