Como vai galera,alguém poderia me falar um pouco sobre encapsulamento(public,private,protected e final),sobre encapsulamento eu sei sobre esses,gostaria saber se tem mais algum além desses e alguma outra coisa sobre encapsulamento.E também um pouco sobre construtores por favor. Só uma explicação rápida para que serve e com um exemplo fácil.
public, private, protected e final são modificadores, os 3 primeiros são modificadores de acesso. O final tem outro objetivo.
Isso não é encapsulamento, apesar de poderem ser usados para aplicar o conceito de encapsulamento.
tem um post do ViniGodoy bem explicativo sobre encapsulamento aqui.
Leia devagar, estude os exemplos.
Agora se sua dúvida realmente for sobre modificadores, explique mais a sua dúvida, para sabermos o que você quer.
J
JOSE_RONALDO_LELES_J
Olá André! Encapsulamento é um dos pilares da OO. As boas práticas de programação pregam o uso de atributos com nível de acesso como private (privado) e os métodos como public (público). Se os atributos são declarados como private então como manipular os valores desses atributos? Ai entre o uso dos modificadores de acessos getters e setters que devem ser usados com bastante cautela e atenção para não cair no chamado uso indiscriminado dos getters e setters. No site da Caelum você encontrará um artigo do autor Paulo Silveira sobre o assunto. Como solicitou alguma outra coisa sobre encapsulamento acho que isso pode ajudá-lo. Agora vamos entender o que são construtores: São blocos de instrução declarado com o mesmo nome da classe aonde esta implementado. Muitos o chamam de método especial, o que definitivamente não é pois um construtor tem algumas características que o diferem de um método: Não apresenta nenhum tipo de retorno e só pode ser chamado (ativado) no momento da instânciação da sua classe. Ele basicamente funciona como uma rotina de inicialização onde determinamos alguns valores padrões para a criação de um objeto.
Ex:
publicclassCliente{publicCliente(){System.out.println("Cliente criado com sucesso!");}publicstaticvoidmain(String[]args){//Instanciação da classe Cliente//Nesse momento será apresentada a mensagem que declaramos no construtor da classeClientecliente1=newCliente();...}}
Quando não declaramos um construtor para a classe o Java se encarrega de declarar um construtor default para nós. Agora quando esse construtor é declarado pelo programador esse construtor default deixa de existir.
Bom, é basicamente isso aí! Até mais!!!
guilherme.dio
Eu te aconselho a pegar esta apostila grátis da CAELUM: FJ-11
Esta apostila é muito boa, explica todos os conceitos do java puro.
S
Sem_Nome
digaoneves:
public, private, protected e final são modificadores, os 3 primeiros são modificadores de acesso. O final tem outro objetivo.
Isso não é encapsulamento, apesar de poderem ser usados para aplicar o conceito de encapsulamento.
tem um post do ViniGodoy bem explicativo sobre encapsulamento aqui.
Leia devagar, estude os exemplos.
Agora se sua dúvida realmente for sobre modificadores, explique mais a sua dúvida, para sabermos o que você quer.
Não esqueça que também existe o default que é quando você não declara o tipo. O default só é visivel para as classes do mesmo pacote.
Rodrigo_Sasaki
Eu não me esqueci. Acontece que o default não é um modificador.
Ele é um nível de acesso, que é o padrão, porém não um modificador.
Os 4 níveis de acesso são, como você disse: private, default, protected e public.
Porém existem só 3 modificadores de acesso: private, protected e public.
S
Sem_Nome
Eu não me esqueci. Acontece que o default não é um modificador.
Ele é um nível de acesso, que é o padrão, porém não um modificador.
Os 4 níveis de acesso são, como você disse: private, default, protected e public.
Porém existem só 3 modificadores de acesso: private, protected e public.
Jamais disse que ele erá um modificador só quis dizer que você não colocou ele na sua lista (embora, como você disse, ele não é um modificador).
Rodrigo_Sasaki
Ah sim Só é importante pro autor do tópico (caso ele venha a ler isso) saber com certeza que há uma diferença.
S
Sem_Nome
Ah sim Só é importante pro autor do tópico (caso ele venha a ler isso) saber com certeza que há uma diferença. :)
Aproveitando este topico, para que serve a palavra reservada default?
Rodrigo_Sasaki
hehe, eu acho que você sabe :) mas deve ter fugido por causa do assunto.