Programação orientada a objetos e o Java (parte 5)
No artigo anterior vimos os métodos ou funções-membro e a possibilidade de um método devolver valor de retorno. Agora estudaremos um termo muito importante da programação orientada a objetos, o encapsulamento ou acessibilidade e entenderemos o porque sua utilização é tão importante. Vamos compreender o que são construtores e como funciona dentro do Java.
[ Hits: 35.415 ]
Por: Ygor Thomaz em 12/04/2004 | Blog: http://www.ygorthomaz.net/
| Tipo | Valor default | ||
| byte, short, int, long, c | 0 | ||
| float, double | 0 | ||
| Boolean | False | Referências para objetos | Null
Ele será criado apenas no momento da compilação e apenas nos casos que não existam construtor declarado. Podemos fazer:
public class RadioSemConstrutor {
boolean estado; public boolean desligar() { return estado=false; } public boolean ligar() { return estado=true; } } Para provar, basta compilarmos este código e entrar com o comando no diretório do arquivo RadioSemConstrutor.java: $ javap RadioSemConstrutor Este comando retornaria na tela: Compiled from RadioSemConstrutor.java
public class RadioSemConstrutor extends java.lang.Object {
boolean estado;
public RadioSemConstrutor();
public boolean desligar();
public boolean ligar();
}
Podemos perceber a presença de um método público sem parâmetro, denominado RadioSemConstrutor. Acabamos de encontrar o construtor default usando o disassembler bytecodes. Vamos utilizar a classe String do pacote java.lang que contem 11 tipos diferentes de construtores. Vamos utilizar um que cria uma string vazia e outro construtor que aceita uma string literal ou outro objeto String. Neste exemplo podemos notar a criação de vários objetos String diferentes, utilizando os construtores citados:
// UseStrings.java
public class UseStrings { public static void main(String args[]) { String s0 = null; String s1 = new String(); String s2 = new String("Alo pessoal!"); System.out.println("Testando contrutores Strings:"); System.out.println("s0 = " + s0); System.out.println("s1 = " + s1); System.out.println("s2 = " + s2); } } Percebemos que uma classe pode ter vários tipos de construtores, todos com o mesmo nome obrigatório. Se diferem apenas pela lista de argumentos ou sobrecarga de construtor. Páginas do artigo
1. Objetivo do artigo2. Encapsulamento 3. Construtores 4. Terminando e referências Outros artigos deste autor
Programação orientada a objetos e o Java (parte 1) Manipulando erros com try catch finally Dominando o iptables (parte 1) Instalando o QMail e ferrramentas de administração Dominando o Iptables (parte 2) Leitura recomendada
Montando um ambiente utilizando Tomcat + Java + MySQL (Debian) Utilizando tratamento de exceções em java Leitura e escrita de arquivos utilizando Java Android e Eclipse no Ubuntu 11.10 - Problemas? Eis a solução Programação orientada a objetos e o Java (parte 3) Comentários
[1] Comentário enviado por fabio em 12/04/2004 - 20:17h
Muito bom o artigo! Estou aprendendo Java e essa séria de artigos tem sido de grande utilidade. []'s
[2] Comentário enviado por gustavo_marcon em 12/04/2004 - 20:21h
Muito massa essa tua série de artigos, sugiro que continue com ela e o que vc acha de falar em outros artigos sobre interfaces gráficas? Teus artigos estão sendo muito utéis p/ mim que estou aprendendo Java agora. Só tenho uma perguntinha, vi q vc usou o comando javap, eu não o conhecia vc poderia me dizer p/ que ele serve?
[3] Comentário enviado por ygorth em 13/04/2004 - 14:54h
Ola, pode ficar tranquilo gustavo eu não cosutumo deixar um desafio pela metade. Por enquanto prometo apenas terminar a serie e POO e Java depois veremos, já tinha isso em mente. (: O javap nada mais é do que um disassembler em bytecodes e por essa caracteristicas pode ter diversos usos como o que eu fiz no artigo. Agradeço a todos que tem comentado sobre a serie. Abracos!
[4] Comentário enviado por ygorth em 13/04/2004 - 14:57h
Ola, pode ficar tranquilo gustavo eu não cosutumo deixar um desafio pela metade. Por enquanto prometo apenas terminar a serie e POO e Java depois veremos, já tinha isso em mente. (: O javap nada mais é do que um disassembler em bytecodes e por essa caracteristicas pode ter diversos usos como o que eu fiz no artigo. Agradeço a todos que tem comentado sobre a serie. Abracos!
[5] Comentário enviado por ygorth em 13/04/2004 - 15:01h
Ola, pode ficar tranquilo gustavo eu não cosutumo deixar um desafio pela metade. Por enquanto prometo apenas terminar a serie e POO e Java depois veremos, já tinha isso em mente. (: O javap nada mais é do que um disassembler em bytecodes e por essa caracteristicas pode ter diversos usos como o que eu fiz no artigo. Agradeço a todos que tem comentado sobre a serie. Abracos!
[6] Comentário enviado por ygorth em 13/04/2004 - 15:30h
Desculpem os comentarios repetidos ! A conexão da faculdade deixa a desejar (: PatrocínioSite hospedado pelo provedor RedeHost.
DestaquesArtigosCirurgia para acelerar o openSUSE em HD externo via USB Void Server como Domain Control Modo Simples de Baixar e Usar o bash-completion Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante Dicas[Resolvido] VirtualBox can't enable the AMD-V extension Como verificar a saúde dos discos no Linux Como instalar , particionar, formatar e montar um HD adicional no Linux? Como automatizar sua instalação do Ubuntu para desenvolvimento de software. TópicosFiz uma pergunta no fórum mas não consigo localizar (20) Quais os códigos mais dificeis que vcs sabem fazer? (8) Pfsense inacessivel após um periodo de tempo (1) Não consigo instalar distro antiga no virtualbox nem direto no hd (9) Top 10 do mês
Scripts |