SlideShare uma empresa Scribd logo
1 de 24
Programação Orientada a Objetos
Prof. Charles Fortes
Encapsulamento, Acessibilidade
e Construtores
Pitágoras
Programação Orientada a Objetos
Prof. Charles Fortes
Charles Fortes
Pitágoras
Programação Orientada a Objetos
Prof. Charles Fortes
Charles Fortes
Líder Técnico na Empresa Prime Systems.
Agilista, apaixonado por desenvolvimento
(Web, Desktop, Mobile, o que for), pai,
amante do Paintball e do Kenjutsu. MTAC -
Microsoft Technical Audience Contributor
100Loop - DotNetRaptors
Pitágoras
Programação Orientada a Objetos
Prof. Charles Fortes
Charles Fortes
Líder Técnico na Empresa Prime Systems.
Agilista, apaixonado por desenvolvimento
(Web, Desktop, Mobile, o que for), pai,
amante do Paintball e do Kenjutsu. MTAC -
Microsoft Technical Audience Contributor
100Loop - DotNetRaptors
SlideShare: http://pt.slideshare.net/charleswellingtonfortes
Linkedin: http://br.linkedin.com/in/charlesfortes/
Twitter: @CharlesFortes
Pitágoras
Programação Orientada a Objetos
Prof. Charles Fortes
Charles Fortes
Líder Técnico na Empresa Prime Systems.
Agilista, apaixonado por desenvolvimento
(Web, Desktop, Mobile, o que for), pai,
amante do Paintball e do Kenjutsu. MTAC -
Microsoft Technical Audience Contributor
100Loop - DotNetRaptors
Desenvolvimento Web – MVC – Angular.JS – JQuery – SQLServer – MySQL – HTML5 – NoSQL
Pitágoras
Programação Orientada a Objetos
Prof. Charles Fortes
Encapsulamento
Pitágoras
Programação Orientada a Objetos
Prof. Charles Fortes
Encapsulamento
Técnica que isola os detalhes de implementação dentro de um objeto, expondo o que é necessário a
quem consome ou interage com o objeto. Protegendo e dando mais flexibilidade às mudanças.
Pitágoras
Programação Orientada a Objetos
Prof. Charles Fortes
Encapsulamento
Pitágoras
Com isto podemos por exemplo alterar o
comportamento de um método de forma a não gerar
impactos em quem consome o método.
Correções de bugs e otimizações de código podem ser
realizadas em novas versões de uma classe sem
impactarmos aqueles que a utilizam, contanto que se
mantenha o contrato/assinatura.
Programação Orientada a Objetos
Prof. Charles Fortes
Encapsulamento
Pitágoras
Programação Orientada a Objetos
Prof. Charles Fortes
Modificadores de Acesso
Pitágoras
Programação Orientada a Objetos
Prof. Charles Fortes
Os modificadores de acesso fornecem os níveis de visibilidade necessários para que busquemos o
encapsulamento da informação em nossa classe.
Pitágoras
Modificadores de Acesso
Estes modificadores são caracterizados por palavras chaves que definem se o item será visível a que
nível na sua aplicação, podendo ele ser Publico, Privado, Protegido.
Programação Orientada a Objetos
Prof. Charles Fortes
public
O modificador public deixará visível a classe ou membro para todas as outras
classes, subclasses e pacotes do projeto Java
Pitágoras
Modificadores de Acesso
private
O modificador private deixará visível o atributo apenas para a classe em que este
atributo se encontra.
Programação Orientada a Objetos
Prof. Charles Fortes
protected
O modificador protected deixará visível o atributo para todas as outras classes e
subclasses que pertencem ao mesmo pacote
Pitágoras
Modificadores de Acesso
Padrão do java
Por padrão, a linguagem Java permite acesso aos membros apenas ao pacote
em que ele se encontra
Programação Orientada a Objetos
Prof. Charles Fortes
Pitágoras
Modificadores de Acesso
Modificador Classe Pacote Subclasse Globalmente
Public sim sim sim sim
Protected sim sim sim não
Sem Modificador (Padrão) sim sim não não
Private sim não não não
Programação Orientada a Objetos
Prof. Charles Fortes
Construtores
Pitágoras
Programação Orientada a Objetos
Prof. Charles Fortes
São estruturas de código que são executadas na instanciação de um objeto,
executam o código necessário para a inicialização da entidade e podem fornecer ou
forçar o recebimento de valores iniciais essenciais para a entidade.
Pitágoras
Construtores
Programação Orientada a Objetos
Prof. Charles Fortes
Pitágoras
Construtores
Programação Orientada a Objetos
Prof. Charles Fortes
Por padrão, quando não declarado, é implícito como um construtor que não recebe
parâmetros e não possui um comportamento.
Uma classe pode possuir diversos construtores e estes podem ainda chamar outro
construtor internos, estendendo o comportamento do construtor.
Pitágoras
Construtores
Programação Orientada a Objetos
Prof. Charles Fortes
Links
Pitágoras
Programação Orientada a Objetos
Prof. Charles Fortes
http://www.caelum.com.br/apostila-java-
orientacao-objetos/
Pitágoras
APOSTILA JAVA E ORIENTAÇÃO A OBJETOS
Caelum
Programação Orientada a Objetos
Prof. Charles Fortes
http://www.caelum.com.br/apostila-java-
orientacao-objetos/modificadores-de-acesso-e-
atributos-de-classe/
Pitágoras
APOSTILA JAVA E ORIENTAÇÃO A OBJETOS
Caelum - Modificadores de acesso e atributos de classe
Programação Orientada a Objetos
Prof. Charles Fortes
https://www.youtube.com/watch?v=dtNZi5EV2hs
Pitágoras
Programação Orientada a Objetos - Teoria e Prática
Cleyton Ferrari
https://www.youtube.com/watch?v=46VJmWrbFrM
O que é encapsulamento em orientação a objetos?
CodeBlizzard
Programação Orientada a Objetos
Prof. Charles Fortes
http://blog.caelum.com.br/revisitando-a-
orientacao-a-objetos-encapsulamento-no-java/
Pitágoras
Revisitando a Orientação a Objetos: encapsulamento no Java
Caelum - Maurício Aniche
Programação Orientada a Objetos
Prof. Charles Fortes
Dúvidas?
Pitágoras

Mais conteúdo relacionado

Destaque

Programação Genetica
Programação GeneticaProgramação Genetica
Programação GeneticaCharles Fortes
 
inteligência artificial - fuzzy - mineração
inteligência artificial - fuzzy - mineraçãointeligência artificial - fuzzy - mineração
inteligência artificial - fuzzy - mineraçãoCharles Fortes
 
Conceitos – Do Homem à Máquina
Conceitos – Do Homem à MáquinaConceitos – Do Homem à Máquina
Conceitos – Do Homem à MáquinaCharles Fortes
 
Sistemas Operacionais - Aula 7 - Processos e Threads
Sistemas Operacionais - Aula 7 - Processos e ThreadsSistemas Operacionais - Aula 7 - Processos e Threads
Sistemas Operacionais - Aula 7 - Processos e ThreadsCharles Fortes
 
PE2 - Funções e Structs
PE2 - Funções e StructsPE2 - Funções e Structs
PE2 - Funções e StructsCharles Fortes
 
Programação Estruturada 2 - Revisão C
Programação Estruturada 2 - Revisão CProgramação Estruturada 2 - Revisão C
Programação Estruturada 2 - Revisão CCharles Fortes
 
IA - Apresentação do Professor
IA - Apresentação do ProfessorIA - Apresentação do Professor
IA - Apresentação do ProfessorCharles Fortes
 
Sistemas Operacionais - Aula 9 - Gerencia de Recursos
Sistemas Operacionais - Aula 9 - Gerencia de RecursosSistemas Operacionais - Aula 9 - Gerencia de Recursos
Sistemas Operacionais - Aula 9 - Gerencia de RecursosCharles Fortes
 
Programação Estruturada 2 - Apresentação do Professor
Programação Estruturada 2 - Apresentação do ProfessorProgramação Estruturada 2 - Apresentação do Professor
Programação Estruturada 2 - Apresentação do ProfessorCharles Fortes
 
PE1 - Comandos de Decisão
PE1 - Comandos de DecisãoPE1 - Comandos de Decisão
PE1 - Comandos de DecisãoCharles Fortes
 
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre ProcessosSistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre ProcessosCharles Fortes
 
IA - Introdução Inteligência Artificial
IA - Introdução Inteligência ArtificialIA - Introdução Inteligência Artificial
IA - Introdução Inteligência ArtificialCharles Fortes
 
Medição de esforço - Como combrar meus freelas
Medição de esforço - Como combrar meus freelasMedição de esforço - Como combrar meus freelas
Medição de esforço - Como combrar meus freelasCharles Fortes
 
Construindo Apps Com SignalR
Construindo Apps Com SignalRConstruindo Apps Com SignalR
Construindo Apps Com SignalRIvan Paulovich
 
Programação Orientada a Objetos parte 2
Programação Orientada a Objetos parte 2Programação Orientada a Objetos parte 2
Programação Orientada a Objetos parte 2Elaine Cecília Gatto
 
C# 6.0 .net coders
C# 6.0   .net codersC# 6.0   .net coders
C# 6.0 .net codersRenato Groff
 
Desenvolvimento de software seguro
Desenvolvimento de software seguroDesenvolvimento de software seguro
Desenvolvimento de software seguroCharles Fortes
 

Destaque (20)

Programação Genetica
Programação GeneticaProgramação Genetica
Programação Genetica
 
inteligência artificial - fuzzy - mineração
inteligência artificial - fuzzy - mineraçãointeligência artificial - fuzzy - mineração
inteligência artificial - fuzzy - mineração
 
Conceitos – Do Homem à Máquina
Conceitos – Do Homem à MáquinaConceitos – Do Homem à Máquina
Conceitos – Do Homem à Máquina
 
Sistemas Operacionais - Aula 7 - Processos e Threads
Sistemas Operacionais - Aula 7 - Processos e ThreadsSistemas Operacionais - Aula 7 - Processos e Threads
Sistemas Operacionais - Aula 7 - Processos e Threads
 
PE2 - Funções e Structs
PE2 - Funções e StructsPE2 - Funções e Structs
PE2 - Funções e Structs
 
Programação Estruturada 2 - Revisão C
Programação Estruturada 2 - Revisão CProgramação Estruturada 2 - Revisão C
Programação Estruturada 2 - Revisão C
 
IA - Apresentação do Professor
IA - Apresentação do ProfessorIA - Apresentação do Professor
IA - Apresentação do Professor
 
Sistemas Operacionais - Aula 9 - Gerencia de Recursos
Sistemas Operacionais - Aula 9 - Gerencia de RecursosSistemas Operacionais - Aula 9 - Gerencia de Recursos
Sistemas Operacionais - Aula 9 - Gerencia de Recursos
 
Programação Estruturada 2 - Apresentação do Professor
Programação Estruturada 2 - Apresentação do ProfessorProgramação Estruturada 2 - Apresentação do Professor
Programação Estruturada 2 - Apresentação do Professor
 
PE1 - Comandos de Decisão
PE1 - Comandos de DecisãoPE1 - Comandos de Decisão
PE1 - Comandos de Decisão
 
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre ProcessosSistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
Sistemas Operacionais - Aula 8 - Sincronização e Comunicação entre Processos
 
IA - Introdução Inteligência Artificial
IA - Introdução Inteligência ArtificialIA - Introdução Inteligência Artificial
IA - Introdução Inteligência Artificial
 
Introdução ao DDD
Introdução ao DDDIntrodução ao DDD
Introdução ao DDD
 
Introdução ao TDD
Introdução ao TDDIntrodução ao TDD
Introdução ao TDD
 
MVC Pattern
MVC PatternMVC Pattern
MVC Pattern
 
Medição de esforço - Como combrar meus freelas
Medição de esforço - Como combrar meus freelasMedição de esforço - Como combrar meus freelas
Medição de esforço - Como combrar meus freelas
 
Construindo Apps Com SignalR
Construindo Apps Com SignalRConstruindo Apps Com SignalR
Construindo Apps Com SignalR
 
Programação Orientada a Objetos parte 2
Programação Orientada a Objetos parte 2Programação Orientada a Objetos parte 2
Programação Orientada a Objetos parte 2
 
C# 6.0 .net coders
C# 6.0   .net codersC# 6.0   .net coders
C# 6.0 .net coders
 
Desenvolvimento de software seguro
Desenvolvimento de software seguroDesenvolvimento de software seguro
Desenvolvimento de software seguro
 

Semelhante a POO Conceitos

As melhores práticas de desenvolvimento de software em fábrica de software
As melhores práticas de desenvolvimento de software em fábrica de softwareAs melhores práticas de desenvolvimento de software em fábrica de software
As melhores práticas de desenvolvimento de software em fábrica de softwareRafael Souza
 
Trabalho 4 Semestre e 5 Semestre 2015
Trabalho 4 Semestre e 5 Semestre 2015Trabalho 4 Semestre e 5 Semestre 2015
Trabalho 4 Semestre e 5 Semestre 2015Rodrigo Marinho
 
Apresentação Workshop Executivo Lumis | Evolução Digital | Por Ricardo Saldanha
Apresentação Workshop Executivo Lumis | Evolução Digital | Por Ricardo SaldanhaApresentação Workshop Executivo Lumis | Evolução Digital | Por Ricardo Saldanha
Apresentação Workshop Executivo Lumis | Evolução Digital | Por Ricardo SaldanhaLumis
 
Desenvolvimento web com python e django
Desenvolvimento web com python e djangoDesenvolvimento web com python e django
Desenvolvimento web com python e djangoIgor Sobreira
 
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013Marcio Junior Vieira
 
Desenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma PentahoDesenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma PentahoAmbiente Livre
 
De javaparapython
De javaparapythonDe javaparapython
De javaparapythonTiago
 
Desenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma PentahoDesenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma PentahoPentahoBrasil
 
Estratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de VersãoEstratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de VersãoComunidade NetPonto
 
Infraestrutura como código Terraform aws openshift Ansible
Infraestrutura como código Terraform aws openshift AnsibleInfraestrutura como código Terraform aws openshift Ansible
Infraestrutura como código Terraform aws openshift AnsibleClaudemir de Almeida Rosa
 
Configuração de ativos de rede utilizando a abordagem infrastructure as code
Configuração de ativos de rede utilizando a abordagem infrastructure as codeConfiguração de ativos de rede utilizando a abordagem infrastructure as code
Configuração de ativos de rede utilizando a abordagem infrastructure as codeAécio Pires
 
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...IT4biz IT Solutions
 

Semelhante a POO Conceitos (20)

As melhores práticas de desenvolvimento de software em fábrica de software
As melhores práticas de desenvolvimento de software em fábrica de softwareAs melhores práticas de desenvolvimento de software em fábrica de software
As melhores práticas de desenvolvimento de software em fábrica de software
 
Trabalho 4 Semestre e 5 Semestre 2015
Trabalho 4 Semestre e 5 Semestre 2015Trabalho 4 Semestre e 5 Semestre 2015
Trabalho 4 Semestre e 5 Semestre 2015
 
Aula1 Apresentacao TEES
Aula1 Apresentacao TEESAula1 Apresentacao TEES
Aula1 Apresentacao TEES
 
Apresentação Workshop Executivo Lumis | Evolução Digital | Por Ricardo Saldanha
Apresentação Workshop Executivo Lumis | Evolução Digital | Por Ricardo SaldanhaApresentação Workshop Executivo Lumis | Evolução Digital | Por Ricardo Saldanha
Apresentação Workshop Executivo Lumis | Evolução Digital | Por Ricardo Saldanha
 
PHP Tools for Fast coding
PHP Tools for Fast codingPHP Tools for Fast coding
PHP Tools for Fast coding
 
Desenvolvimento web com python e django
Desenvolvimento web com python e djangoDesenvolvimento web com python e django
Desenvolvimento web com python e django
 
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013
Palestra: Desenvolvendo Produtos sobre a Plataforma Pentaho - Pentaho Day 2013
 
Desenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma PentahoDesenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma Pentaho
 
De javaparapython
De javaparapythonDe javaparapython
De javaparapython
 
Hands on guiado .Net Core
Hands on guiado .Net CoreHands on guiado .Net Core
Hands on guiado .Net Core
 
Desenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma PentahoDesenvolvendo Produtos sobre a Plataforma Pentaho
Desenvolvendo Produtos sobre a Plataforma Pentaho
 
Estratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de VersãoEstratégias de Estruturação de Código-fonte e Controlo de Versão
Estratégias de Estruturação de Código-fonte e Controlo de Versão
 
Infraestrutura como código Terraform aws openshift Ansible
Infraestrutura como código Terraform aws openshift AnsibleInfraestrutura como código Terraform aws openshift Ansible
Infraestrutura como código Terraform aws openshift Ansible
 
Configuração de ativos de rede utilizando a abordagem infrastructure as code
Configuração de ativos de rede utilizando a abordagem infrastructure as codeConfiguração de ativos de rede utilizando a abordagem infrastructure as code
Configuração de ativos de rede utilizando a abordagem infrastructure as code
 
Cp2011 python agil-ramiroluz
Cp2011 python agil-ramiroluzCp2011 python agil-ramiroluz
Cp2011 python agil-ramiroluz
 
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...
 
slidesuab
slidesuabslidesuab
slidesuab
 
HTML5
HTML5HTML5
HTML5
 
Palantir
PalantirPalantir
Palantir
 
Python agil
Python agilPython agil
Python agil
 

Mais de Charles Fortes

Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5QuintusIntrodução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5QuintusCharles Fortes
 
Economia global: França e Inglaterra
Economia global: França e InglaterraEconomia global: França e Inglaterra
Economia global: França e InglaterraCharles Fortes
 
Sistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
Sistemas Operacionais - Aula 6 - Estrutura do Sistema OperacionalSistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
Sistemas Operacionais - Aula 6 - Estrutura do Sistema OperacionalCharles Fortes
 
Sistemas Operacionais - Aula 5 - Concorrência
Sistemas Operacionais - Aula 5 - ConcorrênciaSistemas Operacionais - Aula 5 - Concorrência
Sistemas Operacionais - Aula 5 - ConcorrênciaCharles Fortes
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosCharles Fortes
 
Sistemas Operacionais - Aula 3 - Hardware e Software
Sistemas Operacionais - Aula 3 - Hardware e SoftwareSistemas Operacionais - Aula 3 - Hardware e Software
Sistemas Operacionais - Aula 3 - Hardware e SoftwareCharles Fortes
 
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas OperacionaisSistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas OperacionaisCharles Fortes
 
Sistemas Operacionais - Aula 1 - História e Introdução a SO
Sistemas Operacionais - Aula 1 - História e Introdução a SOSistemas Operacionais - Aula 1 - História e Introdução a SO
Sistemas Operacionais - Aula 1 - História e Introdução a SOCharles Fortes
 
Apresentação prof e materia
Apresentação prof e materiaApresentação prof e materia
Apresentação prof e materiaCharles Fortes
 

Mais de Charles Fortes (9)

Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5QuintusIntrodução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
Introdução a Desenvolvimento de Jogos HTML 5 para Windows 8 com Html5Quintus
 
Economia global: França e Inglaterra
Economia global: França e InglaterraEconomia global: França e Inglaterra
Economia global: França e Inglaterra
 
Sistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
Sistemas Operacionais - Aula 6 - Estrutura do Sistema OperacionalSistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
Sistemas Operacionais - Aula 6 - Estrutura do Sistema Operacional
 
Sistemas Operacionais - Aula 5 - Concorrência
Sistemas Operacionais - Aula 5 - ConcorrênciaSistemas Operacionais - Aula 5 - Concorrência
Sistemas Operacionais - Aula 5 - Concorrência
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
 
Sistemas Operacionais - Aula 3 - Hardware e Software
Sistemas Operacionais - Aula 3 - Hardware e SoftwareSistemas Operacionais - Aula 3 - Hardware e Software
Sistemas Operacionais - Aula 3 - Hardware e Software
 
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas OperacionaisSistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
Sistemas Operacionais - Aula 2 - Visão Geral de Sistemas Operacionais
 
Sistemas Operacionais - Aula 1 - História e Introdução a SO
Sistemas Operacionais - Aula 1 - História e Introdução a SOSistemas Operacionais - Aula 1 - História e Introdução a SO
Sistemas Operacionais - Aula 1 - História e Introdução a SO
 
Apresentação prof e materia
Apresentação prof e materiaApresentação prof e materia
Apresentação prof e materia
 

POO Conceitos

  • 1. Programação Orientada a Objetos Prof. Charles Fortes Encapsulamento, Acessibilidade e Construtores Pitágoras
  • 2. Programação Orientada a Objetos Prof. Charles Fortes Charles Fortes Pitágoras
  • 3. Programação Orientada a Objetos Prof. Charles Fortes Charles Fortes Líder Técnico na Empresa Prime Systems. Agilista, apaixonado por desenvolvimento (Web, Desktop, Mobile, o que for), pai, amante do Paintball e do Kenjutsu. MTAC - Microsoft Technical Audience Contributor 100Loop - DotNetRaptors Pitágoras
  • 4. Programação Orientada a Objetos Prof. Charles Fortes Charles Fortes Líder Técnico na Empresa Prime Systems. Agilista, apaixonado por desenvolvimento (Web, Desktop, Mobile, o que for), pai, amante do Paintball e do Kenjutsu. MTAC - Microsoft Technical Audience Contributor 100Loop - DotNetRaptors SlideShare: http://pt.slideshare.net/charleswellingtonfortes Linkedin: http://br.linkedin.com/in/charlesfortes/ Twitter: @CharlesFortes Pitágoras
  • 5. Programação Orientada a Objetos Prof. Charles Fortes Charles Fortes Líder Técnico na Empresa Prime Systems. Agilista, apaixonado por desenvolvimento (Web, Desktop, Mobile, o que for), pai, amante do Paintball e do Kenjutsu. MTAC - Microsoft Technical Audience Contributor 100Loop - DotNetRaptors Desenvolvimento Web – MVC – Angular.JS – JQuery – SQLServer – MySQL – HTML5 – NoSQL Pitágoras
  • 6. Programação Orientada a Objetos Prof. Charles Fortes Encapsulamento Pitágoras
  • 7. Programação Orientada a Objetos Prof. Charles Fortes Encapsulamento Técnica que isola os detalhes de implementação dentro de um objeto, expondo o que é necessário a quem consome ou interage com o objeto. Protegendo e dando mais flexibilidade às mudanças. Pitágoras
  • 8. Programação Orientada a Objetos Prof. Charles Fortes Encapsulamento Pitágoras Com isto podemos por exemplo alterar o comportamento de um método de forma a não gerar impactos em quem consome o método. Correções de bugs e otimizações de código podem ser realizadas em novas versões de uma classe sem impactarmos aqueles que a utilizam, contanto que se mantenha o contrato/assinatura.
  • 9. Programação Orientada a Objetos Prof. Charles Fortes Encapsulamento Pitágoras
  • 10. Programação Orientada a Objetos Prof. Charles Fortes Modificadores de Acesso Pitágoras
  • 11. Programação Orientada a Objetos Prof. Charles Fortes Os modificadores de acesso fornecem os níveis de visibilidade necessários para que busquemos o encapsulamento da informação em nossa classe. Pitágoras Modificadores de Acesso Estes modificadores são caracterizados por palavras chaves que definem se o item será visível a que nível na sua aplicação, podendo ele ser Publico, Privado, Protegido.
  • 12. Programação Orientada a Objetos Prof. Charles Fortes public O modificador public deixará visível a classe ou membro para todas as outras classes, subclasses e pacotes do projeto Java Pitágoras Modificadores de Acesso private O modificador private deixará visível o atributo apenas para a classe em que este atributo se encontra.
  • 13. Programação Orientada a Objetos Prof. Charles Fortes protected O modificador protected deixará visível o atributo para todas as outras classes e subclasses que pertencem ao mesmo pacote Pitágoras Modificadores de Acesso Padrão do java Por padrão, a linguagem Java permite acesso aos membros apenas ao pacote em que ele se encontra
  • 14. Programação Orientada a Objetos Prof. Charles Fortes Pitágoras Modificadores de Acesso Modificador Classe Pacote Subclasse Globalmente Public sim sim sim sim Protected sim sim sim não Sem Modificador (Padrão) sim sim não não Private sim não não não
  • 15. Programação Orientada a Objetos Prof. Charles Fortes Construtores Pitágoras
  • 16. Programação Orientada a Objetos Prof. Charles Fortes São estruturas de código que são executadas na instanciação de um objeto, executam o código necessário para a inicialização da entidade e podem fornecer ou forçar o recebimento de valores iniciais essenciais para a entidade. Pitágoras Construtores
  • 17. Programação Orientada a Objetos Prof. Charles Fortes Pitágoras Construtores
  • 18. Programação Orientada a Objetos Prof. Charles Fortes Por padrão, quando não declarado, é implícito como um construtor que não recebe parâmetros e não possui um comportamento. Uma classe pode possuir diversos construtores e estes podem ainda chamar outro construtor internos, estendendo o comportamento do construtor. Pitágoras Construtores
  • 19. Programação Orientada a Objetos Prof. Charles Fortes Links Pitágoras
  • 20. Programação Orientada a Objetos Prof. Charles Fortes http://www.caelum.com.br/apostila-java- orientacao-objetos/ Pitágoras APOSTILA JAVA E ORIENTAÇÃO A OBJETOS Caelum
  • 21. Programação Orientada a Objetos Prof. Charles Fortes http://www.caelum.com.br/apostila-java- orientacao-objetos/modificadores-de-acesso-e- atributos-de-classe/ Pitágoras APOSTILA JAVA E ORIENTAÇÃO A OBJETOS Caelum - Modificadores de acesso e atributos de classe
  • 22. Programação Orientada a Objetos Prof. Charles Fortes https://www.youtube.com/watch?v=dtNZi5EV2hs Pitágoras Programação Orientada a Objetos - Teoria e Prática Cleyton Ferrari https://www.youtube.com/watch?v=46VJmWrbFrM O que é encapsulamento em orientação a objetos? CodeBlizzard
  • 23. Programação Orientada a Objetos Prof. Charles Fortes http://blog.caelum.com.br/revisitando-a- orientacao-a-objetos-encapsulamento-no-java/ Pitágoras Revisitando a Orientação a Objetos: encapsulamento no Java Caelum - Maurício Aniche
  • 24. Programação Orientada a Objetos Prof. Charles Fortes Dúvidas? Pitágoras