Introdução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional

Tamanho: px
Começar a partir da página:

Download "Introdução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional"

Transcrição

1 Introdução à Linguagem JAVA Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação Laboratório de Visão Computacional

2 OOP e JAVA Classe Objeto Atributo Metodo Nome Tipo Argumento visibilidade

3 Orientação a Objetos O conceito de orientação à objetos é o mais importante em Java; A programação orientada a objetos é baseada em classes e seus respectivos encapsulamentos.

4 ABSTRAÇÃO É utilizada para a definição de entidades do mundo real. Essas entidades são consideradas tudo que é real, tendo como consideração as suas características e ações; Abstrações do mundo real

5 CLASSE Uma classe é um tipo definido pelo usuário para especificar uma determinada abstração, denominada objeto. A classe envolve, associa, funções e dados e controla o acesso a estes. Uma classe é definida através de seus: Atributos Métodos

6 OBJETO Um objeto, representa a instancia de uma classe; Ele guarda em sua definição os atributos e métodos definidos na sua classe.

7 Um objeto precisa ser criado. Para que seja possível acessar as variáveis e os métodos de um objeto, é preciso atribuir uma referência ao objeto. O tipo de uma referência, ou seja a classe à qual pertence o objeto ao qual ela vai referir-se, precisa ser declarado. Declaração: a instrução seguinte declara que a variável nomedoobjeto refere-se a um objeto instância da classe NomeDaClasse: NomeDaClasse nomedoobjeto;

8 Criação: a seguinte instrução cria (em memória) um novo objeto instância da classe NomeDaClasse, que será referenciado pela variável nomedoobjeto previamente declarada: nomedoobjeto = new NomeDaClasse(); As duas instruções acima podem ser combinadas numa só: NomeDaClasse nomedoobjeto = new NomeDaClasse();

9 MÉTODOS Métodos são procedimentos que formam os comportamentos e serviços oferecidos por objetos de uma classe. Eles são análogos à funções ou procedimentos da programação estruturada.

10 CONSTRUTOR Construtor é um método chamado assim que uma nova instância do objeto for criada através do operador new. Tal método geralmente é responsável pela alocação de recursos necessários ao funcionamento do objeto além da definição inicial das variáveis de estado (atributos).

11 Sua sintaxe básica é método. idêntica a de qualquer A assinatura de um construtor diferencia-se das assinaturas de outros métodos por não ter nenhum tipo de retorno (nem mesmo void). Além disto, o nome do construtor deve ser o próprio nome da classe.

12 ATRIBUTOS Os atributos indicam as possíveis informações armazenadas por um objeto de uma classe, representando o estado de cada objeto, ou seja, são os elementos que definem a estrutura de uma classe.

13 Os atributos também são conhecidos como variáveis de classe, e podem ser divididos em dois tipos básicos: atributos de instância e de classe. Os valores dos atributos de instância determinam o estado de cada objeto. Um atributo de classe possui um estado que é compartilhado por todos os objetos de uma classe.

14 Exemplo 1 Programa 01 : Exemplo de um método chamado pelo método principal main()

15 package pacoteexemplo01; // PROGRAMA PARA EXEMPLIFICAR A UTILIZACAO DE UM METODO DENTRO DE UMA CLASSE public class iniciaraplicativo public static void main(string[] args) int a; float b; a = 5; b = fatorial ( a ); System.out.printf( " a = %d - fatorial = %10.0f\n", a, b ); //*************************************************************** public static float fatorial ( int x ) float y; int k; y = (float)1.0; for ( k = 1; k <= x; k++ ) y = y * k; return ( y );

16 Criando uma classe. Exemplo 2 Definindo os atributos Definindo os métodos ( incluindo o construtor ) Definindo um objeto ( diretamente ) Mostrando o objeto

17 package pacoteexemplo02; /* * EXEMPLO DE UMA CLASSE CONTENDO GET E SET * EXEMPLO DE INSTANCIA DE UM OBJETO * EXEMPLO DE UTILIZACAO DO OBJETO */ public class iniciaraplicativo public static void main(string[] args) int matriculaaluno; String nomealuno; int idadealuno; String cursoaluno; float mediageralaluno;

18 DADOS_ALUNO alunosccm15; // DEFININDO UM OBJETO alunosccm15 = new DADOS_ALUNO ( 12422, "Jose Araujo, 21, "Engenharia Mecanica", (float)78.32 ); matriculaaluno = alunosccm15.getmatricula(); nomealuno = alunosccm15.getnome(); idadealuno = alunosccm15.getidade(); cursoaluno = alunosccm15.getcurso(); mediageralaluno = alunosccm15.getmediageral(); // SAIDA System.out.printf ( "matricula = %d\n", matriculaaluno ); System.out.printf ( "nome do aluno: %s\n", nomealuno ); System.out.printf ( "idade: %d\n", idadealuno ); System.out.printf ( "nome do curso: %s\n", cursoaluno ); System.out.printf ( "media Geral do curso: %10.2f\n", mediageralaluno );

19 package pacoteexemplo02; public class DADOS_ALUNO // ATRIBUTOS DA CLASSE public int matriculan; public String nomen; public int idaden; public String curson; public float mediageraln; //******************************************************* // CONSTRUTOR DA CLASSE public DADOS_ALUNO ( int matricula, String nome, int idade, String curso, float mediageral ) setmatricula( matricula ); setnome( nome ); setidade ( idade ); setcurso ( curso ); setmediageral ( mediageral );

20 public void setmatricula( int matriculax ) matriculan = matriculax; //******************************************************* public void setnome ( String nomex ) nomen = nomex; //******************************************************* public void setidade ( int idadex ) idaden = idadex; //******************************************************* public void setcurso ( String cursox ) curson = cursox; //******************************************************* public void setmediageral ( float mediageralx ) mediageraln = mediageralx;

21 public int getmatricula () return ( matriculan ); //******************************************************* public String getnome () return ( nomen ); //******************************************************* public int getidade () return ( idaden ); //******************************************************* public String getcurso () return ( curson ); //******************************************************* public float getmediageral () return ( mediageraln );

22 Criando uma classe. Exemplo 3 Definindo os atributos Definindo os métodos Definindo um objeto ( leitura de dados ) Mostrando o objeto

23 package pacoteexemplo03; /* * EXEMPLO DE ENTRADA DE DADOS PARA OS PARAMETROS DE * DEFINICAO DA INSTANCIA DA CLASSE * * VARIAVEIS QUE DEFINEM O OBJETO SAO DIFERENTES DAS * VARIAVEIS QUE PARAMETRIZAM O OBJETO NA SUA INSTANCIA */ import java.util.*; public class iniciaraplicativo public static void main(string[] args) Scanner entrada; String registroentrada; int matriculaaluno_dado, matriculaaluno_obj; String nomealuno_dado, nomealuno_obj; int idadealuno_dado, idadealuno_obj; String cursoaluno_dado, cursoaluno_obj; float mediageralaluno_dado, mediageralaluno_obj; DADOS_ALUNO alunosccm15_dado;

24 // DEFININDO UM OBJETO entrada = new Scanner ( System.in ); System.out.printf ( "entre com a matricula do aluno\n" ); registroentrada = entrada.nextline(); matriculaaluno_dado = Integer.parseInt(registroEntrada); System.out.printf ( "entre com o nome do aluno\n" ); registroentrada = entrada.nextline(); nomealuno_dado = registroentrada; System.out.printf ( "entre com a idade do aluno\n" ); registroentrada = entrada.nextline(); idadealuno_dado = Integer.parseInt(registroEntrada); System.out.printf ( "entre com o curso do aluno\n" ); registroentrada = entrada.nextline(); cursoaluno_dado = registroentrada; System.out.printf ( "entre com a media do aluno\n" ); registroentrada = entrada.nextline(); mediageralaluno_dado = Float.parseFloat(registroEntrada); entrada.close();

25 // definindo o objeto alunosccm15_dado = new DADOS_ALUNO ( matriculaaluno_dado, nomealuno_dado, idadealuno_dado, cursoaluno_dado, mediageralaluno_dado ); matriculaaluno_obj = alunosccm15_dado.getmatricula(); nomealuno_obj = alunosccm15_dado.getnome(); idadealuno_obj = alunosccm15_dado.getidade(); cursoaluno_obj = alunosccm15_dado.getcurso(); mediageralaluno_obj = alunosccm15_dado.getmediageral(); // SAIDA System.out.printf ( "matricula = %d\n", matriculaaluno_obj ); System.out.printf ( "nome do aluno: %s\n", nomealuno_obj ); System.out.printf ( "idade: %d\n", idadealuno_obj ); System.out.printf ( "nome do curso: %s\n", cursoaluno_obj ); System.out.printf ( "media Geral do curso: %10.2f\n", mediageralaluno_obj );

26 ENCAPSULAMENTO É a técnica utilizada para esconder uma idéia, ou seja, não expor detalhes internos para o usuário, tornando partes do sistema mais independentes possível. É o principal conceito relacionado com a segurança da informação dentro do aplicativo. Por exemplo, quando um controle remoto estraga apenas é trocado ou consertado o controle e não a televisão inteira.

27 Nesse exemplo do controle remoto, acontece a forma clássica de encapsulamento, pois quando o usuário muda de canal não se sabe que programação acontece entre a televisão e o controle para efetuar tal ação. Como um exemplo mais técnico pode-se descrever o que acontece em um sistema de vendas, onde tem-se cadastros de funcionários, usuários, gerentes, clientes, produtos entre outros. Se por acaso acontecer um problema na parte do usuário é somente nesse setor que será realizada a manutenção não afetando os demais.

28 Em resumo, o encapsulamento protege os atributos do objeto e evita a manipulação de/por outros objetos, tais como acessos não autorizados.

29 O encapsulamento em Java é implementado através de seus modificadores de acesso: público private protegido implícito Portanto, cada método ou variável em Java, deve ser declarado com um destes atributos.

30 MODIFICADORES Usado para modificar o modo como são declaradas as classes, métodos e variáveis. Existem três modificadores de acesso e o quarto nível (acesso default), quando não se usa nenhum dos três modificadores. Toda classe, método e variáveis de instância em Java, tem um controle de acesso.

31 MODIFICADORES DE CLASSES Uma classe pode ser declarada apenas com acesso public ou default. O acesso public, permite que todas as classes tenha acesso a esta classe. para acessar uma classe public que esteja em outro pacote é necessário o uso da declaração import.

32 Classes que constituem aplicativos independentes e applets devem ser públicas. Uma classe que não for declarada pública somente poderá ser acessada por outras classes do mesmo pacote. Deve-se notar que cada arquivo fonte pode conter somente uma classe pública. Caso o arquivo contenha uma classe pública, ele deve possuir o mesmo nome que esta classe, com a terminação.java.

33 Modificadores de acesso public Quando um método ou variável - membro é declarado como public, ele pode ser acessado por qualquer outra classe, independentemente do pacote a que ela pertença.

34 Modificador de acesso private Quando um método ou variável é declarado como private não pode se acessado por nenhuma outra classe, e não é visto nas subclasses, assim não usa o overriding.

35 Modificador de acesso protected e default o controle de acesso protected e default são parecidos, mas tem uma diferença fundamental. Um membro default só pode ser acessado se a classe que estiver acessando é do mesmo pacote, enquanto o protected pode ser acessado (através de herança) por uma subclasse mesmo se subclasse estiver em pacote diferente.

36 Métodos GET e SET por que criar métodos para acessar variáveis, quando se pode acessá-las diretamente? questão de segurança. As variáveis private só podem ser acessadas de dentro da Classe, portanto elas são invisíveis fora do escopo da classe/objeto. Assim, evita-se que outros métodos, classes ou hackers tenham acesso aos dados de determinada classe.

37 Como tratar, então, essas variáveis? Aí entra a utilização dos métodos GET e SET. Com eles, permiti-se o acesso a essas variáveis, senão não haveria sentido em usar esses atributos, porém, tem-se um total controle sobre elas através destes métodos. Os métodos GET e SET são técnicas padronizadas para gerenciamento sobre o acesso dos atributos. Nesses métodos determina-se quando será alterado um atributo e o acesso ao mesmo, tornando o controle e modificações mais práticas e limpas, sem contudo precisar alterar assinatura do método usado para acesso ao atributo.

38 Método SET Para se alterar os valores de um atributo de uma classe de maneira protegida, utiliza-se os métodos SET. Esse método não terá um retorno, pois o atributo será somente modificado, criando um método de tipo VOID, sem retorno. Porém ele deve receber algum argumento para que possa provocar a devida alteração.

39 Método GET São métodos utilizados quando se acessa alguns atributos da classe; Esse método sempre retornará um valor, seja ele String, int,double, etc.

40 Exemplo 4 Programa exemplificando a utilização de: Atributos Métodos GET e SET modificadores

41 package pacoteexemplo04; public class DADOS_ALUNO // ATRIBUTOS DA CLASSE private int matriculan; private String nomen; private int idaden; private String curson; private float mediageraln; //******************************************************* // CONSTRUTOR DA CLASSE public DADOS_ALUNO ( int matricula, String nome, int idade, String curso, float mediageral ) setmatricula( matricula ); setnome( nome ); setidade ( idade ); setcurso ( curso ); setmediageral ( mediageral );

42 private void setmatricula( int matriculax ) matriculan = matriculax; //******************************************************* private void setnome ( String nomex ) nomen = nomex; //******************************************************* private void setidade ( int idadex ) idaden = idadex; //******************************************************* private void setcurso ( String cursox ) curson = cursox; //******************************************************* private void setmediageral ( float mediageralx ) mediageraln = mediageralx;

43 public int getmatricula () return ( matriculan ); //******************************************************* public String getnome () return ( nomen ); //******************************************************* public int getidade () return ( idaden ); //******************************************************* public String getcurso () return ( curson ); //******************************************************* public float getmediageral () return ( mediageraln );

44 THIS A utilização da cláusula THIS faz referência ao atributo da classe dentro da qual se está trabalhando.

45 Exemplo 5 Programa exemplificando a utilização de: Clausula THIS Utiliza mesmo nome de atributos e parâmetros dos métodos SET. Neste caso pode ficar confuso a diferenciação dos nomes das variáveis.

46 package pacoteexemplo05; public class DADOS_ALUNO // ATRIBUTOS DA CLASSE private int matricula; private String nome; private int idade; private String curso; private float mediageral; //******************************************************* // CONSTRUTOR DA CLASSE public DADOS_ALUNO ( int matricula, String nome, int idade, String curso, float mediageral ) setmatricula( matricula ); setnome( nome ); setidade ( idade ); setcurso ( curso ); setmediageral ( mediageral );

47 private void setmatricula( int matriculax ) matricula = matriculax; //******************************************************* private void setnome ( String nomex ) nome = nomex; //******************************************************* private void setidade ( int idadex ) idade = idadex; //******************************************************* private void setcurso ( String cursox ) curso = cursox; //******************************************************* private void setmediageral ( float mediageralx ) mediageral = mediageralx;

48 public int getmatricula () return ( matricula ); //******************************************************* public String getnome () return ( nome ); //******************************************************* public int getidade () return ( idade ); //******************************************************* public String getcurso () return ( curso ); //******************************************************* public float getmediageral () return ( mediageral );

49 Exemplo 6 Programa exemplificando a utilização de: Clausula THIS Não utiliza os métodos SET, o que é permitido, desde que a atualização dos atributos seja feita no construtor da classe, como é mostrado no exemplo. Entretanto, neste caso, é obrigatório a utilização da clausula THIS, caso deseja-se atributos e parâmetros com mesmos nomes.

50 package pacoteexemplo06; public class DADOS_ALUNO // ATRIBUTOS DA CLASSE private int matricula; private String nome; private int idade; private String curso; private float mediageral; //******************************************************* // CONSTRUTOR DA CLASSE public DADOS_ALUNO ( int matricula, String nome, int idade, String curso, float mediageral ) this.matricula = matricula; this.nome = nome; this.idade = idade; this.curso = curso; this.mediageral = mediageral;

51 public int getmatricula () return ( matriculan ); //******************************************************* public String getnome () return ( nomen ); //******************************************************* public int getidade () return ( idaden ); //******************************************************* public String getcurso () return ( curson ); //******************************************************* public float getmediageral () return ( mediageraln );

52 Static Quando se define uma classe e cria-se vários objetos dela, cada objeto irá ser uma cópia fiel da classe, porém com suas próprias variáveis e métodos em lugares distintos da memória. Ou seja, um objeto tem suas variáveis próprias, diferentes de outro objeto, embora ambos tenham o mesmo 'modelo', que é uma classe.

53 Quando se define variáveis com a palavra static em uma classe ela terá um comportamento especial: ela será a mesma para todos os objetos daquela classe. Ou seja, não haverá um tipo dela em cada objeto. Todos os objetos, ao acessarem e modificarem essa variável, acessarão a mesma variável, o mesmo espaço da memória, e a mudança poderá ser vista em todos os objetos.

54 Variáveis e métodos estáticos pertencem à classe e não a uma instância. Isso quer dizer que eles podem ser utilizados sem ter que instanciar a classe. Além disso, quando esta classe for carregada, as variáveis estáticas serão compartilhadas por todos os objetos. Variáveis estáticas não necessitam serem inicializadas, pois recebem o valor default, da mesma forma que variáveis de instância.

55 Utilizam-se variáveis estáticas para guardar valores que são específicos da classe e não de um objeto, ou seja, todos os objetos terão acesso à mesma cópia da variável estática. Isso quer dizer que quando a classe for chamada pela primeira vez pela JVM, a variável estática será inicializada; se essa variável for alterada no construtor da classe, toda vez que essa classe for instanciada, essa variável será alterada e esse valor será compartilhado para todas as instâncias.

56 Exemplos Programas 7, 7a, 7b, e 7c Exemplos de utilização do modificador static

57 Variáveis - Variável local definida dentro do método - Variável de instância ou atributo definida dentro de um classe, mas pertence ao objetos instanciados desta classe - variável de referência variável para referenciar um objeto - variável de classe variável estática pertencente a classe e comum a todos os objetos da classe

58 Exemplo public class A private int id; // variável de instância ou atributo private static int contator; // variável estática de classe //********************************************************************** void metodoa() int a; // variável local //********************************************************************** public static void main(string [] args) A objetoa; // variável de referência objetoa = new A(); // instância de um objeto do tipo A //**********************************************************************

59 HERANÇA Na Programação Orientada a Objetos o significado de herança tem o mesmo significado para o mundo real. Assim como um filho pode herdar alguma característica do pai, na Orientação a Objetos é permitido que uma classe herde atributos e métodos da outra, tendo apenas uma restrição para a herança.

60 Os modificadores de acessos das classes, métodos e atributos só podem estar com visibilidade public e protected para que sejam herdados. Uma das grandes vantagens de usar o recurso da herança é na reutilização do código. Esse reaproveitamento pode ser acionado quando se identifica que o atributo ou método de uma classe será igual para as outras. Para efetuar uma herança de uma classe é utilizada a palavra reservada extends

61 class Circulo private float raio; Circulo() setraio( 3.0 ); void setraio( float r ) this.raio = r class Pneu extends Circulo Pneu p = new Pneu(); p.raio = 10.0; // Erro de compilação. O Atributo raio é privado da classe Circulo p.setraio(10.0); //Correto, pois a classe Pneu está utilizando os // métodos definidos na classe Circulo para fazer // acesso ao atributo privado raio

62 O MODELO MVC O MVC ( Model, View e Controller ) é uma arquitetura ou padrão de programação que permite dividir as funcionalidades de um sistema em camadas, com o objetivo de facilitar a resolução de um problema maior.

63 Definição das camadas Modelo O modelo (Model) é utilizado para manipular informações de forma mais detalhada, sendo recomendado que, sempre que possível, se utilize dos modelos para realizar consultas, cálculos e todas as regras de negócio do sistema.

64 Visão A camada da visão ( view ) é responsável por tudo que o usuário final visualiza no aplicativo, toda a interface ou informação, não importando sua fonte de origem.

65 Controle A camada de Controle ( controller ), é responsável por controlar todo o fluxo de informação que passa pelo sistema. É no controle que se decide se, o que, quando e onde quais informações devem ser geradas, quais regras devem ser acionadas e para onde as informações devem ir, também é lá onde todas as operações devem ser executadas. Em resumo, é o controle que executa uma regra de negócio (modelo) e repassa a informação para a visualização (visão).

66 Por quer usar MVC Com o aumento da complexidade dos sistemas desenvolvidos hoje, essa arquitetura tem como foco dividir um grande problema em vários problemas menores e de menor complexidade. Dessa forma, qualquer tipo de alterações em uma das camadas não interfere nas demais, facilitando a atualização de layouts, alteração nas regras de negócio e adição de novos recursos. Em caso de grandes projetos, o MVC facilita muito a divisão de tarefas entre a equipe.

67 Implantando o MVC Para implantar o modelo MVC num projeto, devese criar os diretórios onde vão ser armazenadas as camadas do modelo. Estes diretórios podem ser criados no Eclipse através da opção FILES new Folders Dentro do pacote do aplicativo, criar os Folders: MODEL VIEW CONTROL

68 projeto CLASSES ESTRUTURA DO AMBIENTE FONTES pacote MODEL VIEW CONTROL

69 Exemplo Programa pacote 8 Mostrando o modelo MVC aplicado ao exemplo mostrado no pacote 6

70 Fim da apresentação

Classes e Objetos. Sintaxe de classe em Java

Classes e Objetos. Sintaxe de classe em Java Classes e Objetos Classes e Objetos A Programação Orientada a Objetos (POO) é uma técnica de programação que se baseia na construção de classes e utilização de objetos. Os objetos são formados por dados

Leia mais

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos Encapsulamento e Métodos (Construtores e Estáticos) Sobrecarga de Métodos João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro Conceitos sobre Encapsulamento; Variável this; Métodos Construtores;

Leia mais

Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento

Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento Professora Sheila Cáceres Variáveis locais Campos são um tipo de variável. Eles: armazenam valores por toda a vida de um objeto; e

Leia mais

Classes e Objetos INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II. Classes. Objetos. Um modelo para a criação de objetos

Classes e Objetos INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II. Classes. Objetos. Um modelo para a criação de objetos INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II Classes e Objetos Objetos Um conjunto de estados e comportamentos Classes Um modelo para a criação de objetos 1 Pacotes e Java API Pacotes Um conjunto

Leia mais

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; } Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa

Leia mais

Instituto de Informática Estrutura de Dados II

Instituto de Informática Estrutura de Dados II Instituto de Informática Estrutura de Dados II Revisão de Métodos em Classes Aplicada a Estrutura de Dados Básicas 20/08/2018 Profa. Lucília Gomes Ribeiro Prof. Dirson S Campos Programação em Java q O

Leia mais

Conceitos de Programação Orientada a Objetos

Conceitos de Programação Orientada a Objetos Conceitos de Programação Orientada a Objetos Tatyana Bitencourt Com as técnicas de orientação a objeto, é possível obter resultados considerados impossíveis pensando de maneira estruturada. Como Java não

Leia mais

Linguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos

Linguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos Linguagem de Programação II Programação Orientada a Objetos Orientação a Objetos Prof. Alessandro Borges 2 Tópicos Introdução à Programação Orientada a Objetos Conceitos Objetivos Classes e Objetos Atributos

Leia mais

Classes e Objetos em Java. Algoritmos e Programação I. Classes. Classes. Modificadores de Acesso. Classes. Revisão

Classes e Objetos em Java. Algoritmos e Programação I. Classes. Classes. Modificadores de Acesso. Classes. Revisão e Objetos em Java Algoritmos e Programação I Aula 9 Profa. Márcia Cristina Moraes mmoraes@inf.pucrs.br Profa. Sílvia M. W. Moraes silvia@inf.pucrs.br Prof. Marcelo H. Yamaguti yamaguti@inf.pucrs.br Prof.

Leia mais

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; Tudo no mundo real pode ser representado por meio do conceito de "objeto": uma planta, uma mesa, uma pessoa, um sentimento,

Leia mais

Conceitos Básicos da Programação OO

Conceitos Básicos da Programação OO Conceitos Básicos da Programação OO Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Objetivos Aprender os

Leia mais

Módulo 5. Programação Orientada a Objetos. Programação Orientada a Objetos I Java (Rone Ilídio)

Módulo 5. Programação Orientada a Objetos. Programação Orientada a Objetos I Java (Rone Ilídio) Módulo 5 Programação Orientada a Objetos Programação Orientada a Objetos I Java (Rone Ilídio) Programação Orientada a Objetos Registro em Pascal: Type Cliente = Record Nome: String; Telefone: String; Idade:

Leia mais

Orientação a objetos. Programação. Orientada a Objetos. Orientação a objetos. Orientação a objetos. Abstração e encapsulamento

Orientação a objetos. Programação. Orientada a Objetos. Orientação a objetos. Orientação a objetos. Abstração e encapsulamento Orientação a objetos Programação Orientada a Objetos Alexandre César Muniz de Oliveira Linguagens orientadas a procedimentos e linguagens orientadas a objetos Unidade de programação: funções e classes

Leia mais

E N C A P S U L A M E N T O P R O F. M E. H É L I O E S P E R I D I Ã O

E N C A P S U L A M E N T O P R O F. M E. H É L I O E S P E R I D I Ã O E N C A P S U L A M E N T O P R O F. M E. H É L I O E S P E R I D I Ã O REVIEW CLASSES E INSTÂNCIAS. REVIEW - O OPERADOR THIS This faz referencia a métodos e atributos da própria classe REVIEW - EXEMPLO

Leia mais

Aula 08 Encapsulamento. Disciplina: Programação Estruturada e Orientada a Objetos Prof. Bruno Gomes

Aula 08 Encapsulamento. Disciplina: Programação Estruturada e Orientada a Objetos Prof. Bruno Gomes Aula 08 Encapsulamento Disciplina: Programação Estruturada e Orientada a Objetos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Projeto Orientado a Objetos Princípios: Abstração; Encapsulamento; Modularidade.

Leia mais

Introdução. Atributos em Java. Atributos. Acesso à atributos em Java. Atributo versus variável. Atributos, métodos e encapsulamento.

Introdução. Atributos em Java. Atributos. Acesso à atributos em Java. Atributo versus variável. Atributos, métodos e encapsulamento. Introdução Atributos, métodos e encapsulamento joao@ecomp.uefs.br Atributos Ipos de acesso: private, public, protected e default Encapsulamento Métodos Construtores Criando objetos Departamento de Ciências

Leia mais

Modificadores de Acesso JAVA

Modificadores de Acesso JAVA Modificadores de Acesso JAVA Definição Os modificadores de acesso são padrões de visibilidade de acessos às classes, atributos e métodos. Esses modificadores são palavras-chave reservadas do Java. E as

Leia mais

Algoritmos e Programação 2. Objetos e Classes em Java. Classes. Revisão. Definições de classes incluem (geralmente):

Algoritmos e Programação 2. Objetos e Classes em Java. Classes. Revisão. Definições de classes incluem (geralmente): Algoritmos e Programação 2 Baseado no material do Prof. Júlio Machado Objetos e Classes em Java Revisão Classes: encapsulam dados (atributos) e operações sobre os dados (métodos) Objetos: instâncias de

Leia mais

Visibilidade e Encapsulamento

Visibilidade e Encapsulamento Visibilidade e Encapsulamento Professor: Ricardo Luis dos Santos IFSUL 2016 Agenda Pacotes Visibilidade Encapsulamento Hands-On 2 Pacotes Em Java, a visibilidade ou grau de acesso a um determinado atributo

Leia mais

Classes e Objetos. Prof. Fernando V. Paulovich 9 de agosto de 2010

Classes e Objetos. Prof. Fernando V. Paulovich  9 de agosto de 2010 Classes e Objetos SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-4 Construtores e Sobrecarga Prof. Esbel Tomás Valero Orellana Até Aqui Modelos e POO Classes e sua implementação em Java Encapsulamento Tipos de dados nativos em Java

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Pacotes e Encapsulamento Msc. Paulo de Tarso F. Júnior 1 Introdução Permite o agrupamento de classes em uma coleção chamada pacote Um pacote é uma coleção de classes e interfaces

Leia mais

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){

Leia mais

UNIFEI Disciplina Professor

UNIFEI Disciplina Professor UNIFEI Disciplina Professor Universidade Federal de Itajubá Instituto de Engenharia de Sistemas e Tecnologias da Informação-IESTI CCO02 Enganharia de Software II Enzo Seraphim Nota de aula de Java Encapsulamento

Leia mais

Modelo do Mundo Real. Abstração. Interpretação

Modelo do Mundo Real. Abstração. Interpretação Modelo do Mundo Real Mundo Real Abstração Interpretação Sistema de Software Modelo Algoritmo Abstração: O modelo precisa capturar apenas as características do mundo real que são importantes para o sistema

Leia mais

Paradigmas de Linguagens de Programação. Suporte para Programação Orientada a Objeto

Paradigmas de Linguagens de Programação. Suporte para Programação Orientada a Objeto Suporte para Programação Orientada a Objeto Cristiano Lehrer Categoria das Linguagens que Suportam POO Suporte a POO acrescentado a uma linguagem já existente: C++ (também suporta programação procedural

Leia mais

Programação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs

Programação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs Programação Orientada a Objetos Professor: André Luis Meneses Silva andreluis.ms@gmail.com br.geocities.com/programacao2ufs [ Conteúdo ] Objeto Mensagens Classe Encapsulamento Visibilidade Membros de Instância

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Criando objeto Definindo valores para os atributos do objeto Método construtor Definindo valores padrão para os atributos dos

Leia mais

Programação com Objectos. Processamento de Dados I. 2. Classes, Atributos e Métodos

Programação com Objectos. Processamento de Dados I. 2. Classes, Atributos e Métodos Programação com Objectos Processamento de Dados I 2. Classes, Atributos e Métodos 1 Classes, Atributos e Métodos Modificadores de acesso (visibilidade) Sobrecarga de métodos (method overloading) Variáveis

Leia mais

Interfaces. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.

Interfaces. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno. Interfaces Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Interfaces É utilizada para agrupar conceitos em

Leia mais

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Aula de Hoje Abstração de Dados Classes e Objetos Definição de Métodos Métodos com parâmetro Abstração de Dados Processo mental através do qual

Leia mais

Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces

Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces Professora Sheila Cáceres Polimorfismo Polimorfismo Polimorfismo é a característica única de linguagens orientadas

Leia mais

Programação Orientada a Objetos. Métodos e Atributos. Métodos. Métodos. Alexandre César Muniz de Oliveira. Parte III

Programação Orientada a Objetos. Métodos e Atributos. Métodos. Métodos. Alexandre César Muniz de Oliveira. Parte III Programação Orientada a Objetos Alexandre César Muniz de Oliveira Métodos e Atributos Parte III Métodos [mod] tipo nome ([tipo arg]) [throws exc]{ [mod]: zero ou mais modificadores separados por espaços

Leia mais

Palavras Reservadas da Linguagem Java

Palavras Reservadas da Linguagem Java Palavras Reservadas da Linguagem Java Palavras Reservadas da Linguagem Java: Categorias Tipos de dados primitivos Literais Pseudo-variáveis Desvio e controle de fluxo Pacotes Exceções Modificadores de

Leia mais

CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO

CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO CLASSES E OBJETOS PARA PROGRAMAÇÃO ORIENTADA A OBJETOS Classes são estruturas das linguagens de POO criadas para conter os dados que

Leia mais

Atributos e Métodos Estáticos

Atributos e Métodos Estáticos Atributos e Métodos Estáticos Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Atributos Estáticos Atributos

Leia mais

Linguagem de Programação IV Introdução

Linguagem de Programação IV Introdução Linguagem de Programação IV Introdução Prof. Alessandro Borges 2 Tópicos Orientação a objetos Classe Objeto Abstração Encapsulamento Herança Polimorfismo Plataforma Java 3 4 POO é um paradigma de programação

Leia mais

Unidade Acadêmica: Faculdade de Computação FACOM Disciplina: Programação Orientada a Objetos I Professor: Fabiano Azevedo Dorça Prática 01

Unidade Acadêmica: Faculdade de Computação FACOM Disciplina: Programação Orientada a Objetos I Professor: Fabiano Azevedo Dorça Prática 01 Unidade Acadêmica: Faculdade de Computação FACOM Disciplina: Programação Orientada a Objetos I Professor: Fabiano Azevedo Dorça Prática 01 Objetivos: Modelar um sistema orientado a objetos simples a partir

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-7 Reutilização de Classes Prof. Esbel Tomás Valero Orellana Até Aqui Introdução a POO e sua implementação em Java Atributos, métodos e encapsulamento dos mesmos Trabalhando

Leia mais

Análise de Programação

Análise de Programação Análise de Programação Fundamentos da Linguagem de Programação Java Prof. Gilberto B. Oliveira Variáveis Atributos: Variáveis Declaradas fora de um método, sem o modificador static Variáveis membro ou

Leia mais

Programação Estruturada e Orientada a Objetos. Objetos e Métodos

Programação Estruturada e Orientada a Objetos. Objetos e Métodos Programação Estruturada e Orientada a Objetos Objetos e Métodos 2013 O que veremos hoje? Objetos e Métodos Transparências baseadas no material do Prof. Jailton Carlos Objetivos Aprender a criar construtores;

Leia mais

Classe Abstrata e Interface

Classe Abstrata e Interface Orientação a objetos com Java Classe Abstrata e Interface Byron Leite byron.leite@gmail.com 1 Herança Agenda Geral Parte 04 Encapsulamento Pacotes Modificadores de Acesso private, default, protected, public

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Faculdade de Computação Aula Revisão Marcelo Zanchetta do Nascimento Material elaborado pela Profa. Ana Carolina Lorena - UNIFESP Desenvolvimento de Software ANÁLISE IMPLEMENTAÇÃO

Leia mais

Classes, Métodos e Propriedades

Classes, Métodos e Propriedades Ambiente de Programação Visual Classes, Métodos e Propriedades Prof. Mauro Lopes 1-31 22 Objetivos Nesta aula iremos dar continuidade aos elementos de programação da Linguagem C#. Iremos apresentar de

Leia mais

PROGRAMAÇÃO I INTRODUÇÃO À ORIENTAÇÃO A OBJETOS

PROGRAMAÇÃO I INTRODUÇÃO À ORIENTAÇÃO A OBJETOS PROGRAMAÇÃO I INTRODUÇÃO À ORIENTAÇÃO A OBJETOS Prof. Dr. Daniel Caetano 2017-1 Objetivos Compreender os conceitos classe e objeto Compreender a função dos métodos e atributos e o conceito de encapsulamento

Leia mais

Programação Orientada a Objetos II

Programação Orientada a Objetos II Programação Orientada a Objetos II Introdução Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com www.bolinhabolinha.com Apresentação Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Ementa Introdução ao Desenvolvimento

Leia mais

Relacionamentos entre objetos

Relacionamentos entre objetos Programação Orientada a Objetos Relacionamentos entre objetos Associação, composição e agregação Construtores t e sobrecarga Variáveis de classe e de instância Reinaldo Gomes reinaldo@cefet-al.br Objetos

Leia mais

Classes o Objetos. Classes, objetos, métodos e variáveis de instância

Classes o Objetos. Classes, objetos, métodos e variáveis de instância Classes o Objetos Um recurso comum de cada aplicativo feito até agora é que todas as instruções que realizavam tarefas localizavam-se no método main. Se você tornar parte de uma equipe de desenvolvimento

Leia mais

Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus Curso Disciplina Linguagem de Programação II Curso Engenharia da Computação Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis

Leia mais

Encapsulamento. Separa a interface de um objeto dos detalhes de seu funcionamento interno. Caixa preta 2/27

Encapsulamento. Separa a interface de um objeto dos detalhes de seu funcionamento interno. Caixa preta 2/27 Encapsulamento Encapsulamento entrada Caixa preta saída 2/27 Separa a interface de um objeto dos detalhes de seu funcionamento interno Encapsulamento Esconder os detalhes de implementação de um componente

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 6: Herança e Polimorfismo LEEC@IST Java 1/50 Herança revisão (1) A herança é um mecanismo em que a subclasse constitui uma especialização da superclasse. A superclasse

Leia mais

Aula 5 POO 1 Encapsulamento. Profa. Elaine Faria UFU

Aula 5 POO 1 Encapsulamento. Profa. Elaine Faria UFU Aula 5 POO 1 Encapsulamento Profa. Elaine Faria UFU - 2019 Sobre o Material Agradecimentos Aos professores José Gustavo e Fabiano, por gentilmente terem cedido seus materiais. Os slides consistem de adaptações

Leia mais

Programação Orientada a Objetos em Java

Programação Orientada a Objetos em Java Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Classes e Objetos, Construtores e Desconstrutores, Atributos e

Leia mais

Herança. Prof. Fernando V. Paulovich 23 de agosto de 2010

Herança. Prof. Fernando V. Paulovich  23 de agosto de 2010 Herança SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação(ICMC) Universidade

Leia mais

Laboratório de programação II

Laboratório de programação II Laboratório de programação II Herança e Polimorfismo Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Herança Mecanismo da Orientação a Objeto que permite criar novas classes aproveitando

Leia mais

De Olho na Pista. Documento de Arquitetura. De Olho na Pista Documento de Arquitetura Data: 23/03/2013. AJA Software

De Olho na Pista. Documento de Arquitetura. De Olho na Pista Documento de Arquitetura Data: 23/03/2013. AJA Software AJA Software www.ajasoftware.wordpress.com De Olho na Pista Documento de Arquitetura Confidencial De Olho na Pista, 2013 1 Sumário 1. Introdução 3 2. Metas e Restrições da Arquitetura 3 3. Padrão da Arquitetura

Leia mais

Aprendendo. Java 2. Rodrigo Mello Ramon Chiara Renato Villela. Novatec Editora Ltda.

Aprendendo. Java 2. Rodrigo Mello Ramon Chiara Renato Villela. Novatec Editora Ltda. Aprendendo Java 2 Rodrigo Mello Ramon Chiara Renato Villela Novatec Editora Ltda. www.novateceditora.com.br 1 Programação Orientada a Objetos O que é Programação Orientada a Objetos? É um paradigma de

Leia mais

Namespaces, Classes e Métodos.

Namespaces, Classes e Métodos. . Linguagem de Programação III Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento Acadêmico de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Linguagem

Leia mais

Java - Sobrecarga/Composição

Java - Sobrecarga/Composição Java - Sobrecarga/Composição BCC 221 - Programação Orientada a Objectos(POO) Guillermo Cámara-Chávez Departamento de Computação - UFOP Métodos static Embora os métodos sejam executados em resposta a chamadas

Leia mais

POO29004 Programação Orientada a Objetos

POO29004 Programação Orientada a Objetos POO29004 Programação Orientada a Objetos Herança Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/poo 11 de setembro

Leia mais

Linguagens de Programação Aula 12

Linguagens de Programação Aula 12 Linguagens de Programação Aula 12 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada Implementando subprogramas 2 Na aula de hoje Suporte para a programação orientada a objetos 3 Roteiro Introdução

Leia mais

Programação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos

Programação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos Programação Orientada a Objetos: Herança Alexandre César Muniz de Oliveira Análise e Projeto Orientados a Objetos A análise orientada a objetos Determina o que o sistema deve fazer: Quais os atores envolvidos?

Leia mais

Diagrama de Classes. Conceitos Básicos. prof. Robinson Vida Monday, April 20, 15

Diagrama de Classes. Conceitos Básicos. prof. Robinson Vida Monday, April 20, 15 Diagrama de Classes Conceitos Básicos prof. Robinson Vida (vida@utfpr.edu.br) 1 Função do Diagrama de Classes Permitir a visualização das classes que comporão o sistema com seus respectivos atributos e

Leia mais

Programação Orientada a Objetos. Aula 1.9 this e static. Prof. Bruno Moreno

Programação Orientada a Objetos. Aula 1.9 this e static. Prof. Bruno Moreno Programação Orientada a Objetos Aula 1.9 this e static Prof. Bruno Moreno bruno.moreno@ifrn.edu.br Relembre: Clase RoboSimples Os métodos move() e move(int passos) podem ser reescrito sem redundância de

Leia mais

Programação I Curso: Sistemas de Informação. Prof.: José Ronaldo Leles Júnior .:

Programação I Curso: Sistemas de Informação. Prof.: José Ronaldo Leles Júnior  .: Programação I Curso: Sistemas de Informação Prof.: José Ronaldo Leles Júnior Email.: juniorleles80@gmail.com 1º semestre - 2017 POO Paradigma Orientado a Objetos O que é um Paradigma? É um ponto de vista

Leia mais

M V C P R O F. M E. H É L I O E S P E R I D I Ã O

M V C P R O F. M E. H É L I O E S P E R I D I Ã O M V C P R O F. M E. H É L I O E S P E R I D I Ã O A P L I C A Ç Õ E S M O N O L Í T I C A S Na época dos computares independentes um aplicativo era desenvolvido para ser usado em uma única máquina. Este

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Herança Aula de Hoje Problema Considere uma empresa que tenha tipos de empregados no aplicativo de folha de pagamento Um empregado tem nome,

Leia mais

Introdução à orientação a objetos. João Tito Almeida Vianna 18/05/2013

Introdução à orientação a objetos. João Tito Almeida Vianna 18/05/2013 Introdução à orientação a objetos João Tito Almeida Vianna 18/05/2013 Roteiro Aula 1 Introdução: Programação estruturada x Orientação a objetos Orientação a objetos Classe e objeto Encapsulamento Herança

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Hierarquia de classes e mecanismo de ligação

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Hierarquia de classes e mecanismo de ligação 4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança

Leia mais

Encapsulamento. Alberto Costa Neto DComp - UFS

Encapsulamento. Alberto Costa Neto DComp - UFS Encapsulamento Alberto Costa Neto DComp - UFS 1 Motivação O que aprendemos até agora? O que diferencia a POO da Programação Imperativa? Estas informações são suficientes para construir um projeto OO eficiente?

Leia mais

Programação Orientada a Objetos Flávio de Oliveira Silva 144

Programação Orientada a Objetos Flávio de Oliveira Silva 144 HERANÇA Herança é a capacidade de uma subclasse de ter acesso as propriedades da superclasse(também chamada classe base) relacionada a esta subclasse. Dessa forma os atributos e métodos de uma classe são

Leia mais

Programação Orientada por Objetos

Programação Orientada por Objetos PPROG Paradigmas da Programação Programação Orientada por Objetos Abstração e Encapsulamento Classes e Objetos (Livro Big Java, Late Objects Capítulo 8) Nelson Freire (ISEP DEI-PPROG 2016/17) 1/82 PPROG

Leia mais

Introdução. Por que desenvolver ALGORITMO?

Introdução. Por que desenvolver ALGORITMO? Introdução Programa Computacional busca da necessidade de solução de um problema particular: a geração automática de documentos, o controle de um equipamento eletrodoméstico, a transmissão de informações

Leia mais

Linguagem de programação Programação Orientada a objetos

Linguagem de programação Programação Orientada a objetos Instituto Federal de Minas Gerais Campus Ponte Nova Linguagem de programação Programação Orientada a objetos Professor: Saulo Henrique Cabral Silva Paradigma da orientação a objetos Paradigma = forma de

Leia mais

Programação Java (nível intermediário) 4. Polimorfismo

Programação Java (nível intermediário) 4. Polimorfismo Programação Java (nível intermediário) 4 Polimorfismo Introdução Uma linguagem orientada a objetos nos permite definir novos tipos para variáveis Nós definimos um novo tipo através de uma classe Este tipo

Leia mais

Orientação a Objetos. Vanessa Braganholo

Orientação a Objetos. Vanessa Braganholo Orientação a Objetos Vanessa Braganholo vanessa@ic.uff.br Paradigma estruturado } Código mais fácil de ler, mas ainda difícil para sistemas grandes devido a repetição de código } Só usa sequência, repetição

Leia mais

COMPORTAMENTOS - Observações

COMPORTAMENTOS - Observações COMPORTAMENTOS - Observações O próprio objeto realiza operações de consulta ou alteração dos valores dos seus atributos Essas operações são definidas em seus métodos Os métodos também são utilizados para

Leia mais

Interfaces e Classes Abstratas

Interfaces e Classes Abstratas Interfaces e Classes Abstratas José Gustavo de Souza Paiva Problema Método obterarea()? Classes Abstratas Classes que funcionam como um molde Declarada com comando abstract Contém um ou mais métodos abstratos

Leia mais

Prof. Vicente Paulo de Camargo UML - INTRODUÇÃO UML = Unified Modeling Language = linguagem de modelagem de sistemas Permite especificar, visualizar e documentar modelos de software orientados a objetos

Leia mais

Introdução ao Java. Prof. Herbert Rausch Fernandes

Introdução ao Java. Prof. Herbert Rausch Fernandes Introdução ao Java Prof. Herbert Rausch Fernandes Orientação a Objetos Programação Orientada por Objetos: é a construção de sistemas de software como uma coleção estruturada de implementações de tipos

Leia mais

Herança e Propriedades

Herança e Propriedades Herança e Propriedades 2013 O que veremos hoje? Herança e Propriedades Transparências baseadas no material do Prof. Gilbert Azevedo e Prof. Jailton Carlos Objetivos Conceito de Herança em POO Herança Herança

Leia mais

Modificadores de Acesso e Atributos de Classe

Modificadores de Acesso e Atributos de Classe Modificadores de Acesso e Atributos de Classe 1 Controlando o acesso p Um dos problemas mais simples que temos no nosso sistema de contas é que o método saca permite sacar mesmo que o limite tenha sido

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1

Desenvolvimento Web TCC-00.226 Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Orientação a Objetos Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

Herança. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.

Herança. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno. Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Possibilita o reuso de classes (código-fonte) Usar quando:

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Estruturas de Seleção if... else Operador condicional (? : ) switch Aula de Hoje Estruturas de Repetição: while/do... while/for

Leia mais

Programação Orientada a Objetos SANTOS, Rafael

Programação Orientada a Objetos SANTOS, Rafael Programação Orientada a Objetos SANTOS, Rafael Neste capítulo e nos seguintes serão usados intensamente os conceitos básicos de OO e da linguagem estudados até agora, com ênfase para os de número 1, 2

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

Roteiro. Introdução. Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans. Objetos. Princípios da Orientação a Objetos

Roteiro. Introdução. Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans. Objetos. Princípios da Orientação a Objetos Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans Roteiro Introdução Conceitos de Oientação a Objetos A Linguagem Java NetBeans (www.netbeans.org) Fernando Vieira Paulovich paulovic@icmc.usp.br

Leia mais

Estrutura de Dados Funções e Procedimentos

Estrutura de Dados Funções e Procedimentos Estrutura de Dados Funções e Procedimentos Prof. Salustiano Rodrigues de Oliveira saluorodrigues@gmail.com www.profsalu.wordpress.com Java A linguagem Java utiliza o paradigma de programação orientada

Leia mais

TÉCNICAS DE ORIENTAÇÃO A OBJETOS

TÉCNICAS DE ORIENTAÇÃO A OBJETOS TÉCNICAS DE ORIENTAÇÃO A OBJETOS APLICAÇÃO EM: C# E JAVA Sumário INTRODUÇÃO... 4 PARADIGMAS DE PROGRAMAÇÃO... 5 PROGRAMAÇÃO PROCEDURAL... 5 PROGRAMAÇÃO ESTRUTURADA... 5 PROGRAMAÇÃO ORIENTADA A OBJETOS...

Leia mais

4 Conceito de Herança

4 Conceito de Herança 4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança

Leia mais

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 3 Ponteiros e Variáveis de Objeto Construtores e Blocos de Inicialização

Leia mais

LINGUAGEM DE PROGRAMAÇÃO

LINGUAGEM DE PROGRAMAÇÃO Técnico em Informática LINGUAGEM DE PROGRAMAÇÃO Profª Ana Paula anapaula_mandelli@hotmail.com JAVA Como qualquer linguagem de programação, a linguagem Java tem sua própria estrutura, regras de sintaxe

Leia mais