1

私はJavaにかなり慣れていないので、ここでのベストプラクティスについて疑問に思っていました.

ジェネリック クラス (例: ) と、いくつかのプロパティを共有するいくつCarかの継承クラス ( Honda、 ) があるとします。Subaru

public abstract class Car {
  public static short id;
}

public class Honda extends Car {
  public static final short id = 1;
}

public class Subaru extends Car {
  public static final short id = 2;
}

これは DRY 原則を破っていませんか? では、アノテーションを使用するのはどうでしょうか。

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface Id {
  public short value();
}

public abstract class Car {
}

@Id(1)
public class Honda extends Car {
}

@Id(2)
public class Subaru extends Car {
}
4

1 に答える 1