Buscar

Classe, Objeto e Atributo

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

*
Classes, Objetos e Atributos
*
Orientação a Objetos
Motivação Principal
A grande vantagem que obtemos com a orientação a objetos é o fato de podermos abstrair de uma maneira mais fiel as situações do dia-a-dia. Para alcançarmos esta facilidade precisamos mudar a forma de pensar sobre sistemas.
Esta abstração é feita por representações do mundo real, chamadas de objetos. 
Só precisamos voltar a praticar o conhecimento que possuíamos desde a nossa infância: identificar os objetos e seus comportamentos, o que possibilita que eles sejam categorizados.
*
Objetos e seus Atributos
Os objetos possuem características ou propriedades que são seus atributos. Esses atributos identificam o estado de um objeto. Um atributo é uma abstração do tipo de dados ou estado que os objetos possuem. Vejamos o exemplo da figura abaixo:
Atributos do objeto Joana:
*
Objetos de mesma natureza = CLASSE
Quando identificamos características e operações similares em objetos distintos, estamos realizando sua classificação, ou seja, identificando classes. 
Uma classe é a representação de um conjunto de objetos que compartilham a mesma estrutura de atributos, operações e relacionamentos, dentro de um mesmo contexto (semântica).
Assim, uma classe especifica a estrutura de um objeto sem informar quais serão seus valores. Em contrapartida, um objeto corresponde à ocorrência (instância) de uma classe num determinado momento. Por exemplo: 
*
Classes e Objetos
Num sistema, trabalhamos com as instâncias de uma classe (os objetos criados a partir desta classe). Os dados são carregados nas instâncias. 
*
Uma Classe Java
Para ilustrarmos como podem ser criadas classes com atributos em Java, vamos propor uma classe que poderia ser utilizada para manipular Contas Correntes em um sistema O.O. desenvolvido para bancos.
	class Conta { 
		int numero; 
		String Nome; 
		String CPF;
		double saldo; 
		double limite; 
	}
Os Atributos são também referenciados como variáveis de instância
*
Criando e Usando Objetos
Para criar (construir, instanciar) uma Conta, basta usar a palavra chave new (devemos utilizar também os parênteses):
	class Programa 
	{ 
		public static void main(String[] args) 
		{ 
		 Conta minhaConta; // Declaração do Objeto
		 minhaConta = new Conta(); // Criação Objeto
		} 
	}
*
Criando e Usando Objetos
Através da variável ”minhaConta”, podemos acessar o objeto recém criado para alterar seu dono, seu saldo, etc:
class Programa { 
	public static void main(String[] args) { 
	 Conta minhaConta = new Conta(); 
	 minhaConta.Nome = “Sidney";
	 minhaConta.CPF = “111.222.333-44"; 			
	 minhaConta.saldo = 1000.0; 
	 System.out.println("Saldo atual: " + minhaConta.saldo); 
	} 
}
É importante fixar que o ponto foi utilizado para acessar algo em ”minhaConta”. 
*
Objetos são acessados por Ponteiros
Quando declaramos uma variável para associar a um objeto, na verdade, essa variável não guarda o objeto, e sim uma maneira de acessá-lo, chamada de referência.
É por esse motivo que, diferente dos tipos primitivos como int e long, precisamos dar new depois de declarada a variável:
public static void main(String args[]) 
{ 
	Conta c1; 
	c1 = new Conta(); 
	Conta c2; 
	c2 = new Conta(); 
}
*
Objetos e suas Referências
O correto aqui, é dizer que c1 se refere a um objeto. Não é correto dizer que c1 é um objeto, pois c1 é uma variável referência, apesar de, depois de um tempo, os programadores Java falarem "Tenho um objeto c do tipo Conta", mas apenas para encurtar a frase "Tenho uma referência c a um objeto do tipo Conta".
Em Java, uma variável nunca é um objeto, pois todo objeto, sem exceção, é acessado por uma variável referência.
*
Objetos e suas Referências
Internamente, c1 e c2 vão guardar endereços de memória que identificarão as posições onde cada objeto Conta se encontra. 
Dessa maneira, ao utilizarmos o "." para navegar, o Java vai acessar a Conta que se encontra naquela posição de memória, e não uma outra.
Para quem conhece, é parecido com um ponteiro, porém você não pode manipulá-lo
*
Exercício
Crie uma aplicação Java que contenha uma classe de nome “PESSOA” e que contenha os seguintes atributos:
Nome
Endereco
Bairro
Cidade
UF
CEP
Telefone
Salario
Em seguida, crie uma outra classe dentro da mesma aplicação, com o nome Principal, e onde deverá ser posto o método “main”. Nele você deverá criar uma instância da classe Pessoa e preencher todos os seus atributos com valores fornecidos pelo usuário. Ao final todos os dados deverão ser listados.
*
Exercício 2
Acrescente no projeto do exercício anterior uma classe de nome TIPOPESSOA composta pelos seguintes atributos
Codigo_TipoPessoa
Descricao
Em seguida altere a estrutura da classe PESSOA de forma que seja acrescentado um novo atributo do tipo TIPOPESSOA, definindo um atributo como um objeto desta nova classe. 
Altere a aplicação de forma que o objeto da classe PESSOA criado tenha agora também o seu tipo preenchido durante o cadastro. Ao final, mais uma vez todos os atributos deverão ser listados.

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais