Classes Internas em Java
Publicado por Fagner Amaral de Souza Candido (última atualização em 09/06/2011)
[ Hits: 6.326 ]
Homepage: https://github.com/fagnercandido
Olá PessoALL,
Novamente pela minha jornada pela certificação Java, me deparei com as classes internas. As classes internas são tratadas como membros da classe mais externa. Isso significa que elas podem receber os modificadores de acesso e os outros modificadores. Por ser membro, tem acesso a outros membros da classe mais externa.
As classes internas sempre geram polêmicas em seus uso. Ressalto que as mesmas tem sua utilidade, mas claro, em excesso pode causar um código difícil de manter e evoluir.
Qualquer dúvida, sugestão ou crítica sempre serão bem-vindos,
Abraços e Até a próxima
fagner7777777@gmail.com
f_Candido
@fagner_candido
/*
Sintese :
Objetivo : Demonstrar o uso de Classes Internas
Entrada : n/d
Saída : n/d
Autor : Fagner Candido
f_Candido
@fagner_candido
fagner7777777@gmail.com
*/
class ExternalClass{
private String name;
public ExternalClass(){
name = "Ronaldo";
}
public String getName(){
return this.name;
}
// Declaracao da classe interna
// E um membro da classe ExternalClass
class InnerClass{
public void printArgs(){
// Sendo membro, tem acesso aos membros da classe externa
System.out.println("Argumento da Classe Externa : "+name);
// Acesso atraves da ExternalClass
System.out.println("Argumento da Classe Externa[Com Encapsulamento] : "+ExternalClass.this.getName());
// Print da instancia
// Aparece desta forma, por conta da sobrescricao de toString
System.out.println("Classe Interna : "+this);
}
// Sobrescrevendo toString
public String toString(){
return "InnerClass";
}
}
}
class Main{
public static void main(String[] args){
// Criando um instancia de InnerClass, uma sintaxe diferente
ExternalClass.InnerClass objInt = new ExternalClass().new InnerClass();
objInt.printArgs();
}
}
Pilha Dinâmica Orientada a Objetos com Java
Instalando java no ubuntu, fácil e rápido...
Ordenar um lista estática seqüencial de complexidade média (método da seleção)
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
How can I remove duplicate MSG files from my folders effectively? (0)
O programa assinador digital (0)
dpkg: erro: gatilho de arquivo duplicado chamado pelo arquivo de nome (6)









