Olá Pessoal, tudo bom?
O post de hoje é o primeiro de uma série que servirá para falarmos sobre orientação a objeto e java básico, assim será voltada para iniciantes no Java. O post de hoje irá falar sobre a estrutura de uma classe Java. Confira na continuação:
Tipos básicos no Java
Começo definindo o que é Abstração:
Forma de retirar as características relevantes de algo do mundo real para incluir em um projeto
A linguagem Java possui alguns tipos básicos de abstrações. Os principais tipos básicos que o Java possui são:
- Classes
- Enums
- Interfaces
- Annotations
Todos esses tipos básicos possuem um propósito dentro da linguagem e podem ser aplicados de diversas formas dentro da linguagem. Nosso foco hoje será sobre a estrutura básica de uma Classe. De acordo com BRUCE((Bruce, Kim B. (2002). Foundations of Object-Oriented Languages: Types and Semantics)) a definição de Classe é:
Are extensible templates for creating objects, providing initial values for instance variables and the bodies for methods. All objects generated from the same classe share de same methods, but contain separate copies of instance variables. New objects can be created from a classe by applying the new operator to the name of the class.
São modelos extensíveis para criar objetos, provendo valores iniciais para instâncias de variáveis e o corpo dos métodos. Todos os objetos gerado pela mesma classe, compartilham dos mesmos métodos, mas contém copias separadas das instâncias das variáveis. Novos objetos podem ser criados a partir da classe aplicando o operador new com o nome da classe.
Estrutura básica de uma Classe Java
Uma classe em Java é uma representação do mundo real com algumas características próprias, chamado de Objeto ou Instância. De acordo com BRUCE((Bruce, Kim B. (2002). Foundations of Object-Oriented Languages: Types and Semantics)) a definição de Objeto é:
Objects encapsulate both state and behavior
Objetos encapsulam estado e comportamento em um único lugar
Para entender, imagine um projeto arquitetural de uma casa, como mostra a Figura 01.
Agora te faço uma pergunta:
Isso é uma casa?
Não é somente um projeto, um papel com determinado formato e especificações próprias que um arquiteto ou mestre de obras consegue entender. Outra pergunta:
Esse projeto pode ser utilizado para gerar uma única casa?
Não necessariamente, nós podemos utilizar esse mesmo projeto para criar outras casas no mesmo formato. Terceira pegunta:
Podemos garantir que todas as casas geradas são do mesmo material, inclusive marcas?
Nem sempre. Se for um projeto arquitetural publico uma pessoa aqui no Brasil pode fazer a casa com um material, tijolos, por exemplo. Já nos Estados Unidos outra pessoa poderia utilizar madeira com compensados.
Trazendo para o Mundo Java…
Uma classe nada mais é que um projeto arquitetural, quando criamos um novo objeto dessa classe, estamos “instanciando” essa classe, ou criando um objeto. E um objeto possui características próprias. Pense na Figura 02 a seguir:
Do lado esquerdo há a representação de uma classe casa, com a maioria dos atributos não definidos. Já do lado direito há a representação de vários objetos, com suas respectivas cores, portas, janelas e até o formato da chaminé. Uma classe normalmente não assume cor, formato, diretamente, mas um objeto possui características próprias que veremos em próximo artigo veremos como representar em uma classe.
Agora vamos transformar isso para código:
1 2 3 |
public class Casa { //Características da casa aqui dentro } |
Essa é a declaração de uma classe em Java. Essa classe é a coisa mais simples que você verá (E mesmo assim já é cheio de complexidade :-))…
Vamos começar definindo algumas coisas, existem diversas palavras reservadas na linguagem Java, ou seja, você não utilizar essas palavras para dar nome as coisas do Java. Haverão error por isso.
A primeira palava public, palavra reservada, é chamado de modificador de acesso (veremos isso em um artigo em breve). Ele permite o acesso de objetos a essa classe. No caso aqui é um modificador public, o que indica que qualquer objeto dentro do programa poderia acessar essa classe.
A segunda palavra class, palavra reservada, indica o tipo básico que você está criando.
A terceira palavra Casa, não é reservada, indica o nome da classe. Uma classe não pode possuir o mesmo nome que outra classe no programa se estiver no mesmo package.
Para criar o “Corpo” da classe, ou seja, definir que está dentro e fora da classe nós utilizamos os abre e fecha chaves “{ }“. Você verá que para várias coisas dentro da linguagem serão criados “corpos”.
finally{
Com isso nós criamos a primeira classe. Ela é muito simples, não possui nenhuma característica, não realiza nenhuma ação. É apenas uma classe muito básica. Em um próximo artigo iremos começar a criar características e ações a essa classe.
Duvidas ou sugestões? Deixe seu feedback! Isso ajuda a saber a sua opinião sobre os artigos e melhorá-los para o futuro! Isso é muito importante!
Até um próximo post!
Leave a Reply