Diretrizes: Identificando Classes Java
Tópicos
Introdução
Em um aplicativo Java, as classes Java são os blocos de construção fundamentais
de todas as construções de implementação, como JavaBeans, EJBs, Servlets e
Applets. Toda a lógica de implementação é fornecida em classes Java.
Classes são gabaritos a partir dos quais os objetos são criados. Elas encapsulam
estruturas de dados com os algoritmos para manipulação de dados. Uma classe
é geralmente um depósito de informações do provedor para os objetos que ela define.
Essas diretrizes não explicam o conceito de classes ou de design orientado a
objetos em detalhes. A discussão a seguir supõem que o leitor
esteja familiarizado com o design orientado a objetos. Para obter uma discussão detalhada sobre
o design orientado a objetos, consulte a seção de referência.
Recursos da Classe Java
As classes Java incluem:
- Funções-membro
- Dados do membro
- Funções estáticas
- Dados estáticos
- Herança
- Implementação de interfaces
As funções-membro implementam algum comportamento relacionado a objetos individuais. Elas são executadas no contexto de um objeto individual.
Os dados do membro definem as estruturas de dados dos objetos, na forma de um conjunto de declarações variáveis. A maneira ideal de acessá-los é apenas
por meio das funções-membro.
As funções estáticas são métodos executados fora do contexto dos objetos individuais que elas definem.
Os dados estáticos pertencem à classe que os define, em vez de aos objetos individuais que eles definem. Há exatamente uma instância de dados estáticos em um
aplicativo em execução. Os dados estáticos são normalmente acessados apenas por meio de funções estáticas, embora alguns designs chamem as instâncias acessando diretamente
os dados estáticos.
As classes Java podem estar relacionadas por meio de herança, expressas utilizando a palavra-chave
Java "extends". A herança fornece uma técnica sofisticada
para a reutilização do código, permitindo aos designers extraírem estruturas de dados e
comportamento comuns nas superclasses, deixando o comportamento específico em subclasses.
Uma interface declara um conjunto de métodos cuja implementação é fornecida
em classes. Uma classe pode implementar várias interfaces e as interfaces podem
ser implementadas por várias classes. A separação da interface da implementação
aumenta o desacoplamento de classes. O acesso de objetos por meio de interfaces
fornece uma maneira clara de utilizar o polimorfismo.
Identificando Classes Java
Em um aplicativo J2EE, as classes Java podem ser identificadas para
suportar o design de elementos J2EE. Para obter informações adicionais sobre a identificação
desses elementos, consulte as diretrizes a seguir:
As diretrizes para identificação de classes Java adicionais não são diferentes
das diretrizes para identificação de outros tipos de classes. Para obter
informações adicionais, consulte Atividade: Identificar
Elementos de Design.
Modelando Classes Java
As classes Java são modeladas como classes UML.
No diagrama a seguir, mostramos a representação em UML de uma classe Java
e o código fonte Java correspondente.
|
class MyClass {
private int myMemberData;
private String myOtherMemberData;
private static int myStaticData;
public int getMyMemberData() {
return this.myOtherMemberData;
}
public static int getMyStaticData() {
return MyClass.myStaticData;
}
}
|
|