Propriedades read-only de um objeto

Alguem sabe como fazer para acrescentar a propriedade read-only em um objeto. Criei um objeto java e em certos momentos este objeto deverá estar não alterável.

Em certos momentos, você quer dizer, dependendo de algumas pré-condições?

Se for para criar uma variável ou atributo imutável, apenas marque-o como final. Mas essa propriedade não pode ser alteradao em runtime.

Vc está falando em objeto ou atributo?
Se for atributo acredito que não tenha nada que impessa, a não ser alguma validação interna.
Quais as reais necessidades disto?
Dependendo da restrição pode-se fazer de algumas formas, usando protected ou o modificar padrão por exemplo.

Você pode fazer o seguinte também:
Criar uma variavel booleana (com o nome de readyOnly, por exemplo) e fazer a verificação no “set” do seu attributo.

Criei uma classe java que corresponde a um objeto gráfico, como um rotulo numa interface. Este objeto pode ser colocado numa interface, mas dependendo da interface ele não poderá mais ser apagado desta pelo usuário. Então preciso setar este o objeto para read-only. Neste caso devo implementar a funcionalidade read only. Pois se o usuário tentar apagar ele não conseguirá.

Criei objetos que podem usar a funcionalidade drag and drop, mas dependendo de algumas condições eles não podem ser manipulados mais.

Isso é um controle que você vai ter que criar, amigo.

Ok. Pensei que deveria anexar esta funcionalidade ao meu objeto. E ele apareceria na interface só na cor cinza por exemplo indicando que ele é somente leitura.

public class SeuObjeto { public boolean mutavel = true; }

Isso é difícil?

Isso é muito fácil. mas não basta mudar a variável bolena para false. Vou ter que alterar de alguma forma o objeto propriamente dito para não permitir edição.

Eureka!

Desculp-me mas o que quer dizer coma palavra Eureka?

Valeu.

Mas também descobri que vou ter que desabilitar o evento KeyPressed quando a tecla for .

Você está trabalhando com Swing?
Faça uns esquemas de model, onde ele tem os objetos a serem representados graficamentes e um objeto (componente) visual pegue esse model e mostre como deve.

Sim é swing.

Amigo, será que o setEnabled(false) não é o que você procura para esse caso?