Documente Academic
Documente Profesional
Documente Cultură
A preocupa!"o da programa!"o estruturada estava em procurar os processos %ue envolviam o problema e n"o os ob#etos %ue o compun&am.
Em POO os problemas de programa!"o s"o pensados em termos de ob#etos nada de fun!$es rotinas nada disto o assunto s"o os ob#etos
'onceitos de POO
()m ob#eto * um termo %ue usamos para representar uma entidade do mundo real(
'ac&orro * um objeto. +odo ob#eto possui propriedades %ue os caracterizam. O cac&orro ao lado possui cor possui uma altura espec,fica ele tem um peso e taman&o. Estas caracter,sticas c&amamos de propriedades. Para identificar %uais s"o as propriedades de um ob#eto basta se perguntar o que ele tem? +odo ob#eto realiza a!$es das %uais c&amamos de m*todos. Para descobrir %uais os m*todos do ob#eto cac&orro basta se perguntar o que ele faz? As respostas ser"o os m*todoslati deita dorme obedece come dorme.
E er!"!ios legais##
1a!a um diagrama de classe para os seguintes ob#etos.
'arro
'elular
public class Cachorro { String cor; double altura; double tamanho; peso tamanho; }
'lasse P7blica.
8uando se cria uma classe voc9 pode definir o n,vel de visibilidade dela. +oda classe pode ser0 P$%&'C (P)bli!a* P+O,EC,E- (protegida* P+'./,E (pri0ada1parti!ular*
8uando definimos uma classe como P$%&'C significa %ue %ual%uer outra classe ou at* mesmo outro programa em 4A5A pode fazer uso dos atributos e m*todos desta classe. 8uando voc9 inicia um novo pro#eto no .et:eans ele cria para voc9 um pacote certo6 8uando definimos uma classe como P+O,EC,E- significa %ue todos os programas %ue voc9 criar dentro deste pacote poder; ter acesso a classe %ue voc9 criou. 8uando definimos uma classe como P+'./,E significa %ue somente a classe principal 2stati! 0oid main3 do seu programa poder; utilizar a classe %ue voc9 criou. 'omo isso pode parecer um pouco confuso no in,cio vamos e<plicar uma = uma em momentos oportunos. 5amos come!ar pela classe publica. >e eu %uiser %ue a classe 'ac&orro23 se#a uma classe publica escrever,amos desta forma-
public
class Cachorro{ String cor; double altura; double tamanho; peso tamanho;
+emos %ue agora passar a dar nome aos cac&orros do @atsumoto. Por*m n"o precisaremos criar novas classes nDs podemos 23erdar4 os atributos e m*todos da classe cac&orro23 %ue usamos de e<emplo na p;gina anterior.
O instanciamento n"o * representado de forma e<pl,cita no /iagrama de 'lasses mas ele * e<plicito nas linguagens de programa!"o O.O. 2Orientadas = Ob#eto3 como o 4A5A. Em 4ava temos algo #; con&ecido pro voc90
Este cDdigo %ue voc9 usa em todas as aulas nada mais %ue uma instEncia da classe >canner. Esta nova instancia c&ama leia. .Ds podemos fazer algo parecido com a classe cac&orro.
arquivo - Cachorro.java public class Cachorro{ String cor; double altura; double tamanho; double peso; }
Assistiu a v,deoaula666
arquivo - Aula01_JavaCachoro.java static void main(String[] args) { Cachorro bidu = new Cachorro(); Cachorro teco = new Cachorro(); Cachorro lepolepo = new Cachorro();
.o cDdigo acima eu criei F novos cac&orros para o @atsumoto usando a classe 'ac&orro23 %ue #; e<istia. ?sso c&ama-se instEncia.
E er!"!ios do +ei %ueno 1a!a um programa em 4A5A para cadastro de clientes. A classe 'liente23 deve ter pelo menos G atributos. 'rie as instancias registroH1 registroHI e registroHF e d9 valores para elas usando o >canner voc9 %ue ir; digitar as informa!$es via teclado. .o final mostre os valores %ue foram cadastrados.