É verdade que não vai mais ser acrescentado à linguagem Java, no novo JDK7, as sintaxe de propriedades, no estilo do C#?
Eu sei que este não é um recurso fundamental e podemos viver muito bem sem ele. Porém, acho mais confortável utilizar uma propriedade através do ponto do que usar gets e sets.
Talvez eu me sinta assim porque, antes de conhecer o Java, eu estudei durante um bom tempo o C#. De fato, internamente, o compilador do C# converte uma definição de propriedade em métodos gets e sets:
[code]//Defição de propriedade em C#:
public int valor
{
set
{
<<código para efetuar atribuição>>
}
get
{
<<código para efetuar leitura>>
}
}[/code]
Internamente, o compilador cria um par de métodos:
int get_valor()
{
<<código de leitura>>
}
void set_valor(int valor)
{
<<código de escrita ou atribuição>>
}
Porque o Java não pode implementar algo assim? Seria talvez pela comunidade Java, uma vez que muitos desenvolvedores estão já muito acostumados a utilizar métodos get e set? Ou seria talvez por causa da biblioteca de classes do JDK que é toda baseada em gets e sets?
De qualquer forma, com ou sem properties, o Java é ótimo.
Muita coisa feita em C# foi baseado no Java, mas é notável que o C# melhorou muita coisa e algumas até foram acrescentadas no Java (como os wrappers).
Não sei porque Java não acrescenta essas funcionalidades, seria ótimo. Talvez aquele papo né, eu inventei e será assim!
Mas que sobrecarga de operadores, algo que nem foi C# que inventou, faz falta em algumas situações no Java, isso faz! Linq também e as próprias propriedades.
Sério? Não sabia que java teria properties. Para mim seria ótimo.
Properties facilita o desenvolvimento e dá muita flexibilidade e faz muita falta sim. Acho que existe um preconceito só porque properties surgiu no ObjectPascal.