AprendizC Posted March 21, 2014 Report Share Posted March 21, 2014 O que são getters e setters? Alguma explicação. Link to comment Share on other sites More sharing options...
bioshock Posted March 21, 2014 Report Share Posted March 21, 2014 Basicamente são inputs e outputs. 😁 Agora em português, são conceitos de programação para introdução de dados e recepção dos mesmos. São conceitos utilizados essencialmente em classes, nas respectivas funções. public String getName() { return this.name; } A palavra get, que em português significa obter dá uma melhor percepção ao programador do que o que realmente a função faz. Repara, nessa função, está bem explícito que se quer obter o Nome da pessoa. Para calculares as diferenças, repara na mesma função sem o get. public String Name() { return this.name; } Se chamares esta função em algum lado, não terás a mínima da percepção do que ela faz..ou talvez terás hoje, mas daqui a 1 mês não fazes ideia. A função não te diz se retornas algum valor (por acaso diz por causa do tipo de dados - ver mais à frente); se introduzes algum valor; outra coisa qualquer. Essencialmente um get irá sempre retornar algum valor, ao contrário do set que poderá ou não retornar algum valor. public void setName(String new_name) { this.name = new_name; } Pontualmente poderás querer, aquando a inserção, retornar de imediato um valor. Continuará a função a ser um set e não um get, por prioridades. public int setName(String new_name) { this.name = new_name; return this.name.length(); } Deves ter em atenção ao tipo de dados de cada função. Nesta última função como retornei um inteiro a mesma é do tipo int. Se apenas te interessa inserir conteúdo e não retornar qualquer valor o tipo de dados deve ser do tipo void. Link to comment Share on other sites More sharing options...
AprendizC Posted March 21, 2014 Author Report Share Posted March 21, 2014 E applets e serveletes? 😕 Ja agora a primeira explicação esta muito boa para compreender obrigado 🙂 . Link to comment Share on other sites More sharing options...
bioshock Posted March 21, 2014 Report Share Posted March 21, 2014 Estás-te a dar ao trabalho de ao menos procurar no google? Achei por bem te explicar os gets e sets porque as pessoas tendem a fazer das classes um bicho de sete cabeças.. http://pt.wikipedia.org/wiki/Applet http://pt.wikipedia.org/wiki/Servlet Link to comment Share on other sites More sharing options...
Ernest Posted March 22, 2014 Report Share Posted March 22, 2014 Bom dia, Os getters e setters são métodos de acesso públicos aos dados que são encapsulados nos objetos. O encapsulamento de dados não permite aceder directements em leitura ou escritura aos dados privados . Exige de passar por métodos de acesso, geeters e setters públicos. geeters e setters foi standardisado na especificação para a arquitetura de componentes JavaBeans pela SUN Microsystems desde 1996 data em que eu comecei a programar em JAVA. Este documento oficial da SUN Microsystems descreve os Beans... PDF explica tudo o que você deve saber sobre acesso as propriedades dos objetos, veja ao capítulo : 8.3 Design Patterns for Properties http://objetjava.online.fr/jlvre2/ Exemplo: package pack; public class MeuJavaBean { /** * encapsulamento de dados privados */ private int var1=2; private String nome; private boolean verdade; /** * * Os métodos de acesso a dados privados */ public int getVar1() { return var1; } public void setVar1(int var1) { this.var1 = var1; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public boolean isVerdade() { return verdade; } public void setVerdade(boolean verdade) { this.verdade = verdade; } } Programação exige muito rigor...não podemos confundir os conceitos. Mesmo à custa de não ser-mos compreendidos. Em Java não há nenhuma função, mas sim os métodos de instância e métodos de classe (static). Java é uma linguagem orientada a objetos e baseada em classes e não uma linguagem procedural ou funcional. Por autro lado não faz parte do padrão getters et setters do "Design Patterns for Properties" : public int setName(String new_name) Cordialmente Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now