2

1 つの属性に 2 つの異なる属性を追加できるかどうか疑問に思っていました。たとえば、次の 2 つの属性があります。

private var modelYear:int as ModelYear
private var manufacturedCd:String as ManufacturerCd

これらの属性の両方を「personalVehicle」という 1 つの属性に入れたいと思います。したがって、これらの値を別のクラスの personalVehicle から派生させることができます。

私の質問を明確にするために:

  1. personalVehicle という 1 つの属性に 2 つの属性を追加できますか?
  2. もしそうなら、別のクラスの personalVehicle 属性から modelYear だけを取得するにはどうすればよいですか?

ありがとう

4

1 に答える 1

6

ここでは、Guidewire のアプリの 1 つで Gosu を使用していると仮定しています (したがって、guidewire タグです)。

これらのアプリでは、基本的に 2 つの値のコンテナーであるgw.util.Pairクラスにアクセスできます。

var personalVehicle = new Pair<Integer, String>(2010, "something")

First および Second プロパティを使用して、保存された値にアクセスできます。

print(personalVehicle.First) //prints 2010
print(personalVehicle.Second) //prints "something"

First と Second は、これらのプロパティ内に何が格納されているかについて何も伝えないことに注意してください。あなたの場合 (特に、personalVehicle を他のクラスに渡したい場合)、modelYear と ManufacturerCd を格納する別のクラスを定義することをお勧めします。

class PersonalVehicle {
    private var modelYear : int as ModelYear
    private var manufacturedCd : String as ManufacturerCd
}

このようなクラスを使用すると、コードが読みやすくなります。

于 2015-04-17T14:17:05.123 に答える