SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
OCP - Java SE 6 Programmer 
1Z0-851 - Oracle Certified Professional, Java SE 6 
Programmer 
http://bit.ly/1tEkOy8
OCA - Java SE 7 Programmer I 
1Z0-803 - Oracle Certified Associate, Java SE 7 
Programmer 
http://bit.ly/ZKKcp0
OCA - Java SE 7 Programmer II 
1Z0-804 - Oracle Certified Professional, Java SE 7 
Programmer 
http://bit.ly/1wHP8Jg
• OO - Motivação 
–Motivação: Com a constante evolução das empresas, 
as regras de negócio se tornaram variáveis e a 
produção de software exige a adoção de métodos de 
desenvolvimento que atendam essa dinâmica do 
mercado, com intuito de manter e melhorar a 
qualidade. 
– A orientação a objetos é um dos métodos mais 
utilizados, oferece recursos para desenvolver 
software com qualidade e com a utilização de seus 
conceitos pode-se interagir com elementos do 
mundo real e traduzir suas características para o 
mundo computacional.
• OO - Definição 
– Definição: análise orientada a objetos concentra-se no 
desenvolvimento de um modelo orientado a objetos do 
domínio negocial para uma aplicação. Os objetos nesse 
modelo refletem as entidades, atributos e operações 
associadas ao problema a ser resolvido. 
– Este modelo descreverá como o software funcionará para 
satisfazer uma série de requisitos definido pelo cliente.
• Análise Orientada a Objetos - Conceitos 
– Abstração: A abstração consiste na separação dos 
objetos de uma totalidade, tal segmentação 
proporciona uma melhor utilização dos recursos da 
orientação a objetos. Pelo princípio da abstração, nós 
isolamos os objetos que queremos representar do 
ambiente complexo em que se situam, e nesses 
objetos representamos somente as características que 
são relevantes para o problema em questão.
• Análise Orientada a Objetos - Conceitos 
– Encapsulamento: O encapsulamento é um dos pilares da 
orientação a objetos e sua característica é ocultar partes da 
implementação desta forma a construir softwares que atinjam 
suas funcionalidades e escondam os detalhes de tal 
implementação do mundo exterior. Os objetos encapsulados 
funcionam como uma caixa preta, sabe-se da sua interface 
externa, mas não precisamos nos preocupar com o que acontece 
dentro dela. 
– Com encapsulamento, os usúarios de um objetos não precisam se 
preocupar como eles são constituídos internamente, apenas como 
interagir com os mesmos através de uma interface, acelerando o 
tempo de desenvolvimento.
• Análise Orientada a Objetos - Conceitos 
– Encapsulamento: Grande parte das linguagens de programação 
orientadas a objeto suportam três níveis de acessos. 
• Público – todos os objetos tem acesso; 
• Protegido – o acesso é apenas para instância, no caso para o 
objeto e todas as subclasses; 
• Privado – o acesso é apenas para o objeto da instância. 
– A escolha do acesso é importante, visto que todo comportamento 
que você queira tornar visível para que o mundo exterior deve ser 
definido como público bem como o comportamento que deseja 
ocultar o acesso deve ser definido como protegido ou privado.
• Análise Orientada a Objetos - Conceitos 
– Classe: A classe representa uma forma (template) para um 
conjunto de objetos. Os objetos, por sua vez, estes apesar de 
possuírem atributos iguais têm valores diferentes em seus 
atributos (não estáticos em Java). 
– A classe é um modelo e todos os seus objetos têm os mesmos 
atributos, embora esses atributos de instância de objeto possam 
ter valores diferentes e também os mesmos métodos.
• Análise Orientada a Objetos - Conceitos 
– Objeto: Um objeto é qualquer indivíduo, lugar, evento, coisa, 
tela, relatório ou conceito que seja aplicável ao sistema. Todo 
objeto pertence a uma determinada classe e possui atributos 
próprios. Os atributos são mutáveis e podem receber diferentes 
valores de acordo com as características do objeto. 
– A criação de um objeto consiste em sua instanciação, cada 
instância tem seus próprios valores de atributos, mas compartilha 
o nome e os comportamentos dos atributos e métodos com a 
outras instâncias da classe.
• Análise Orientada a Objetos - Conceitos 
– Herança: A herança é uma das principais características das 
linguagens de programação orientadas a objetos, permite o 
reaproveitamento de métodos e atributos diminuindo o tempo de 
desenvolvimento, ainda reduz a qtde de linhas de código desta 
forma facilita as manutenções futuras. 
– A utilização da herança é mais que uma simples economia de 
código, significa maior controle, previsibilidade e integridade. 
Quando um comportamento é alterado, todas as classes que 
descendem dela vão refletir a mudança.
• Análise Orientada a Objetos - Conceitos 
– Herança: Existem dois tipos de herança, a simples que herda 
apenas as características de uma superclasse, e a composta, que 
herda as características de duas ou mais superclasses.
• Análise Orientada a Objetos - Conceitos 
– Polimorfismo (e RTTI): O polimorfismo está diretamente ligado 
à hereditariedade das classes, este trabalha com a sobreposição 
de métodos herdados, ou seja, os métodos têm a mesma 
assinatura (têm o mesmo nome), mas a forma de implementação 
utilizada diferem do da superclasse. 
– No polimorfismo, cada classe pode definir um dado 
comportamento de sua própria maneira, de forma a representar 
através de um mesmo nome de meétodo comportamentos 
diferentes”.
Intro   oca,ocp 6 & 7, oo basics

Mais conteúdo relacionado

Mais procurados

Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a ObjetosIgor Takenami
 
Orientação a Objetos - Conceitos
Orientação a Objetos - ConceitosOrientação a Objetos - Conceitos
Orientação a Objetos - ConceitosMayron Cachina
 
Fundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetosFundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetosEvandro Agnes
 
Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoMarconi Rodrigues
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosLeonardo Melo Santos
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosRamon Mayor Martins
 
Análise Orientada a Objetos - Objetos E Classes
Análise Orientada a Objetos  -   Objetos E ClassesAnálise Orientada a Objetos  -   Objetos E Classes
Análise Orientada a Objetos - Objetos E ClassesCursoSENAC
 
Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1Marcelo Zeferino
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem IIIJuliano Weber
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetosNécio de Lima Veras
 
3.1 orientação objetos
3.1  orientação objetos3.1  orientação objetos
3.1 orientação objetosFrank Coelho
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a pooSedu
 
Programação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e ImplementaçãoProgramação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e ImplementaçãoEvandro Júnior
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Luis Ferreira
 
Arquitetura mix thiagoboufleuhr
Arquitetura mix thiagoboufleuhrArquitetura mix thiagoboufleuhr
Arquitetura mix thiagoboufleuhrThiago Boufleuhr
 

Mais procurados (20)

Aula orientação a objetos
Aula orientação a objetosAula orientação a objetos
Aula orientação a objetos
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
Orientação a Objetos - Conceitos
Orientação a Objetos - ConceitosOrientação a Objetos - Conceitos
Orientação a Objetos - Conceitos
 
Paradigma Orientado a Objeto
Paradigma Orientado a ObjetoParadigma Orientado a Objeto
Paradigma Orientado a Objeto
 
Fundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetosFundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetos
 
Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a Objeto
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetos
 
Java oo - aula 01
Java   oo - aula 01Java   oo - aula 01
Java oo - aula 01
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
 
Análise Orientada a Objetos - Objetos E Classes
Análise Orientada a Objetos  -   Objetos E ClassesAnálise Orientada a Objetos  -   Objetos E Classes
Análise Orientada a Objetos - Objetos E Classes
 
Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem III
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetos
 
3.1 orientação objetos
3.1  orientação objetos3.1  orientação objetos
3.1 orientação objetos
 
POO - Aula 1
POO - Aula 1POO - Aula 1
POO - Aula 1
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a poo
 
Programação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e ImplementaçãoProgramação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e Implementação
 
JAVA - Orientação a Objetos
JAVA - Orientação a ObjetosJAVA - Orientação a Objetos
JAVA - Orientação a Objetos
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
 
Arquitetura mix thiagoboufleuhr
Arquitetura mix thiagoboufleuhrArquitetura mix thiagoboufleuhr
Arquitetura mix thiagoboufleuhr
 

Semelhante a Intro oca,ocp 6 & 7, oo basics

Semelhante a Intro oca,ocp 6 & 7, oo basics (20)

Metodologia orientado a objetos
Metodologia orientado a objetosMetodologia orientado a objetos
Metodologia orientado a objetos
 
Aula 09 - introducao oo
Aula 09 - introducao ooAula 09 - introducao oo
Aula 09 - introducao oo
 
3 oo-concepts
3 oo-concepts3 oo-concepts
3 oo-concepts
 
Aula01-IntroducaoOO.pptx
Aula01-IntroducaoOO.pptxAula01-IntroducaoOO.pptx
Aula01-IntroducaoOO.pptx
 
Modelo orientado a objetos
Modelo orientado a objetosModelo orientado a objetos
Modelo orientado a objetos
 
Análise de sistemas oo 1
Análise de sistemas oo   1Análise de sistemas oo   1
Análise de sistemas oo 1
 
Conceitos de Orientação A Objeto
Conceitos de Orientação A ObjetoConceitos de Orientação A Objeto
Conceitos de Orientação A Objeto
 
2.1 introdução a oo
2.1 introdução a oo2.1 introdução a oo
2.1 introdução a oo
 
Linguagem de programação introdução v1
Linguagem de programação   introdução v1Linguagem de programação   introdução v1
Linguagem de programação introdução v1
 
Sld 4
Sld 4Sld 4
Sld 4
 
Apresentação Introdução Design Patterns
Apresentação Introdução Design PatternsApresentação Introdução Design Patterns
Apresentação Introdução Design Patterns
 
Orientacao a Objetos
Orientacao a ObjetosOrientacao a Objetos
Orientacao a Objetos
 
Aula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aooAula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aoo
 
Poo apostila visual c
Poo apostila visual cPoo apostila visual c
Poo apostila visual c
 
Introdução à programação por objectos final
Introdução à programação por objectos finalIntrodução à programação por objectos final
Introdução à programação por objectos final
 
Projeto de Sistemas - Aula005
Projeto de Sistemas - Aula005Projeto de Sistemas - Aula005
Projeto de Sistemas - Aula005
 
Travalho versao final
Travalho versao finalTravalho versao final
Travalho versao final
 
Modelagem de sistemas
Modelagem de sistemasModelagem de sistemas
Modelagem de sistemas
 
Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02
 
Aula 04.pdf
Aula 04.pdfAula 04.pdf
Aula 04.pdf
 

Mais de Juarez Junior

Oracle CloudWorld 2023 - How to hook up Telegram with Spring Boot and ADB
Oracle CloudWorld 2023 - How to hook up Telegram with Spring Boot and ADBOracle CloudWorld 2023 - How to hook up Telegram with Spring Boot and ADB
Oracle CloudWorld 2023 - How to hook up Telegram with Spring Boot and ADBJuarez Junior
 
Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...
Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...
Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...Juarez Junior
 
Oracle CloudWorld 2023 - A High-Speed Data Ingestion Service in Java Using MQ...
Oracle CloudWorld 2023 - A High-Speed Data Ingestion Service in Java Using MQ...Oracle CloudWorld 2023 - A High-Speed Data Ingestion Service in Java Using MQ...
Oracle CloudWorld 2023 - A High-Speed Data Ingestion Service in Java Using MQ...Juarez Junior
 
Oracle CloudWorld 2023 - Multi-cloud App Dev for Java Devs with Microsoft Azu...
Oracle CloudWorld 2023 - Multi-cloud App Dev for Java Devs with Microsoft Azu...Oracle CloudWorld 2023 - Multi-cloud App Dev for Java Devs with Microsoft Azu...
Oracle CloudWorld 2023 - Multi-cloud App Dev for Java Devs with Microsoft Azu...Juarez Junior
 
GeeCon Prague 2023 - Unleash the power of your applications with Micronaut®, ...
GeeCon Prague 2023 - Unleash the power of your applications with Micronaut®, ...GeeCon Prague 2023 - Unleash the power of your applications with Micronaut®, ...
GeeCon Prague 2023 - Unleash the power of your applications with Micronaut®, ...Juarez Junior
 
jPrime 2023 - Revolutionize Java DB AppDev with Reactive Streams and Virtual ...
jPrime 2023 - Revolutionize Java DB AppDev with Reactive Streams and Virtual ...jPrime 2023 - Revolutionize Java DB AppDev with Reactive Streams and Virtual ...
jPrime 2023 - Revolutionize Java DB AppDev with Reactive Streams and Virtual ...Juarez Junior
 
Porto Tech Hub Conference 2023 - Revolutionize Java DB AppDev with Reactive S...
Porto Tech Hub Conference 2023 - Revolutionize Java DB AppDev with Reactive S...Porto Tech Hub Conference 2023 - Revolutionize Java DB AppDev with Reactive S...
Porto Tech Hub Conference 2023 - Revolutionize Java DB AppDev with Reactive S...Juarez Junior
 
SevillaJUG - Unleash the power of your applications with Micronaut® ,GraalVM...
SevillaJUG - Unleash the power of your applications with Micronaut®  ,GraalVM...SevillaJUG - Unleash the power of your applications with Micronaut®  ,GraalVM...
SevillaJUG - Unleash the power of your applications with Micronaut® ,GraalVM...Juarez Junior
 
SKILup Days Container Orchestration - Kubernetes Operators for Databases
SKILup Days Container Orchestration - Kubernetes Operators for DatabasesSKILup Days Container Orchestration - Kubernetes Operators for Databases
SKILup Days Container Orchestration - Kubernetes Operators for DatabasesJuarez Junior
 
TDC Connections 2023 - Revolutionize Java DB AppDev with Reactive Streams and...
TDC Connections 2023 - Revolutionize Java DB AppDev with Reactive Streams and...TDC Connections 2023 - Revolutionize Java DB AppDev with Reactive Streams and...
TDC Connections 2023 - Revolutionize Java DB AppDev with Reactive Streams and...Juarez Junior
 
TDC Connections 2023 - A High-Speed Data Ingestion Service in Java Using MQTT...
TDC Connections 2023 - A High-Speed Data Ingestion Service in Java Using MQTT...TDC Connections 2023 - A High-Speed Data Ingestion Service in Java Using MQTT...
TDC Connections 2023 - A High-Speed Data Ingestion Service in Java Using MQTT...Juarez Junior
 
DTU Global Azure 2023 Bootcamp - Multi-cloud App Dev for Java Developers with...
DTU Global Azure 2023 Bootcamp - Multi-cloud App Dev for Java Developers with...DTU Global Azure 2023 Bootcamp - Multi-cloud App Dev for Java Developers with...
DTU Global Azure 2023 Bootcamp - Multi-cloud App Dev for Java Developers with...Juarez Junior
 
Melee Numerique 2022 - Revolutionize Java DB App Dev with Reactive Streams an...
Melee Numerique 2022 - Revolutionize Java DB App Dev with Reactive Streams an...Melee Numerique 2022 - Revolutionize Java DB App Dev with Reactive Streams an...
Melee Numerique 2022 - Revolutionize Java DB App Dev with Reactive Streams an...Juarez Junior
 
JCON OpenBlend Slovenia 2023 - A High-Speed Data Ingestion Service in Java Us...
JCON OpenBlend Slovenia 2023 - A High-Speed Data Ingestion Service in Java Us...JCON OpenBlend Slovenia 2023 - A High-Speed Data Ingestion Service in Java Us...
JCON OpenBlend Slovenia 2023 - A High-Speed Data Ingestion Service in Java Us...Juarez Junior
 
DWX23 - Revolutionize Java DB AppDev with Reactive Streams and Virtual Threads
DWX23 - Revolutionize Java DB AppDev with Reactive Streams and Virtual ThreadsDWX23 - Revolutionize Java DB AppDev with Reactive Streams and Virtual Threads
DWX23 - Revolutionize Java DB AppDev with Reactive Streams and Virtual ThreadsJuarez Junior
 
DWX23 - A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STO...
DWX23 - A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STO...DWX23 - A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STO...
DWX23 - A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STO...Juarez Junior
 
DeveloperWeek Latin America 2023 - A High-Speed Data Ingestion Service in Jav...
DeveloperWeek Latin America 2023 - A High-Speed Data Ingestion Service in Jav...DeveloperWeek Latin America 2023 - A High-Speed Data Ingestion Service in Jav...
DeveloperWeek Latin America 2023 - A High-Speed Data Ingestion Service in Jav...Juarez Junior
 
DeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for Databases
DeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for DatabasesDeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for Databases
DeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for DatabasesJuarez Junior
 
DevConf.cz - Introduction to Kubernetes Operators for Databases
DevConf.cz - Introduction to Kubernetes Operators for DatabasesDevConf.cz - Introduction to Kubernetes Operators for Databases
DevConf.cz - Introduction to Kubernetes Operators for DatabasesJuarez Junior
 
CloudTalks - Revolutionize Java DB AppDev with Reactive Streams and Virtual T...
CloudTalks - Revolutionize Java DB AppDev with Reactive Streams and Virtual T...CloudTalks - Revolutionize Java DB AppDev with Reactive Streams and Virtual T...
CloudTalks - Revolutionize Java DB AppDev with Reactive Streams and Virtual T...Juarez Junior
 

Mais de Juarez Junior (20)

Oracle CloudWorld 2023 - How to hook up Telegram with Spring Boot and ADB
Oracle CloudWorld 2023 - How to hook up Telegram with Spring Boot and ADBOracle CloudWorld 2023 - How to hook up Telegram with Spring Boot and ADB
Oracle CloudWorld 2023 - How to hook up Telegram with Spring Boot and ADB
 
Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...
Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...
Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...
 
Oracle CloudWorld 2023 - A High-Speed Data Ingestion Service in Java Using MQ...
Oracle CloudWorld 2023 - A High-Speed Data Ingestion Service in Java Using MQ...Oracle CloudWorld 2023 - A High-Speed Data Ingestion Service in Java Using MQ...
Oracle CloudWorld 2023 - A High-Speed Data Ingestion Service in Java Using MQ...
 
Oracle CloudWorld 2023 - Multi-cloud App Dev for Java Devs with Microsoft Azu...
Oracle CloudWorld 2023 - Multi-cloud App Dev for Java Devs with Microsoft Azu...Oracle CloudWorld 2023 - Multi-cloud App Dev for Java Devs with Microsoft Azu...
Oracle CloudWorld 2023 - Multi-cloud App Dev for Java Devs with Microsoft Azu...
 
GeeCon Prague 2023 - Unleash the power of your applications with Micronaut®, ...
GeeCon Prague 2023 - Unleash the power of your applications with Micronaut®, ...GeeCon Prague 2023 - Unleash the power of your applications with Micronaut®, ...
GeeCon Prague 2023 - Unleash the power of your applications with Micronaut®, ...
 
jPrime 2023 - Revolutionize Java DB AppDev with Reactive Streams and Virtual ...
jPrime 2023 - Revolutionize Java DB AppDev with Reactive Streams and Virtual ...jPrime 2023 - Revolutionize Java DB AppDev with Reactive Streams and Virtual ...
jPrime 2023 - Revolutionize Java DB AppDev with Reactive Streams and Virtual ...
 
Porto Tech Hub Conference 2023 - Revolutionize Java DB AppDev with Reactive S...
Porto Tech Hub Conference 2023 - Revolutionize Java DB AppDev with Reactive S...Porto Tech Hub Conference 2023 - Revolutionize Java DB AppDev with Reactive S...
Porto Tech Hub Conference 2023 - Revolutionize Java DB AppDev with Reactive S...
 
SevillaJUG - Unleash the power of your applications with Micronaut® ,GraalVM...
SevillaJUG - Unleash the power of your applications with Micronaut®  ,GraalVM...SevillaJUG - Unleash the power of your applications with Micronaut®  ,GraalVM...
SevillaJUG - Unleash the power of your applications with Micronaut® ,GraalVM...
 
SKILup Days Container Orchestration - Kubernetes Operators for Databases
SKILup Days Container Orchestration - Kubernetes Operators for DatabasesSKILup Days Container Orchestration - Kubernetes Operators for Databases
SKILup Days Container Orchestration - Kubernetes Operators for Databases
 
TDC Connections 2023 - Revolutionize Java DB AppDev with Reactive Streams and...
TDC Connections 2023 - Revolutionize Java DB AppDev with Reactive Streams and...TDC Connections 2023 - Revolutionize Java DB AppDev with Reactive Streams and...
TDC Connections 2023 - Revolutionize Java DB AppDev with Reactive Streams and...
 
TDC Connections 2023 - A High-Speed Data Ingestion Service in Java Using MQTT...
TDC Connections 2023 - A High-Speed Data Ingestion Service in Java Using MQTT...TDC Connections 2023 - A High-Speed Data Ingestion Service in Java Using MQTT...
TDC Connections 2023 - A High-Speed Data Ingestion Service in Java Using MQTT...
 
DTU Global Azure 2023 Bootcamp - Multi-cloud App Dev for Java Developers with...
DTU Global Azure 2023 Bootcamp - Multi-cloud App Dev for Java Developers with...DTU Global Azure 2023 Bootcamp - Multi-cloud App Dev for Java Developers with...
DTU Global Azure 2023 Bootcamp - Multi-cloud App Dev for Java Developers with...
 
Melee Numerique 2022 - Revolutionize Java DB App Dev with Reactive Streams an...
Melee Numerique 2022 - Revolutionize Java DB App Dev with Reactive Streams an...Melee Numerique 2022 - Revolutionize Java DB App Dev with Reactive Streams an...
Melee Numerique 2022 - Revolutionize Java DB App Dev with Reactive Streams an...
 
JCON OpenBlend Slovenia 2023 - A High-Speed Data Ingestion Service in Java Us...
JCON OpenBlend Slovenia 2023 - A High-Speed Data Ingestion Service in Java Us...JCON OpenBlend Slovenia 2023 - A High-Speed Data Ingestion Service in Java Us...
JCON OpenBlend Slovenia 2023 - A High-Speed Data Ingestion Service in Java Us...
 
DWX23 - Revolutionize Java DB AppDev with Reactive Streams and Virtual Threads
DWX23 - Revolutionize Java DB AppDev with Reactive Streams and Virtual ThreadsDWX23 - Revolutionize Java DB AppDev with Reactive Streams and Virtual Threads
DWX23 - Revolutionize Java DB AppDev with Reactive Streams and Virtual Threads
 
DWX23 - A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STO...
DWX23 - A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STO...DWX23 - A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STO...
DWX23 - A High-Speed Data Ingestion Service in Java Using MQTT, AMQP, and STO...
 
DeveloperWeek Latin America 2023 - A High-Speed Data Ingestion Service in Jav...
DeveloperWeek Latin America 2023 - A High-Speed Data Ingestion Service in Jav...DeveloperWeek Latin America 2023 - A High-Speed Data Ingestion Service in Jav...
DeveloperWeek Latin America 2023 - A High-Speed Data Ingestion Service in Jav...
 
DeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for Databases
DeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for DatabasesDeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for Databases
DeveloperWeekEnterprise2023 - Introduction to Kubernetes Operators for Databases
 
DevConf.cz - Introduction to Kubernetes Operators for Databases
DevConf.cz - Introduction to Kubernetes Operators for DatabasesDevConf.cz - Introduction to Kubernetes Operators for Databases
DevConf.cz - Introduction to Kubernetes Operators for Databases
 
CloudTalks - Revolutionize Java DB AppDev with Reactive Streams and Virtual T...
CloudTalks - Revolutionize Java DB AppDev with Reactive Streams and Virtual T...CloudTalks - Revolutionize Java DB AppDev with Reactive Streams and Virtual T...
CloudTalks - Revolutionize Java DB AppDev with Reactive Streams and Virtual T...
 

Intro oca,ocp 6 & 7, oo basics

  • 1. OCP - Java SE 6 Programmer 1Z0-851 - Oracle Certified Professional, Java SE 6 Programmer http://bit.ly/1tEkOy8
  • 2. OCA - Java SE 7 Programmer I 1Z0-803 - Oracle Certified Associate, Java SE 7 Programmer http://bit.ly/ZKKcp0
  • 3. OCA - Java SE 7 Programmer II 1Z0-804 - Oracle Certified Professional, Java SE 7 Programmer http://bit.ly/1wHP8Jg
  • 4. • OO - Motivação –Motivação: Com a constante evolução das empresas, as regras de negócio se tornaram variáveis e a produção de software exige a adoção de métodos de desenvolvimento que atendam essa dinâmica do mercado, com intuito de manter e melhorar a qualidade. – A orientação a objetos é um dos métodos mais utilizados, oferece recursos para desenvolver software com qualidade e com a utilização de seus conceitos pode-se interagir com elementos do mundo real e traduzir suas características para o mundo computacional.
  • 5. • OO - Definição – Definição: análise orientada a objetos concentra-se no desenvolvimento de um modelo orientado a objetos do domínio negocial para uma aplicação. Os objetos nesse modelo refletem as entidades, atributos e operações associadas ao problema a ser resolvido. – Este modelo descreverá como o software funcionará para satisfazer uma série de requisitos definido pelo cliente.
  • 6. • Análise Orientada a Objetos - Conceitos – Abstração: A abstração consiste na separação dos objetos de uma totalidade, tal segmentação proporciona uma melhor utilização dos recursos da orientação a objetos. Pelo princípio da abstração, nós isolamos os objetos que queremos representar do ambiente complexo em que se situam, e nesses objetos representamos somente as características que são relevantes para o problema em questão.
  • 7. • Análise Orientada a Objetos - Conceitos – Encapsulamento: O encapsulamento é um dos pilares da orientação a objetos e sua característica é ocultar partes da implementação desta forma a construir softwares que atinjam suas funcionalidades e escondam os detalhes de tal implementação do mundo exterior. Os objetos encapsulados funcionam como uma caixa preta, sabe-se da sua interface externa, mas não precisamos nos preocupar com o que acontece dentro dela. – Com encapsulamento, os usúarios de um objetos não precisam se preocupar como eles são constituídos internamente, apenas como interagir com os mesmos através de uma interface, acelerando o tempo de desenvolvimento.
  • 8. • Análise Orientada a Objetos - Conceitos – Encapsulamento: Grande parte das linguagens de programação orientadas a objeto suportam três níveis de acessos. • Público – todos os objetos tem acesso; • Protegido – o acesso é apenas para instância, no caso para o objeto e todas as subclasses; • Privado – o acesso é apenas para o objeto da instância. – A escolha do acesso é importante, visto que todo comportamento que você queira tornar visível para que o mundo exterior deve ser definido como público bem como o comportamento que deseja ocultar o acesso deve ser definido como protegido ou privado.
  • 9. • Análise Orientada a Objetos - Conceitos – Classe: A classe representa uma forma (template) para um conjunto de objetos. Os objetos, por sua vez, estes apesar de possuírem atributos iguais têm valores diferentes em seus atributos (não estáticos em Java). – A classe é um modelo e todos os seus objetos têm os mesmos atributos, embora esses atributos de instância de objeto possam ter valores diferentes e também os mesmos métodos.
  • 10. • Análise Orientada a Objetos - Conceitos – Objeto: Um objeto é qualquer indivíduo, lugar, evento, coisa, tela, relatório ou conceito que seja aplicável ao sistema. Todo objeto pertence a uma determinada classe e possui atributos próprios. Os atributos são mutáveis e podem receber diferentes valores de acordo com as características do objeto. – A criação de um objeto consiste em sua instanciação, cada instância tem seus próprios valores de atributos, mas compartilha o nome e os comportamentos dos atributos e métodos com a outras instâncias da classe.
  • 11. • Análise Orientada a Objetos - Conceitos – Herança: A herança é uma das principais características das linguagens de programação orientadas a objetos, permite o reaproveitamento de métodos e atributos diminuindo o tempo de desenvolvimento, ainda reduz a qtde de linhas de código desta forma facilita as manutenções futuras. – A utilização da herança é mais que uma simples economia de código, significa maior controle, previsibilidade e integridade. Quando um comportamento é alterado, todas as classes que descendem dela vão refletir a mudança.
  • 12. • Análise Orientada a Objetos - Conceitos – Herança: Existem dois tipos de herança, a simples que herda apenas as características de uma superclasse, e a composta, que herda as características de duas ou mais superclasses.
  • 13.
  • 14.
  • 15. • Análise Orientada a Objetos - Conceitos – Polimorfismo (e RTTI): O polimorfismo está diretamente ligado à hereditariedade das classes, este trabalha com a sobreposição de métodos herdados, ou seja, os métodos têm a mesma assinatura (têm o mesmo nome), mas a forma de implementação utilizada diferem do da superclasse. – No polimorfismo, cada classe pode definir um dado comportamento de sua própria maneira, de forma a representar através de um mesmo nome de meétodo comportamentos diferentes”.