在接口内声明数组对象

时间:2013-03-09 12:58:22

标签: java

我有这样的场景,是不是很好的实现?

public interface Vehicle {
// is it possible to declare array in interface?

//so it is possible and no compilation errors

Vehicle[] vehicles1 = new Vehicle[10];


}

3 个答案:

答案 0 :(得分:0)

技术上可以声明这样的字段。它将是publicstaticfinal(这基本上使它成为常量),即使您没有明确说明它。

这是否是一种好的做法,实际上取决于你将用它做什么。但在大多数情况下都不鼓励。

答案 1 :(得分:0)

你有可能,但属性是公开的,这不是一个好的风格。属性应该是私有的,并由gettersetter方法访问。

答案 2 :(得分:0)

不,您只能在接口中声明public个方法和static final字段(常量)。

这样的事情是可能的,但不是你想要的:

public interface Vehicle {
    public static final Vehicle[] vehicles1 = new Vehicle[10];
}

我建议使用通常的getset模式:

public interface Vehicle {
    void setVehicles1(Vehicle[] vehicles);
    Vehicle[] getVehicles1();
}