Pessoal, estou com a seguinte dúvida (a mensagem é grande mais tenho certeza que o problema é relativamente fácil) :
Imaginando que tenho a seguinte classe “Arquivo”
public abstract class Arquivo {
private String nomeArquivo;
private String dataCriacao;
public String getNomeArquivo() {
return nomeArquivo;
}
public String getDataCriacao() {
return dataCriacao;
}
public void setNomeArquivo(String nome){
nomeArquivo = nome;
}
public void setDataCriacao(String data) {
dataCriacao = data;
}
}
… e uma classe “Documento” que extende “Arquivo”
public class Documento extends Arquivo{
private int numeroDoc;
private int notaDoc;
public int getNumeroDoc() {
return numeroDoc;
}
public void setNumeroDoc(int numero){
numeroDoc = numero;
}
public int getNotaDoc() {
return notaDoc;
}
public void setNotaDoc(int nota){
notaDoc = nota;
}
}
E agora, em outra classe, eu preciso usar a classe “Documento” como uma variável de instância :
class Livraria {
private String nomeLivraria;
private Documento doc[];
public Livraria() {
doc = new Documento(2);
}
.
.
.
}
Minha dúvida é a seguinte : como declarei na classe “Livraria” uma variável private do tipo “Documento” , eu vou ter que definir novamente todos os métodos de acesso aos membros privados da classe “Documento” dentro da classe “Livraria” ?
Por exemplo, se em algum ponto do meu programa eu fizer isso :
Livraria livraria = new Livraria();
livraria. ???? <---- Quero alterar os dados da varíavel "doc" que está dentro de Livraria.
Como faço isso visto que "doc" é do tipo private???
Devo criar dentro da classe Livraria métodos GET/SET para acessar os métodos GET/SET da classe Documento? E quanto aos métodos herdados da classe Arquivo?? Devo criar novamente esses métodos também na classe Livraria? Existe algum jeito menos trabalhoso de fazer isso sem que eu tenha que declarar a varíavel “doc” como pública?
Espero que alguem tenha tido paciencia de ler essa mensagem inteira…
Muito obrigado!