Могу ли я добавить более одного поля к одному атрибуту
Мне было интересно, можно ли добавить 2 разных атрибута к одному атрибуту. Например, у меня есть два атрибута:
private var modelYear:int as ModelYear
private var manufacturedCd:String as ManufacturerCd
Я хотел бы поместить оба этих атрибута в один атрибут под названием "personalVehicle". Тогда я могу получить эти значения из personalVehicle в другом классе.
Чтобы уточнить мой вопрос:
- Могу ли я добавить два атрибута в один атрибут с именем personalVehicle?
- Если это так, как я могу получить только modelYear из атрибута personalVehicle в другом классе?
Спасибо
1 ответ
Я предполагаю, что вы используете Gosu в одном из приложений Guidewire (отсюда и тег guidewire).
В этих приложениях у вас есть доступ к классу gw.util.Pair, который в основном является контейнером для двух значений.
var personalVehicle = new Pair<Integer, String>(2010, "something")
Вы можете получить доступ к сохраненным значениям через Первое и Второе свойства.
print(personalVehicle.First) //prints 2010
print(personalVehicle.Second) //prints "something"
Обратите внимание, что Первый и Второй ничего не говорят вам о том, что хранится в этих свойствах. В вашем случае (особенно если вы хотите передать свой personalVehicle другому классу), может быть лучше определить отдельные классы хранения модели Year и ManufacturerCd.
class PersonalVehicle {
private var modelYear : int as ModelYear
private var manufacturedCd : String as ManufacturerCd
}
Использование такого класса сделает ваш код более читабельным.