programaÇÃo orientada a objetos · programaÇÃo orientada a objetos semana 4 classes, objetos,...
TRANSCRIPT
![Page 1: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/1.jpg)
PROGRAMAÇÃO ORIENTADA A OBJETOSSEMANA 4
Classes, Objetos, Instâncias, Referências e Métodos
Prof. Geovani [email protected]
![Page 2: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/2.jpg)
Programadores que utilizam o paradigma de
Programação Orientada a Objetos criam e usam
objetos a partir de classes, que são relacionadas
diretamente com os modelos descritos
anteriormente.
![Page 3: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/3.jpg)
Representação de classes em Representação de classes em Representação de classes em Representação de classes em modelagem (UML modelagem (UML modelagem (UML modelagem (UML –––– Diagrama de Diagrama de Diagrama de Diagrama de ????))))
![Page 4: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/4.jpg)
ClassesClassesClassesClasses
São estruturas de linguagem de programação
orientadas a objetos para conter, para determinado
modelo, os dados que devem ser representados e as
operações que devem ser efetuadas com estes dados.
Cada classe deve conter um nome que seja facilmente associável ao modelo que a classe representa.
![Page 5: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/5.jpg)
Classes são escritas com recursos e regras da
linguagem de programação orientada a objetos para
implementação dos modelos.
Portanto, do Modelo...
![Page 6: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/6.jpg)
Para código...
![Page 7: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/7.jpg)
Para código...
![Page 8: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/8.jpg)
Para código...
![Page 9: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/9.jpg)
InstânciasInstânciasInstânciasInstâncias
Para representação de dados específicos usando
classes deste tipo será necessária a criação de objetos
ou instâncias desta classe.
![Page 10: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/10.jpg)
InstânciasInstânciasInstânciasInstânciasUm objeto ou instância é uma materialização da classe,
e assim pode ser usado para representar dados e
executar operações.
Para que os objetos ou instâncias possam ser
manipulados é necessária a criação de referências a
estes objetos, que são basicamente variáveis do “tipo”
da classe.
![Page 11: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/11.jpg)
Referência
![Page 12: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/12.jpg)
A criação de um objeto é que chamamos instanciação. Instanciarsignifica criar uma instância da classe (class instance), isto é, umnovo objeto que pode ser descrito através desta classe.
Enquanto que uma classe é um modelo abstrato de um objeto,uma instância representa um objeto concreto desta classe.
A classe Curso representa um modeloabstrato de curso enquanto que cadacurso que existe fisicamente é umainstância desta classe, ou seja, um objetoconcreto deste tipo.
![Page 13: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/13.jpg)
Os dados contidos em uma classe são conhecidos
como campos ou atributos daquela classe.
Cada campo deve conter um nome e ser de um tipo de
dado nativo da linguagem de programação orientada a
objetos definida pelo programador de acordo com o
modelo.
![Page 14: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/14.jpg)
Atributos
Tipo de dado
![Page 15: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/15.jpg)
As operações contidas em uma classe são chamadas de
métodos dessa classe.
![Page 16: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/16.jpg)
Métodos
![Page 17: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/17.jpg)
Instanciando um novo objetoPara instanciarmos um novo objeto devemos utilizar o operadornew, destinado a criação de novos objetos como segue:
NomedaClasse nomeDoObjeto = new NomeDaClasse();
Esta construção possui duas partes: a declaração de um objeto ea instanciação propriamente dita. A parte esquerda é semelhantea uma declaração de variáveis onde indicamos um tipo e umnome para a variável. No caso dizemos ser um objeto, pois,corresponde a uma instância de uma classe.
![Page 18: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/18.jpg)
Instanciando um novo objetoNomedaClasse nomeDoObjeto = new NomeDaClasse();
A parte direita é a instanciação do objeto, onde usamos ooperador new para indicar que desejamos a criação de um novoobjeto de uma certa classe, o que é feito através de um métodoespecial denominado construtor1.
Com isto efetuamos a criação de um novo objeto e guardamosuma referência para sua utilização na variável objeto. Para acriação de um objeto do tipo Cliente poderíamos escrever:
Cliente novoCliente = new Cliente();
![Page 19: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/19.jpg)
Exemplo de instância
Instanciando objeto Aluno...
... Acessando atributos e métodos da classe Aluno
![Page 20: PROGRAMAÇÃO ORIENTADA A OBJETOS · PROGRAMAÇÃO ORIENTADA A OBJETOS SEMANA 4 Classes, Objetos, Instâncias, Referências e Métodos Prof. Geovani Sajorato sajorato@gmail.com](https://reader034.vdocuments.mx/reader034/viewer/2022051322/603be90e5d33120ec656d7d9/html5/thumbnails/20.jpg)
Exemplo de instância
Preparando o objeto para ser processado...