Instancia global

Olá eu preciso criar uma instancia de uma classe que possa ser vista por outras duas classes, como posso fazer isso em Java?
Vou ilustrar o que estou fazendo, eu tenho a classe Livros que armazena um Array de livros e eu preciso que esses livros sejam vistos pelas Classes: Administrador e Usuário, mas os mesmos livros, como posso fazer isso?

Obrigado ai gente!

Eu sei que isso não é o mérito da questão, mas não seria uma classe Biblioteca que possui um array de livos?

Mas para resolver seu problema, vc deve criar um atributo List<Livro> estático:

[code]
public class Livro {

private String isbn;
private String autor;

public String getAutor() {
    return autor;
}

public void setAutor(String autor) {
    this.autor = autor;
}

public String getIsbn() {
    return isbn;
}

public void setIsbn(String isbn) {
    this.isbn = isbn;
}

}[/code]

[code]
import java.util.LinkedList;
import java.util.List;

public class Biblioteca {

private static List&lt;Livro&gt; livros = new LinkedList&lt;Livro&gt;();

public List&lt;Livro&gt; getLivros() {
    return livros;
}

public void setLivros(List&lt;Livro&gt; livros) {
    Biblioteca.livros = livros;
}

public void addLivro(Livro livro) {
    Biblioteca.livros.add(livro);
}

}[/code]

espero ter ajudado

atributos com o modificador static são inicializados junto com a máquina virtual e assim permanecem até que a máquina virtual seja finalizada.
Ou seja, o atributo static não tem seu valor reinicializado cada vez que é criada uma nova instância. Isso quer dizer que o atributo pertence à classe, e não à instância.

Atributo estático:
int i = Integer.MAX_VALUE;

Atributo não estático:
Classe suaInstanciaDaClasse = new Classe();
Object o = suaInstanciaDaClasse.seuAtributo;

Vale lembrar que não é aconselhável usar atributos públicos, mas somente privados (private) e alterá-los somente através de métodos.

Espero ter ajudado

Realmente uma boa solução, já que a Biblioteca e, consequentemente, os Livros sempre serão os mesmos.