Aula 5 da disciplina de Programação Orientada a Objetos (POO), do curso de ADS do IFSP Capivari. Os slides abordam conceitos importantes do paradigma orientado a objetos, como encapsulamento, associação, polimorfismo e interfaces
Um dos pilares da orientação a objetos, o Encapsulamento é o conceito responsável pela definição de acessos as classes e seus métodos e atributos. Juntamente com a Herança e o Polimorfismo, itens essenciais a compreensão deste paradigma de programação.
O documento discute polimorfismo e classes abstratas em programação orientada a objetos. O polimorfismo permite que métodos sejam invocados de forma unificada em subclasses de uma superclasse, enquanto classes abstratas definem comportamentos comuns sem permitir instanciação de objetos.
O documento discute os conceitos de encapsulamento e modificadores de acesso em programação orientada a objetos. Resume que encapsulamento separa os aspectos internos e externos de um objeto, mantendo detalhes internos privados. Também explica os modificadores de acesso public, private, protected e padrão e como eles controlam o acesso a atributos, métodos e classes.
1) O documento apresenta os conceitos básicos de programação orientada a objetos, incluindo classes, atributos, métodos e objetos.
2) São discutidos modificadores de visibilidade e como eles controlam o acesso a atributos e métodos.
3) Exemplos demonstram como criar objetos a partir de classes e como acessar atributos e métodos de objetos.
Aula 02 - Principios da Orientação a Objetos (POO)Daniel Brandão
O documento discute os conceitos fundamentais da orientação a objetos, incluindo classes, objetos, atributos, métodos e relacionamentos entre objetos. Explica que uma classe define os atributos e métodos comuns a objetos do mesmo tipo e que objetos são instâncias de classes que possuem estados e comportamentos próprios. Também aborda como objetos se comunicam através de mensagens e como classes podem ser relacionadas por agregação, composição ou herança.
Aula 4 herança, sobrescrita de métodos, construtorRafael Pinheiro
O documento discute programação orientada a objetos, abordando conceitos como herança, sobrescrita de métodos e construtores. A herança permite que uma classe filha herde atributos e comportamentos de uma classe mãe, evitando reescrita de código. A sobrescrita de métodos possibilita personalizar o comportamento de um método herdado. Construtores garantem que atributos obrigatórios sejam definidos ao criar um objeto.
Um dos pilares da orientação a objetos, o Encapsulamento é o conceito responsável pela definição de acessos as classes e seus métodos e atributos. Juntamente com a Herança e o Polimorfismo, itens essenciais a compreensão deste paradigma de programação.
O documento discute polimorfismo e classes abstratas em programação orientada a objetos. O polimorfismo permite que métodos sejam invocados de forma unificada em subclasses de uma superclasse, enquanto classes abstratas definem comportamentos comuns sem permitir instanciação de objetos.
O documento discute os conceitos de encapsulamento e modificadores de acesso em programação orientada a objetos. Resume que encapsulamento separa os aspectos internos e externos de um objeto, mantendo detalhes internos privados. Também explica os modificadores de acesso public, private, protected e padrão e como eles controlam o acesso a atributos, métodos e classes.
1) O documento apresenta os conceitos básicos de programação orientada a objetos, incluindo classes, atributos, métodos e objetos.
2) São discutidos modificadores de visibilidade e como eles controlam o acesso a atributos e métodos.
3) Exemplos demonstram como criar objetos a partir de classes e como acessar atributos e métodos de objetos.
Aula 02 - Principios da Orientação a Objetos (POO)Daniel Brandão
O documento discute os conceitos fundamentais da orientação a objetos, incluindo classes, objetos, atributos, métodos e relacionamentos entre objetos. Explica que uma classe define os atributos e métodos comuns a objetos do mesmo tipo e que objetos são instâncias de classes que possuem estados e comportamentos próprios. Também aborda como objetos se comunicam através de mensagens e como classes podem ser relacionadas por agregação, composição ou herança.
Aula 4 herança, sobrescrita de métodos, construtorRafael Pinheiro
O documento discute programação orientada a objetos, abordando conceitos como herança, sobrescrita de métodos e construtores. A herança permite que uma classe filha herde atributos e comportamentos de uma classe mãe, evitando reescrita de código. A sobrescrita de métodos possibilita personalizar o comportamento de um método herdado. Construtores garantem que atributos obrigatórios sejam definidos ao criar um objeto.
Java orientação a objetos (associacao, composicao, agregacao)Armando Daniel
O documento explica os conceitos de associação, agregação e composição em Java. A associação ocorre quando uma classe possui atributos do tipo de outra classe. A agregação ocorre quando uma classe usa outras classes em suas operações, mas não contém essas classes. A composição é semelhante à agregação, mas quando o objeto todo é destruído, seus objetos partes também devem ser destruídos. Exemplos de código são fornecidos para ilustrar cada conceito.
O documento discute a herança em Java para reestruturar código repetido de classes de funcionários. Propõe criar uma classe Funcionario como superclasse e subclasses Gerente e Professor que herdam atributos e métodos de Funcionario. Isso centraliza informações de funcionários e facilita manutenção caso necessitem adicionar novos atributos ou tipos de funcionários no futuro.
O documento discute o conceito de herança em programação orientada a objetos. Explica que a herança permite a reutilização de código através da criação de novas subclasses que herdam atributos e métodos de classes existentes (superclasses), permitindo economia de tempo no desenvolvimento de software. Detalha os conceitos de superclasse, subclasses, hierarquia de classes e relacionamentos entre classes, como herança simples e múltipla.
1. A aula introduz o PHP, abordando sua história, características e estrutura básica.
2. Variáveis, constantes, tipos de dados e operadores são explicados. Exemplos ilustram o uso de variáveis, operações matemáticas e lógicas.
3. O documento fornece os conceitos fundamentais da linguagem PHP para iniciantes.
1. Implemente classes Funcionário, Gerente e Assistente, com atributos e métodos próprios. Gerente e Assistente herdam de Funcionário.
2. Crie subclasses Técnico e Administrativo da classe Assistente, com atributos adicionais.
3. Implemente classes Pessoa, Trabalhador e Miserável com atributos, construtores e métodos. Trabalhador e Miserável herdam de Pessoa.
4. Crie classes Ingresso, VIP e Normal para ingressos de eventos, com atributos, métodos e
O documento introduz os conceitos fundamentais de orientação a objetos, incluindo classes, objetos, atributos, métodos, construtores e ciclo de vida de objetos. É dividido em seções sobre estrutura de classes, representações de classes, tipos de membros de classe e acesso aos mesmos.
Aula 03 - Introdução aos Diagramas de AtividadeAlberto Simões
Introdução aos Diagramas de Atividade (UML) para a disciplina de Planeamento de Sistemas de Informação do Mestrado em Informação Empresarial da Escola Superior de Estudos Industriais e de Gestão do Instituto Politécnico do Porto.
O documento fornece uma introdução aos principais conceitos da programação orientada a objetos, incluindo a história do paradigma, analogia biológica, princípios, classes, objetos, associações, herança, polimorfismo e outras características-chave.
O documento apresenta os principais tipos de estruturas condicionais em PHP como if, if/else, if/elseif/else e switch. Também explica como receber dados de formulários HTML usando as funções $_POST, $_GET e $_REQUEST e fornece quatro exercícios para praticar esses conceitos.
Programação Orientação a Objetos - HerançaDaniel Brandão
O documento discute o conceito de herança em programação orientada a objetos. Explica que a herança permite que novas classes herdem atributos e métodos de classes existentes, de forma a promover a reutilização de código e suporte à especialização. Apresenta exemplos de como implementar herança em um sistema acadêmico e em um sistema bancário, definindo classes genéricas e subclasses específicas.
Este documento discute os conceitos fundamentais do paradigma de orientação a objetos, incluindo:
1) Objetos representam entidades do mundo real com características e funções;
2) A abstração envolve isolar aspectos essenciais de um problema ignorando detalhes irrelevantes;
3) As operações de classificação, generalização e agregação ajudam a modelar objetos e suas relações.
O documento discute metodologias de desenvolvimento de software, enfatizando que deve ser realizado em equipe, seguir um processo e usar metodologias como a cascata, prototipação, ciclo de vida ou incremental. Também menciona modelos ágeis como Scrum e eXtreme Programming e a importância de seguir um processo para garantir qualidade e reduzir custos.
O documento discute os fundamentos da programação orientada a objetos em Java, incluindo: sintaxe de classes, atributos, métodos e construtores; tipos primitivos; comentários; e convenções de codificação.
O documento descreve o processo de normalização de dados, que envolve transformar tabelas não normalizadas em tabelas normalizadas através de três formas normais, eliminando redundâncias. Apresenta os conceitos de dependência funcional e as etapas de passagem à primeira, segunda e terceira forma normal, ilustrando com um exemplo de normalização de um relatório de alocação de projetos.
Java orientação a objetos (variaveis de instancia e metodos)Armando Daniel
O documento descreve os conceitos de variáveis de instância e métodos em Java. Explica que variáveis de instância armazenam dados específicos de cada objeto e são criadas quando um objeto é instanciado. Também descreve que métodos representam o comportamento de uma classe e podem receber parâmetros, retornar valores e acessar variáveis de instância.
O documento discute tratamento de exceções em Java. Ele explica que o tratamento de exceções permite detectar e lidar com erros durante a execução de um programa. Apresenta exemplos de código que usam blocos try-catch e try-finally para tratar erros como divisão por zero. Discute também as classes que identificam diferentes tipos de erros.
Apresentação programação orientada à objetossoncino
O documento descreve os principais conceitos da programação orientada a objetos, incluindo classes, objetos, atributos, métodos, herança, encapsulamento, abstração, polimorfismo e interfaces. A programação orientada a objetos é um paradigma de programação que modela sistemas de software com base na composição e interação entre unidades de software chamadas objetos.
O documento introduz o framework Swing para interfaces gráficas em Java. Swing fornece uma coleção rica de componentes visuais leves e independentes de plataforma. Swing usa o padrão MVC para separar a lógica da interface do usuário da apresentação e comportamento. Os principais conceitos introduzidos incluem componentes, contêineres, gerenciadores de layout, tratamento de eventos e classes de eventos.
O documento discute arrays no PHP, incluindo como criá-los, preenchê-los com valores, manipular seus índices e valores, usar funções para arrays e laços de repetição foreach. Também aborda arrays multidimensionais e exercícios para praticar os conceitos apresentados.
Aula 1 da disciplina de Programação Orientada a Objetos do 4º semestre do curso de Tecnologia em Análise e Desenvolvimento de Sistemas do IFSP Campus Capivari.
Java orientação a objetos (associacao, composicao, agregacao)Armando Daniel
O documento explica os conceitos de associação, agregação e composição em Java. A associação ocorre quando uma classe possui atributos do tipo de outra classe. A agregação ocorre quando uma classe usa outras classes em suas operações, mas não contém essas classes. A composição é semelhante à agregação, mas quando o objeto todo é destruído, seus objetos partes também devem ser destruídos. Exemplos de código são fornecidos para ilustrar cada conceito.
O documento discute a herança em Java para reestruturar código repetido de classes de funcionários. Propõe criar uma classe Funcionario como superclasse e subclasses Gerente e Professor que herdam atributos e métodos de Funcionario. Isso centraliza informações de funcionários e facilita manutenção caso necessitem adicionar novos atributos ou tipos de funcionários no futuro.
O documento discute o conceito de herança em programação orientada a objetos. Explica que a herança permite a reutilização de código através da criação de novas subclasses que herdam atributos e métodos de classes existentes (superclasses), permitindo economia de tempo no desenvolvimento de software. Detalha os conceitos de superclasse, subclasses, hierarquia de classes e relacionamentos entre classes, como herança simples e múltipla.
1. A aula introduz o PHP, abordando sua história, características e estrutura básica.
2. Variáveis, constantes, tipos de dados e operadores são explicados. Exemplos ilustram o uso de variáveis, operações matemáticas e lógicas.
3. O documento fornece os conceitos fundamentais da linguagem PHP para iniciantes.
1. Implemente classes Funcionário, Gerente e Assistente, com atributos e métodos próprios. Gerente e Assistente herdam de Funcionário.
2. Crie subclasses Técnico e Administrativo da classe Assistente, com atributos adicionais.
3. Implemente classes Pessoa, Trabalhador e Miserável com atributos, construtores e métodos. Trabalhador e Miserável herdam de Pessoa.
4. Crie classes Ingresso, VIP e Normal para ingressos de eventos, com atributos, métodos e
O documento introduz os conceitos fundamentais de orientação a objetos, incluindo classes, objetos, atributos, métodos, construtores e ciclo de vida de objetos. É dividido em seções sobre estrutura de classes, representações de classes, tipos de membros de classe e acesso aos mesmos.
Aula 03 - Introdução aos Diagramas de AtividadeAlberto Simões
Introdução aos Diagramas de Atividade (UML) para a disciplina de Planeamento de Sistemas de Informação do Mestrado em Informação Empresarial da Escola Superior de Estudos Industriais e de Gestão do Instituto Politécnico do Porto.
O documento fornece uma introdução aos principais conceitos da programação orientada a objetos, incluindo a história do paradigma, analogia biológica, princípios, classes, objetos, associações, herança, polimorfismo e outras características-chave.
O documento apresenta os principais tipos de estruturas condicionais em PHP como if, if/else, if/elseif/else e switch. Também explica como receber dados de formulários HTML usando as funções $_POST, $_GET e $_REQUEST e fornece quatro exercícios para praticar esses conceitos.
Programação Orientação a Objetos - HerançaDaniel Brandão
O documento discute o conceito de herança em programação orientada a objetos. Explica que a herança permite que novas classes herdem atributos e métodos de classes existentes, de forma a promover a reutilização de código e suporte à especialização. Apresenta exemplos de como implementar herança em um sistema acadêmico e em um sistema bancário, definindo classes genéricas e subclasses específicas.
Este documento discute os conceitos fundamentais do paradigma de orientação a objetos, incluindo:
1) Objetos representam entidades do mundo real com características e funções;
2) A abstração envolve isolar aspectos essenciais de um problema ignorando detalhes irrelevantes;
3) As operações de classificação, generalização e agregação ajudam a modelar objetos e suas relações.
O documento discute metodologias de desenvolvimento de software, enfatizando que deve ser realizado em equipe, seguir um processo e usar metodologias como a cascata, prototipação, ciclo de vida ou incremental. Também menciona modelos ágeis como Scrum e eXtreme Programming e a importância de seguir um processo para garantir qualidade e reduzir custos.
O documento discute os fundamentos da programação orientada a objetos em Java, incluindo: sintaxe de classes, atributos, métodos e construtores; tipos primitivos; comentários; e convenções de codificação.
O documento descreve o processo de normalização de dados, que envolve transformar tabelas não normalizadas em tabelas normalizadas através de três formas normais, eliminando redundâncias. Apresenta os conceitos de dependência funcional e as etapas de passagem à primeira, segunda e terceira forma normal, ilustrando com um exemplo de normalização de um relatório de alocação de projetos.
Java orientação a objetos (variaveis de instancia e metodos)Armando Daniel
O documento descreve os conceitos de variáveis de instância e métodos em Java. Explica que variáveis de instância armazenam dados específicos de cada objeto e são criadas quando um objeto é instanciado. Também descreve que métodos representam o comportamento de uma classe e podem receber parâmetros, retornar valores e acessar variáveis de instância.
O documento discute tratamento de exceções em Java. Ele explica que o tratamento de exceções permite detectar e lidar com erros durante a execução de um programa. Apresenta exemplos de código que usam blocos try-catch e try-finally para tratar erros como divisão por zero. Discute também as classes que identificam diferentes tipos de erros.
Apresentação programação orientada à objetossoncino
O documento descreve os principais conceitos da programação orientada a objetos, incluindo classes, objetos, atributos, métodos, herança, encapsulamento, abstração, polimorfismo e interfaces. A programação orientada a objetos é um paradigma de programação que modela sistemas de software com base na composição e interação entre unidades de software chamadas objetos.
O documento introduz o framework Swing para interfaces gráficas em Java. Swing fornece uma coleção rica de componentes visuais leves e independentes de plataforma. Swing usa o padrão MVC para separar a lógica da interface do usuário da apresentação e comportamento. Os principais conceitos introduzidos incluem componentes, contêineres, gerenciadores de layout, tratamento de eventos e classes de eventos.
O documento discute arrays no PHP, incluindo como criá-los, preenchê-los com valores, manipular seus índices e valores, usar funções para arrays e laços de repetição foreach. Também aborda arrays multidimensionais e exercícios para praticar os conceitos apresentados.
Aula 1 da disciplina de Programação Orientada a Objetos do 4º semestre do curso de Tecnologia em Análise e Desenvolvimento de Sistemas do IFSP Campus Capivari.
Caderno de Linguagem de Programação para Webgeysasz
Este documento fornece instruções sobre como configurar um ambiente de desenvolvimento local para PHP, incluindo:
1) A instalação de um servidor local como o XAMPP para executar aplicativos PHP no computador;
2) A configuração de um editor de código como o Sublime Text ou Eclipse para editar arquivos PHP;
3) Um exemplo "Olá Mundo" para testar a instalação.
Esta apresentação mostra como usar o site SlideShare para publicar apresentações de slides de forma online. Explica como criar uma conta no site, enviar apresentações e visualizá-las online sem a necessidade de ter o software de apresentações instalado. O objetivo é ensinar como compartilhar conhecimento através deste serviço gratuito de rede social.
O documento apresenta um mini-curso sobre WordPress ministrado por Rafael Wendel Pinheiro. Ele discute o histórico e as informações pessoais do professor, o conteúdo programático incluindo a instalação e customização do WordPress, e o que é e como usar o WordPress como um sistema de gerenciamento de conteúdo flexível.
Aula 2 da disciplina de Programação Orientada a Objetos. Os slides abordam a conversão de tipos de dados, tratamento de excessões, a classe String e a biblioteca JOptionPane
PHP Experience 2016 - [Palestra] Rumo à Certificação PHPiMasters
Ari Stopassola Jr, Analista de Sistemas do perito.inf.br, fez a palestra "Rumo à Certificação PHP", no PHP Experience 2016.
O iMasters PHP Experience 2016 aconteceu nos dias 21 e 22 de Março de 2015, no Hotel Tivoli em São Paulo-SP
http://phpexperience2016.imasters.com.br/
A metodologia SCRUM é baseada em iterações curtas chamadas sprints, com reuniões diárias para acompanhamento do progresso e reuniões no início e fim do sprint para planejamento e revisão. O time de desenvolvimento seleciona funcionalidades do backlog do produto para implementar em cada sprint.
O documento apresenta um curso sobre orientação a objetos com PHP, abordando conceitos como classes, atributos, métodos, construtores, herança e polimorfismo. O curso também mostra como acessar bancos de dados MySQL usando classes.
Breno Oliveira, Líder Técnico Moip, ministrou o workshop "Elastic Search: Turbinando sua aplicação PHP", no PHP Experience 2016.
O iMasters PHP Experience 2016 aconteceu nos dias 21 e 22 de Março de 2015, no Hotel Tivoli em São Paulo-SP
http://phpexperience2016.imasters.com.br/
Este documento fornece um resumo sobre arrays no PHP. Ele discute arrays indexados versus associativos, como identificar e armazenar elementos em arrays, arrays multidimensionais, extrair múltiplos valores, percorrer e ordenar arrays.
PHP arrays can be indexed or associative. Indexed arrays are similar to conventional programming language arrays while associative arrays are like dictionaries or maps where elements can be accessed by keys. Array elements can be of any type and arrays can be heterogeneous. PHP provides many functions for manipulating arrays like count(), sizeof(), array_slice(), in_array(), sorting functions, and more.
O documento apresenta uma pesquisa sobre a linguagem PHP realizada por um aluno. A pesquisa descreve a origem e evolução da linguagem PHP, desde sua criação em 1994 até a versão atual PHP 5, e apresenta exemplos básicos de código PHP, incluindo variáveis, formulários, acesso a banco de dados e interação com o navegador.
Este documento fornece uma introdução à orientação a objetos em PHP, discutindo conceitos como classes, objetos, métodos mágicos, herança, interfaces, exceptions e padrões de projeto. O documento também aborda tópicos como uso do PDO para acesso a banco de dados e frameworks PHP.
O documento fornece uma introdução ao PHP, incluindo sua história, características, sintaxe básica e conceitos importantes como variáveis, arrays, formulários e estruturas condicionais.
Each month, join us as we highlight and discuss hot topics ranging from the future of higher education to wearable technology, best productivity hacks and secrets to hiring top talent. Upload your SlideShares, and share your expertise with the world!
Not sure what to share on SlideShare?
SlideShares that inform, inspire and educate attract the most views. Beyond that, ideas for what you can upload are limitless. We’ve selected a few popular examples to get your creative juices flowing.
SlideShare is a global platform for sharing presentations, infographics, videos and documents. It has over 18 million pieces of professional content uploaded by experts like Eric Schmidt and Guy Kawasaki. The document provides tips for setting up an account on SlideShare, uploading content, optimizing it for searchability, and sharing it on social media to build an audience and reputation as a subject matter expert.
ebook-completo c# o melhor para começar no c#biandamakengo08
O documento apresenta um resumo sobre o curso de linguagem de programação C# avançado. Ele aborda conceitos como classes, métodos, programação orientada a objetos, expressões e LAMBDA. O curso é dividido em três módulos, sendo o primeiro sobre conceitos básicos como classes, métodos e construtores; o segundo sobre programação orientada a objetos; e o terceiro sobre expressões, LAMBDA e delegates.
1) O documento discute vários tópicos avançados da linguagem Java, incluindo como usar múltiplas classes em um arquivo, classes internas e anônimas, classes abstratas versus interfaces, e adapters.
2) É apresentado como usar mais de uma classe em um arquivo Java e um exemplo é fornecido.
3) Classes internas, anônimas e abstratas são explicadas e diferenciadas de interfaces.
O documento fornece instruções sobre como criar um objeto em PHP utilizando Orientação a Objetos. Ele explica o que é uma classe e como criar métodos dentro dela, além de mostrar um exemplo de classe "Usuario_dao" com métodos para gravar, alterar, listar e excluir usuários. O leitor é orientado a criar este objeto e testá-lo copiando arquivos de um sistema anterior.
O documento discute arquitetura em camadas com Java e Reflection. Ele apresenta os conceitos de arquitetura em camadas, dividindo as aplicações em camadas de apresentação, lógica de negócios, dados e persistência. Também explica o que é Reflection no Java e demonstra exemplos práticos de seu uso para recuperar metadados de objetos.
1. O documento apresenta um palestrante chamado Stefan Teixeira e seus contatos.
2. A palestra trata de Clean Code para Testers e aborda 6 pontos importantes: nomes significativos, classes pequenas, funções pequenas, comentários, formatação e testes limpos.
3. Manter código e testes limpos é importante para reduzir custos e garantir qualidade ao longo do tempo.
O documento apresenta um tutorial sobre herança em Java com três exemplos. No primeiro exemplo, cria-se uma classe ComissaoEmpregado que herda de Object. Nos próximos exemplos, cria-se classes adicionais para diferentes tipos de empregados, demonstrando como reutilizar código através da herança. O documento explica como implementar atributos, métodos e relacionamentos entre classes para modelar diferentes tipos de empregados em uma aplicação de folha de pagamento.
O documento discute sobre arrays em Java, apresentando suas características, como declarar e inicializar arrays unidimensionais e multidimensionais, iterar sobre arrays, e exemplos de código. Em três frases:
Arrays são estruturas de dados que armazenam múltiplos valores do mesmo tipo. O documento explica como declarar e manipular arrays unidimensionais e multidimensionais em Java, incluindo inicialização, iteração e exemplos de código. Além disso, discute sobre pontos negativos dos arrays e apresenta alternativas como o recurso enhanced for.
O documento apresenta uma introdução sobre sistemas computacionais e suas necessidades comuns de armazenar e recuperar informações de forma eficiente. Em seguida, discute sobre a persistência de dados e o framework JDBC no Java para acesso a bancos de dados. Por fim, apresenta um tutorial passo a passo sobre como desenvolver uma agenda de contatos usando banco de dados no Java.
Este documento apresenta um curso sobre desenvolvimento web com PHP orientado a objetos. Apresenta o professor e os objetivos da disciplina, além de referências bibliográficas e sites de apoio. Também descreve os paradigmas de programação procedural e orientado a objetos, conceitos importantes de PHP OO como classes, objetos, herança, polimorfismo, construtores e destrutores. Por fim, apresenta exemplos e exercícios para fixar os conceitos.
Java 08 Modificadores Acesso E Membros De ClasseRegis Magalhães
O documento discute modificadores de acesso em Java e como eles podem ser usados para encapsular membros de classe e garantir o baixo acoplamento entre classes. É explicado que atributos geralmente devem ser declarados como privados e acessados via getters e setters públicos.
Este capítulo discute a organização de classes em pacotes no Java. Explica como separar classes em diferentes pacotes e diretórios para evitar conflitos de nomes. Também aborda como importar classes de outros pacotes e os modificadores de acesso público e privado.
O documento discute classes em C#, incluindo: (1) classes são importantes para programação orientada a objetos; (2) namespaces organizam classes em aplicações; (3) modificadores de acesso controlam visibilidade de membros de classe.
O documento discute classes abstratas, anônimas e interfaces em Java. Apresenta classes abstratas como aquelas que não podem ser instanciadas e servem apenas como modelo para classes concretas. Discute também métodos abstratos que forçam classes filhas a implementá-los. Apresenta interfaces como contratos que definem métodos públicos e abstratos que classes podem implementar. E explica classes anônimas como classes sem nome usadas para implementar interfaces.
O documento resume uma aula sobre orientação a objetos. Resume três pontos principais:
1) Apresenta os objetivos da aula, que são introduzir conceitos de orientação a objetos como UML e como aplicá-los no Java.
2) Explica brevemente a história da orientação a objetos e algumas linguagens que a suportam como Java, C++ e PHP.
3) Discutem conceitos básicos como classes, atributos, métodos e objetos e como representá-los em UML e Java.
O documento descreve e compara diversas linguagens de programação orientadas a objetos, incluindo suas características, conceitos e sintaxes. Smalltalk é destacada como uma das primeiras linguagens a levar o paradigma orientado a objetos às últimas consequências, enquanto C++ e Java são apresentadas como evoluções de C e influenciadas por Smalltalk.
Fundamentos da Programação PHP OO - Aula 3Thyago Maia
O documento discute conceitos de programação orientada a objetos em PHP, como classes finais, métodos finais, encapsulamento, armazenamento de dados em classes, métodos estáticos, interfaces e o uso do PDO para acesso a bancos de dados.
O documento introduz conceitos básicos de programação orientada a objetos e Java, incluindo: (1) Java é uma linguagem obrigatoriamente orientada a objetos com classes e herança; (2) A sintaxe básica de Java como classes, atributos, métodos, construtores e tipos primitivos; (3) A criação e uso de objetos em Java.
Semelhante a Aula 5 encapsulamento, associação, polimorfismo, interfaces (20)
4. • Encapsulamento
– O conceito de encapsulamento visa
“esconder” atributos e métodos de uma
classe que são interessantes não serem
“vistos” fora da classe.
– Nesse contexto, quem for consumir a classe,
saberá “o que ela faz” e não “como ela
faz”.
– A classe será acessada apenas por seus
métodos públicos, que são as “interfaces da
classe”. 4
5. • Encapsulamento
– Imagine a classe “Carro”. Essa classe possui
os atributos capacidadeTanque e
qtdeCombustivel.
– É interessante que esses atributos sejam
implementados como “privados” para garantir
que anomalias como quantidade >
capacidade.
5
6. • Encapsulamento
6
public class Carro{
private int capacidadeTanque;
private int qtdeCombustivel;
public Carro(int capacidadeTanque){
this.capacidadeTanque = capacidadeTanque;
}
public void abastecer(int qtdeCombustivel){
if((this.qtdeCombustivel + qtdeCombustivel) > this.capacidadeCombustivel){
System.out.println(“Quantidade excede o limite do tanque!”);
}
else{
this.qtdeCombustivel = this.qtdeCombustivel + qtdeCombustivel;,
System.out.println(“Carro abastecido. Quantidade atual: ” + this.qtdeCombustivel );
}
}
}
7. • Encapsulamento
7
Carro c = new Carro(50);
c.abastecer(40); // Imprime: “Carro abastecido. Quantidade atual: 40”
c.abastecer(15); // Imprime: “Quantidade excede o limite do tanque”
c.abastecer(10); // Imprime: “Carro abastecido. Quantidade atual: 50”
Externamente não é possível saber que o método abastecer está acessando
os atributos capacidadeTanque e qtdeCombustivel e por vezes alterando
esse segundo.
8. • Encapsulamento
– É interessante que todos os atributos de uma
classe sejam encapsulados, ou seja, não
sejam públicos.
– Dessa forma, eles não poderão ser
acessados/modificados diretamente fora da
classe, apenas através de comportamentos
(métodos).
– Para isso, deve-se implementar os métodos
set e get.
8
9. • Encapsulamento
– Método set serve para atribuir um valor a uma
propriedade da classe.
– Método get serve para recuperar/visualizar o
valor de uma propriedade da classe
9
10. • Encapsulamento
10
public class Pessoa{
private String nome;
private String email;
public void setNome(String nome){
this.nome = nome;
}
public String getNome(){
return this.nome;
}
public void setEmail(String email){
this.email = email;
}
public String getEmail(){
return this.email;
}
}
12. • Exercício 1:
– Crie a classe Usuario com os atributos nome,
login e senha.
– Como você implementaria a classe para que o
atributo nome só salvasse nomes com CAIXA
ALTA, login só caixa baixa e senha uma String
com limite de 16 caracteres?
– Implemente!!!
12
14. • Associação
– A associação entre classes ocorre quando o
atributo de uma classe é do tipo de outra
classe.
– Por exemplo, imagine a classe Endereço com
os atributos rua e numero. Imagine também a
classe Cliente que tem os atributos nome e
idade. Cliente possui Endereço, logo, nessa
classe terá um atributo do tipo Endereço.
14
15. • Associação
15
public class Endereco{
private String rua;
private String numero;
public void setRua(String rua){
this.rua = rua;
}
public String getRua(){
return this.rua;
}
public void setNumero(String numero){
this.numero = numero;
}
public String getNumero(){
return this.numero;
}
}
16. 16
public class Cliente{
private String nome;
private int idade;
private Endereco endereco;
public void setNome(String nome){
this.nome = nome;
}
public String getNome(){
return this.nome;
}
public void setIdade(int idade){
this.idade = idade;
}
public int getIdade(){
return this.idade;
}
public void setEndereco(Endereco endereco){
this.endereco = endereco;
}
public Endereco getEndereco(){
return this.endereco;
}
}
17. • Associação
17
Endereco e = new Endereco();
e.setRua(“Rua das Flores”);
e.setNumero(“123”);
Cliente c = new Cliente();
c.setNome(“Joao”);
c.setIdade(30);
c.setEndereco(e);
System.out.println(“Rua: ” + c.getEndereco().getRua() );
//Imprime: “Rua: Rua das Flores”
19. • Polimorfismo
– Polimorfismo é a capacidade de uma instância
se portar de várias formas de acordo com sua
referência.
– Por exemplo, retome o projeto da aula anterior
onde existia a classe Funcionario e Gerente.
– Sabe-se que todo gerente é um funcionário, e
isso é viabilizado através da herança.
19
20. • Polimorfismo
20
Gerente g = new Gerente(“Joao”);
g.salario = 1500;
g.horasExtras = 10;
Funcionario f = g;
f.calcularSalarioTotal();
Vai ser executado o método da
classe Funcionario ou Gerente?
22. • Interfaces
– Em OO, as Interfaces fornecem uma lista de
métodos que as classes que a implementarem
deverão ter.
– Sua principal função é fornecer um mecanismo
de desacoplar as classes (diminuir a
dependência entre as classes)
– Serve como um “contrato” que todas as classes
devem cumprir quando assumem a
implementação da Interface.
22
24. • Interfaces
– No Sistema da Empresa XYZ os Diretores e
Gerentes possuem acesso através de um
login/senha. Os Operadores NÃO POSSUEM
acesso ao sistema.
– Como fazer?
24
26. • Interfaces
– Nesse caso, pode-se criar uma Interface
“IAutenticavel” e nela declarar o método
“autenticar(): boolean”. Todas as classes que
tiverem acesso através de login e senha
deverão implementar essa Interface e
consequentemente possui o método
“autenticar(): boolean”
26
31. • Interfaces
– Uma classe pode implementar várias Interfaces
distintas
– A classe pode ter outros métodos particulares
além daqueles declarados pela Interface a qual
implementa
– Uma variável do tipo “Interface” pode receber
uma instância de qualquer classe que a
implementa.
31
33. • Exercício 2:
– Crie uma classe chamada ContaBancaria. Essa classe
deverá ter os atributos numeroConta, saldo e
historico. Faça os métodos:
• Construtor para receber o numero e o saldo inicial da conta.
• depositar: recebe um valor e acopla ao saldo
• sacar: recebe um valor a ser sacado do saldo
• consultarSaldo: Imprime o número da conta e o saldo atual.
(Obs: cada consulta resulta em uma taxa de 0,25 no saldo)
• aplicarReajuste: Atualiza o saldo em 0,02%
• exibirHistorico: deverá exibir todas as ações já executadas
por essa conta.
33