如何为类型数组编写'get / set方法'?

时间:2017-08-18 02:39:59

标签: java class methods get set

我在为Autor类型的数组autores []实现get / set方法时遇到了麻烦,它是来自同一个包的另一个类。它与该类的其他变量的工作方式不同:(

class Autor
{
private String nombre;
private String adscripcion;

Autor(String nombre,String adscripcion)
{
    this.nombre=nombre;
    this.adscripcion=adscripcion;
}
Autor(){}

String getNombre()
{
    return nombre;
}
String getAdscripcion()
{
    return adscripcion;
}

void setNombre(String nombre)
{
    this.nombre=nombre;
}

void setAdscripcion(String adscripcion)
{
    this.adscripcion=adscripcion;
}

}     公共课Articulo {

private String nombreArt;
private Autor autores[]=new Autor[2];
private String fechaPublicacion;

Articulo(String nombreArt,String fechaPublicacion, String nombre,String adscripcion)
{
    this.nombreArt=nombreArt;
    this.fechaPublicacion=fechaPublicacion;
    autores[0]=new Autor(nombre,adscripcion);
    autores[1]=new Autor(nombre,adscripcion);

}


String getnombreArt()
{
    return nombreArt;
}
String getfechaPublicacion()
{
    return fechaPublicacion;
}
Autor getautores()
{
    return autores[];//this part of the code it's not correct.
}


}

3 个答案:

答案 0 :(得分:2)

getter应该看起来像

public Autor[] getAutores()
{
    return autores;
}

和setter就像

public void setAutores(Autor[] autores) {
    this.autores = autores;
}

如果您使用像Eclipse这样的IDE,那么是用于生成setter / getter和其他东西的菜单选项

答案 1 :(得分:1)

首先,autores可以使用您当前的语法声明 - 但它是使C和C ++开发人员更熟悉Java的保留。我个人觉得更容易阅读变量名左侧的类型。像,

private Autor[] autores = new Autor[2];

对于数组类型的getter和setter,[]必须作为类型的一部分编写。像,

public Autor[] getAutores() {
    return autores;
}

public void setAutores(Autor[] autores) {
    this.autores = autores;
}

答案 2 :(得分:1)

这部分没有任何意义;

return autores[];

autores是变量名称,它是Autor个对象的数组。所以你的吸气剂应该是那样的,

public Autor[] getAutores() {
    return autores;
}

在这里,Autor[]是返回类型,它将返回autores变量的值。