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

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

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

Transcrição

1 Programação Orientada a Objetos Aula 1.9 this e static Prof. Bruno Moreno bruno.moreno@ifrn.edu.br

2 Relembre: Clase RoboSimples Os métodos move() e move(int passos) podem ser reescrito sem redundância de código? public void move(){ if(direcaoatual=='n') posicaoyatual = posicaoyatual+1; if(direcaoatual=='s') posicaoyatual public = posicaoyatual-1; void move(int passos){ if(direcaoatual=='l') if(direcaoatual=='n') posicaoxatual = posicaoxatual+1; posicaoyatual = posicaoyatual+passos; if(direcaoatual=='o') if(direcaoatual=='s') posicaoxatual = posicaoxatual-1; posicaoyatual = posicaoyatual-passos; if(direcaoatual=='l') posicaoxatual = posicaoxatual+passos; if(direcaoatual=='o') posicaoxatual = posicaoxatual-passos; 2

3 Relembre: Clase RoboSimples Podemos executar um método dentro do outro: O método move(int passos) pode ser invocado dentro do método move() sendo passos = 1 public void move(){ if(direcaoatual=='n') posicaoyatual = posicaoyatual+1; if(direcaoatual=='s') posicaoyatual public = posicaoyatual-1; void move(int passos){ if(direcaoatual=='l') if(direcaoatual=='n') posicaoxatual = posicaoxatual+1; posicaoyatual = posicaoyatual+passos; if(direcaoatual=='o') if(direcaoatual=='s') posicaoxatual = posicaoxatual-1; posicaoyatual = posicaoyatual-passos; if(direcaoatual=='l') posicaoxatual = posicaoxatual+passos; if(direcaoatual=='o') posicaoxatual = posicaoxatual-passos; 3

4 Relembre: Clase RoboSimples Podemos executar um método dentro do outro: O método move(int passos) pode ser invocado dentro do método move() sendo passos = 1 public void move(){ move(1); public void move(int passos){ if(direcaoatual=='n') posicaoyatual = posicaoyatual+passos; if(direcaoatual=='s') posicaoyatual = posicaoyatual-passos; if(direcaoatual=='l') posicaoxatual = posicaoxatual+passos; if(direcaoatual=='o') posicaoxatual = posicaoxatual-passos; 4

5 Palavra-chave this Ou seja, pode-se chamar (i.e. invocar, executar) métodos dentro de outros métodos; Entretanto, com construtores não funciona assim Nestes casos, pode-se usar a palavra-chave this; A palavra-chave this cria uma auto-referência para cada instância do objeto da classe. 5

6 Palavra-chave this Para chamar um construtor dentro do outro, utiliza-se a palavra-chave this no lugar do construtor! RoboSimples(String n, int px, int py, char d){ nomedorobo = n; posicaoxatual = px; posicaoyatual = py; direcaoatual = d; RoboSimples(String n){ nomedorobo = n; posicaoxatual = 0; posicaoyatual = 0; direcaoatual = 'N'; RoboSimples(){ nomedorobo = ; posicaoxatual = 0; posicaoyatual = 0; direcaoatual = 'N'; 6

7 Palavra-chave this Para chamar um construtor dentro do outro, utiliza-se a palavra-chave this no lugar do construtor! RoboSimples(String n, int px, int py, char d){ nomedorobo = n; posicaoxatual = px; posicaoyatual = py; direcaoatual = d; RoboSimples(String n){ this(n, 0, 0, 'N'); RoboSimples(){ this(, 0, 0, 'N'); 7

8 Palavra-chave this Para chamar um construtor dentro do outro, utiliza-se a palavra-chave this no lugar do construtor! 1 RoboSimples(String n, int px, int py, char d){ nomedorobo = n; posicaoxatual = px; posicaoyatual = py; direcaoatual = d; RoboSimples(String n){ this(n, 0, 0, 'N'); RoboSimples(){ this(, 0, 0, 'N'); O construtor 1 é chamado completo Inicializa explicitamente todos os campos da classe com argumentos passados; 8

9 Palavra-chave this Para chamar um construtor dentro do outro, utiliza-se a palavra-chave this no lugar do construtor! 1 RoboSimples(String n, int px, int py, char d){ nomedorobo = n; posicaoxatual = px; posicaoyatual = py; direcaoatual = d; RoboSimples(String n){ this(n, 0, 0, 'N'); RoboSimples(){ this(, 0, 0, 'N'); 2 O construtor 2 recebe apenas o nome e delega ao construtor 1 a inicialização dos outros campos; 9

10 Palavra-chave this Para chamar um construtor dentro do outro, utiliza-se a palavra-chave this no lugar do construtor! 1 RoboSimples(String n, int px, int py, char d){ nomedorobo = n; posicaoxatual = px; posicaoyatual = py; direcaoatual = d; RoboSimples(String n){ this(n, 0, 0, 'N'); RoboSimples(){ this(, 0, 0, 'N'); 2 3 O construtor 3 faz a mesma coisa que o construtor 2, mas passando uma String vazia como sendo o nome; 10

11 Palavra-chave this ATENÇÃO: construtores não podem ser chamados indiscriminadamente de dentro de qualquer método!!! Existem regras para chamada de construtores: 1) Somente construtores podem chamar construtores; 2) A chamada de um construtor a partir de outro deve ser a primeira linha de código dentro do corpo do construtor; 3) Construtores são chamados por this; 4) Contrutores podem chamar outros métodos; 5) Construtores não podem ser chamados recursivamente; 11

12 Outros usos de this this também pode ser usada para referenciar métodos e campos de uma instância; É bastante utilizado quando argumentos de um método ou construtor possuem o mesmo nome dos campos da classe Neste caso o uso é obrigatório, embora sua omissão não gera erro de compilação; 12

13 Outros usos de this Como o compilador vai saber inicializar os campos no construtor Musica(String titulo, String cantor)? public class Musica{ String titulo; String cantor; Musica(String titulo, String cantor){ titulo = titulo; cantor = cantor; 13

14 Outros usos de this Como o compilador vai saber inicializar os campos no construtor Musica(String titulo, String cantor)? public class Musica{ String titulo; String cantor; Musica(String titulo, String cantor){ this.titulo = titulo; this.cantor = cantor; 14

15 Resumo sobre sobrecarga Programador usuário: Facilita o trabalho: Chama o método adequado aos dados que quer passar; Programador de classes: Deve definir que métodos e que argumentos estarão disponíveis para o programador usuário; 15

16 Exemplo: classe Tempo public class Tempo{ int hora, minuto, segundo; Tempo( ){ this(0, 0, 0); Tempo(int h){ this(h, 0, 0); Tempo(int h, int m){ this(h, m, 0); Tempo(int h, int m, int s){ this.hora = h; this.minuto = m; this.segundo = s; Tempo(Tempo t){ this.hora = t.hora; this.minuto = t.minuto; this.segundo = t.segundo; 16

17 Campos e métodos estáticos Modificar os campos de uma instância de uma classe afeta os valores dos mesmos campos de outra instância da mesma classe? Não! Isso, porque, objetos diferentes reservam espaços diferentes na memória do computador! Essa é uma das características mais úteis das linguagens OO! 17

18 Campos e métodos estáticos Por vezes, pode ser necessário que um campo tenha seu valor compartilhado por todas as instâncias de determinada classe! Esse mecanismo pode ser útil para algum tipo de controle interno do sistema; Para isso estudaremos os campos e os métodos estáticos das classes! 18

19 Campos estáticos Campos estáticos de uma classe são compartilhados por todas as instâncias dessa classe; Ou seja, somente um valor será armazenado em um campo estático Esse valor não será armazenado como parte do objeto (da instância); A mudança do valor de um campo estático será refletida em todas as outras instâncias da classe. 19

20 Campos estáticos Campos estáticos são definidos com o modificador static Deve ser declarado antes do tipo de dado do campo; Pode ser combinado com modificadores de acesso, como public e private; Campos estáticos são também conhecidos como campos de classes Isso, porque eles podem ser acessados diretamente usando o nome da classe, sem instanciar um objeto da classe; Em contraste, campos que podem ter diferentes valores para cada instância (ou seja, não estáticos), são conhecidos como campos de instância. 20

21 Campos estáticos - exemplos Considere o problema de simulação de um caixa de banco: Nesse banco não existe um sistema de senhas ou fila única; Cada caixa tem que gerenciar qual o próximo cliente; C1 C2 C3 C4 C5 21

22 Campos estáticos - exemplos Este exemplo pode ser representado pela classe CaixaIndependente public class CaixaIndependente{ private int senhadocliente; private int iddocaixa; CaixaIndependente(int id){ iddocaixa = id; senhadocliente = 0; System.out.println( Caixa + iddocaixa + iniciou a operação. ); public void proximoatendimento(){ senhadocliente= senhadocliente + 1; System.out.println( Cliente com a senha + senhadocliente + favor dirigir-se ao caixa + iddocaixa +. ); 22

23 Campos estáticos - exemplos A classe CaixaIndependente pode ser utilizada como demonstrado na classe Banco public class Banco{ C1 C2 C3 C4 C5 public static void main(string args[]){ CaixaIndependente c1 = new CaixaIndependente(1); CaixaIndependente c2 = new CaixaIndependente(2); CaixaIndependente c3 = new CaixaIndependente(3); CaixaIndependente c4 = new CaixaIndependente(4); CaixaIndependente c5 = new CaixaIndependente(5); c1.proximoatendimento(); c2.proximoatendimento(); c3.proximoatendimento(); c4.proximoatendimento(); c5.proximoatendimento(); c1.proximoatendimento(); c2.proximoatendimento(); c3.proximoatendimento(); c1.proximoatendimento(); 23

24 Campos estáticos - exemplos Considere agora que será implementado um sistema de senhas, ou seja, de fila única: Assim, o caixa não mais se preocupará em gerenciar as senhas. A gerência da senha é feita por um atributo estático Seu valor é conhecido por todas as instâncias da classe, ou seja, por todos os caixas. C1 C2 C3 C4 C5 24

25 Campos estáticos - exemplos public class CaixaFilaUnica{ static private int senhadocliente; private int iddocaixa; Este CaixaFilaUnica(int exemplo pode id){ ser representado pela classe iddocaixa CaixaFilaUnica = id; senhadocliente = 0; System.out.println( Caixa + iddocaixa + iniciou a operação. ); public void proximoatendimento(){ senhadocliente= senhadocliente + 1; System.out.println( Cliente com a senha + senhadocliente + favor dirigir-se ao caixa + iddocaixa +. ); 25

26 Prática Reimplemente a classe Banco de modo que ela instancie agora objetos da classe CaixaFilaUnica; C1 C2 C3 C4 C5 26

27 Campos estáticos Podemos ver, portanto, que instâncias de uma classe que possui um campo estático compartilham o mesmo valor É o caso dos objetos da classe CaixaFilaUnica e o campo senhadocliente; É comum se utilizar de campos estáticos para criação de constantes Constantes são campos que não mudam seu valor; Constantes são comumente acessadas através da classe, e não através de instâncias da classe. 27

28 Exemplo de classe de Constantes A classe ConstantesMatematicas contém valores que são constantes: public class ConstantesMatematicas{ final static public double raizde2 = 1.41; final static public double raizde3 = 1.73; final static public double raizde5 = 2.23; final static public double raizde6 = raizde2*raizde3; final static public double pi = 3.14; A classe ConstantesMatematicas não contém métodos, e todos os campos são declarados como static Não é necessário criar instâncias dessa classe para acessar seus valores. 28

29 Exemplo de classe de Constantes A classe ConstantesMatematicas contém valores que são constantes: public class ConstantesMatematicas{ final static public double raizde2 = 1.41; final static public double raizde3 = 1.73; final static public double raizde5 = 2.23; final static public double raizde6 = raizde2*raizde3; final static public double pi = 3.14; Os campos são declarados também como final Campos final não podem ser modificados. 29

30 Exemplo de classe de Constantes A classe DemoConstantesMatematicas demonstra o uso dos campos estáticos da classe ConstantesMatematicas: public class DemoConstantesMatematicas{ public static void main(string args[]){ ConstantesMatematicas const1 = new ConstantesMatematicas(); ConstantesMatematicas const2 = new ConstantesMatematicas(); System.out.println(const1.raizDe2 == const2.raizde2); System.out.println(const1.raizDe3 == const2.raizde3); System.out.println(const1.raizDe4 == const2.raizde4); System.out.println(const1.raizDe5 == const2.raizde5); System.out.println(const1.raizDe6 == const2.raizde6); double raizde10 = ConstantesMatematicas.raizDe2 * ConstantesMatematicas.raizDe5; System.out.println( A raiz quadrada de 10 é + raizde10); 30

31 public class DemoConstantesMatematicas{ public static void main(string args[]){ ConstantesMatematicas const1 = new ConstantesMatematicas(); ConstantesMatematicas const2 = new ConstantesMatematicas(); System.out.println(const1.raizDe2 == const2.raizde2); System.out.println(const1.raizDe3 == const2.raizde3); System.out.println(const1.raizDe4 == const2.raizde4); System.out.println(const1.raizDe5 == const2.raizde5); System.out.println(const1.raizDe6 == const2.raizde6); Exemplo de classe de Constantes double raizde10 = ConstantesMatematicas.raizDe2 * ConstantesMatematicas.raizDe5; System.out.println( A raiz quadrada de 10 é + raizde10); Valores constantes são iguais para todas as instâncias da classe ConstantesMatematicas; 31

32 public class DemoConstantesMatematicas{ public static void main(string args[]){ ConstantesMatematicas const1 = new ConstantesMatematicas(); ConstantesMatematicas const2 = new ConstantesMatematicas(); System.out.println(const1.raizDe2 == const2.raizde2); System.out.println(const1.raizDe3 == const2.raizde3); System.out.println(const1.raizDe4 == const2.raizde4); System.out.println(const1.raizDe5 == const2.raizde5); System.out.println(const1.raizDe6 == const2.raizde6); Exemplo de classe de Constantes double raizde10 = ConstantesMatematicas.raizDe2 * ConstantesMatematicas.raizDe5; System.out.println( A raiz quadrada de 10 é + raizde10); A criação de instâncias de uma classe onde todos os campos são declarados como static não é necessária Pode-se acessar os campos diretamente através do nome da classe, já que são public 32

33 Métodos Estáticos São declarados com modificador static, que deve preceder o tipo de retorno do método; Pode ser combinado com modificadores de acesso; Podem ser chamados sem a necessidade de criação de instâncias de classes às quais pertencem. 33

34 Aplicação: métodos independentes Métodos estáticos podem ser utilizados para implementar rotinas que sejam independentes de dados armazenados em classes Ou seja, métodos que fazem uso, apenas, dos dados passados como argumentos. public static int elevaa2(int a){ return a*a; 34

35 Aplicação: o método main O método main é o método estático mais conhecido; Permite que uma classe seja executada como uma aplicação ou programa; Se uma classe Teste tem um método main declarado, não precisamos criar instâncias de Teste para executar o método main. 35

36 Aplicação: biblioteca de métodos É a aplicação mais frequente de métodos estáticos; Classes que contêm somente métodos estáticos, geralmente agrupados por função; Por exemplo: Classe que contém métodos para calcular várias conversões de unidades de cumprimento. 36

37 Exemplo: ConversaoUnidades A classe ConversaoUnidades contém vários métodos estáticos que convertem unidades de comprimento. public class ConversaoUnidades{ public static double polparacm(double pol){ double cm = pol*2.54; return cm; public static double pesparacm(double pes){ double cm = pes*30.48; return cm; public static double milhasparakm(double milhas){ double km = milhas*1.609; return km; 37

38 public class ConversaoUnidades{ public static double polparacm(double pol){ double cm = pol*2.54; return cm; Exemplo: ConversaoUnidades public static double pesparacm(double pes){ double cm = pes*30.48; return cm; public static double milhasparakm(double milhas){ double km = milhas*1.609; return km; Essa classe não tem campos, e todos os seus métodos são declarados como static; Não é necessário criar instâncias desta classe para usar estes métodos; Para que esses métodos possam ser acessados de qualquer lugar, eles são declarados como public. 38

39 Exemplo: ConversaoUnidades A classe TestaConversao demonstra o uso dos métodos de ConversaoUnidades public class TestaConversao{ public static void main(string args[]){ ConversaoUnidades conv = new ConversaoUnidades(); System.out.println( 20 pés = + conv.pesparacm(20) + centímetros. ); System.out.println( 5 pol = + conv.polparacm(5) + centímetros. ); System.out.println( 20 pés = + ConversaoUnidades.pesParaCm(20) + centímetros. ); System.out.println( 5 pol = + ConversaoUnidades.polParaCm(5) + centímetros. ); 39

40 public class TestaConversao{ Exemplo: ConversaoUnidades public static void main(string args[]){ ConversaoUnidades conv = new ConversaoUnidades(); System.out.println( 20 pés = + conv.pesparacm(20) + centímetros. ); System.out.println( 5 pol = + conv.polparacm(5) + centímetros. ); System.out.println( 20 pés = + ConversaoUnidades.pesParaCm(20) + centímetros. ); System.out.println( 5 pol = + ConversaoUnidades.polParaCm(5) + centímetros. ); Nota-se que não é necessário criar uma instância de ConversaoUnidades para acessar seus métodos Até se conv fosse inicializada com null, o código funcionária!!! 40

41 Atenção!!! Variáveis declaradas dentro de métodos estáticos serão automaticamente estáticas; Métodos estáticos não podem invocar métodos não estáticos da classe sem que a classe seja instanciada; 41

42 Exemplos A classe CalculoPrecoTerreno calcula o preço de um terreno baseado em sua área e localização; O cálculo é feito por um método estático da classe, permitindo sua reutilização. public class CalculoPrecoTerreno{ public static void main(string args[]){ double preco; System.out.println( O preço do terreno N1 é ); preco = precodoterreno(450,1); System.our.println(preco); System.out.println( O preço do terreno Q2 é ); preco = precodoterreno(475m4); System.our.println(preco); 42

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

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

Programação Orientada a Objetos Aula I Declaração de classes, métodos construtores. Prof.: Bruno E. G. Gomes IFRN

Programação Orientada a Objetos Aula I Declaração de classes, métodos construtores. Prof.: Bruno E. G. Gomes IFRN Programação Orientada a Objetos Aula I Declaração de classes, métodos construtores Prof.: Bruno E. G. Gomes IFRN 1 Introdução Na aula de hoje: Declaração de classes Métodos Construtores Exercícios de criação

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

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura Java First-Tier: Aplicações Orientação a Objetos em Java (I) Paradigmas de Programação Programação Funcional Programação Procedural Programação Orientada por Objetos Grupo de Linguagens de Programação

Leia mais

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Andrew Diniz da Costa andrew@les.inf.puc-rio.br Programa Capítulo 3 Ponteiros e Variáveis de Objeto Construtores

Leia mais

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

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 Orientada a Objetos (DPADF 0063)

Programação Orientada a Objetos (DPADF 0063) Programação Orientada a Objetos (DPADF 0063) Aula 3 Abstração Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet Prof. Bruno

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

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

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

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

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

Linguagem de Programação Orientada a Objeto Construtores e Sobrecarga

Linguagem de Programação Orientada a Objeto Construtores e Sobrecarga Linguagem de Programação Orientada a Objeto Construtores e Sobrecarga Professora Sheila Cáceres Sobrecarga (overloading) Na mesma classe podemos definir vários métodos com o mesmo nome Sobrecarga O tipo

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

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

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

C com introdução a OO

C com introdução a OO ... Centro Integrado de Tecnologia da Informação C com introdução a OO ... Centro Integrado de Tecnologia da Informação Aula 9 Ronald Dener - Instrutor Matheus Soares - Monitor 17 / outubro 17 / outubro

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

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

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

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

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

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

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

Array em Java. Figura 1 - Exemplo de um array de inteiros

Array em Java. Figura 1 - Exemplo de um array de inteiros Array em Java 1. Objetivos Nesta lição, abordaremos Array em Java. Primeiro, definiremos o que é array e, então, discutiremos como declará-los e usá-los. Ao final desta lição, o estudante será capaz de:

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 6 POO 1 Construtores. Profa. Elaine Faria UFU

Aula 6 POO 1 Construtores. Profa. Elaine Faria UFU Aula 6 POO 1 Construtores 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

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

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

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

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

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-5 Estruturas de Decisão e Controle. Arrays em Java Prof. Esbel Tomás Valero Orellana Até Aqui Modelos e POO Classes e sua implementação em Java Encapsulamento Tipos de

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

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

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

Ex: carro_desportivo poderá ser uma subclasse de automóvel (carro_desportivo é_um automóvel)

Ex: carro_desportivo poderá ser uma subclasse de automóvel (carro_desportivo é_um automóvel) Herança capacidade de uma classe (subclasse) herdar, adquirir atributos e funcionalidades de outra classe (superclasse), podendo juntar algumas especificidades e/ou alterar outras. Existe uma relação tipo

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

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

Atributos e Métodos de Classe

Atributos e Métodos de Classe Algoritmos e Programação II Aula 5 Atributos e Métodos de Carga *Adaptado do material do Prof. Júlio Machado e Profa. Isabel Manssour Atributos e Métodos de Classe Java permite declarar duas categorias

Leia mais

Implementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação

Implementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação Implementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação Introdução Além de utilizar as classes presentes na biblioteca padrão, programadores podem definir suas próprias

Leia mais

Classes, instâncias e métodos de acesso. prática

Classes, instâncias e métodos de acesso. prática Classes, instâncias e métodos de acesso prática Exercício 01 Crie a classe Ponto que possui duas dimensões (int x, int y). Crie os métodos get e set. Faça o main para instanciar e testar a classe. Adicione

Leia mais

Programação Orientada a Objetos. SANTOS, Rafael (PLT) e Guia de Estudo SCJP. SIERRA, Kathy e BATES, Bert

Programação Orientada a Objetos. SANTOS, Rafael (PLT) e Guia de Estudo SCJP. SIERRA, Kathy e BATES, Bert Programação Orientada a Objetos. SANTOS, Rafael (PLT) e Guia de Estudo SCJP. SIERRA, Kathy e BATES, Bert Há situações em que não deve haver instâncias de determinadas classes Há modelos incompletos que

Leia mais

Fundamentos de programação

Fundamentos de programação Fundamentos de programação Métodos Modularização de código Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno O que é um método? Um método é um trecho de código identificado Possuem um

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

DCC / ICEx / UFMG. Membros de Classes. Eduardo Figueiredo.

DCC / ICEx / UFMG. Membros de Classes. Eduardo Figueiredo. DCC / ICEx / UFMG Membros de Classes Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Membros de Uma Classe Construtor Métodos De classe De objeto Variáveis De classe De Objeto Constantes Construtores

Leia mais

Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a. cada classe e cada membro da classe (dados e métodos)

Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a. cada classe e cada membro da classe (dados e métodos) Mecanismos de controlo de acesso Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a cada classe e cada membro da classe (dados e métodos) Modificadores de acesso: public protected private

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

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

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

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

Classes abstratas: não podem ser instanciadas. Poderoso Mecanismo de Abstração:

Classes abstratas: não podem ser instanciadas. Poderoso Mecanismo de Abstração: Classes abstratas: não podem ser instanciadas Poderoso Mecanismo de Abstração: Permite a herança do código sem violar a noção de subtipo Diz o que deve ter a subclasse, mas não diz como! A classe abstrata:

Leia mais

Sobrecarga. Algoritmos e Programação II. Aula 3 Sobrecarga

Sobrecarga. Algoritmos e Programação II. Aula 3 Sobrecarga Algoritmos e Programação II Aula 3 Sobrecarga *Adaptado do material do Prof. Júlio Machado Sobrecarga Em várias linguagens é comum encontrarmos rotinas que fazem basicamente a mesma coisa, porém, com nomes

Leia mais

Fundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes

Fundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes Fundamentos de Programação Linguagem C++ aula II - Variáveis e constantes Prof.: Bruno Gomes 1 Variáveis Representa uma porção da memória que pode ser utilizada pelo programa para armazenar informaçõ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

Programação Orientada a Objetos C ++ 4 Conceitos de OO em Java Classes e Objetos. Departamento de Informática Prof. Anselmo C.

Programação Orientada a Objetos C ++ 4 Conceitos de OO em Java Classes e Objetos. Departamento de Informática Prof. Anselmo C. Programação Orientada a Objetos C ++ 4 Conceitos de OO em Java Classes e Objetos Departamento de Informática Prof. Anselmo C. de Paiva Classes O conjunto de requisições que um objeto pode cumprir é determinado

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

Vetores. IFSC/Florianópolis - Programação Orientada a Objetos + POO - prof. Herval Daminelli

Vetores. IFSC/Florianópolis - Programação Orientada a Objetos + POO - prof. Herval Daminelli Vetores De modo geral, em linguagem de programação, vetores ou arrays são estruturas de dados que permitem que uma mesma variável possa armazenar mais de um valor; Em Java, vetores são coleções de dados,

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

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

Métodos em Java. Prof. Esp. André Aparecido da Silva (Aulas 31 a 33) Disponível em:

Métodos em Java. Prof. Esp. André Aparecido da Silva (Aulas 31 a 33) Disponível em: Métodos em Java Prof. Esp. André Aparecido da Silva (Aulas 31 a 33) Disponível em: http://www.oxnar.com.br/aulas/java/ Os métodos são conhecidos como funções, ações de execuções ou procedimentos, sendo

Leia mais

final class UltimosDiasMeses{ static final int[] DIAS_DO_MES = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; }

final class UltimosDiasMeses{ static final int[] DIAS_DO_MES = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; } Fundação CECIERJ - Vice Presidência de Educação Superior a Distância Curso de Tecnologia em Sistemas de Computação Disciplina: Programação Orientada a Objetos AP1 1 semestre de 2017. Nome Assinatura Observações:

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

package especificadores1; public class Alpha { public static void alphapublic(){ System.out.println("Alpha public!"); }

package especificadores1; public class Alpha { public static void alphapublic(){ System.out.println(Alpha public!); } package especificadores1; public class Alpha { public static void alphapublic(){ System.out.println("Alpha public!"); protected static void alphaprotected(){ System.out.println("Alpha protected!"); static

Leia mais

Genéricos. Profa. Thienne Johnson EACH/USP

Genéricos. Profa. Thienne Johnson EACH/USP Genéricos Profa. Thienne Johnson EACH/USP Java, como programar, 6ª edição Deitel & Deitel Capítulo 18 Material complementar http://wps.prenhall.com/br_deitel_comoprogra_6/ Todas as classes em Java herdam,

Leia mais

Threads. O que é uma Thread? Paralelismo

Threads. O que é uma Thread? Paralelismo Threads em Java 1 O que é uma Thread? Paralelismo Threads Multi- threading é o mecanismo de concorrência suportado explicitamente pela linguagem Java. Os mecanismos de gerenciamento e sincronização de

Leia mais

Programação OO em Java. Profa Andréa Schwertner Charão DELC/CT/UFSM

Programação OO em Java. Profa Andréa Schwertner Charão DELC/CT/UFSM Programação OO em Java Profa Andréa Schwertner Charão DELC/CT/UFSM Sumário Herança Visibilidade de atributos e métodos Extensão e sobreposição Uso de super Referências para objetos Polimorfismo Conceitos

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

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

LINGUAGEM C: FUNÇÕES FUNÇÃO 04/07/2017. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa.

LINGUAGEM C: FUNÇÕES FUNÇÃO 04/07/2017. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. LINGUAGEM C: FUNÇÕES Prof. André Backes FUNÇÃO Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa. printf(): função que escreve na tela scanf(): função que lê o teclado

Leia mais

Atribuições: Valores, Ponteiros e Referências

Atribuições: Valores, Ponteiros e Referências Atribuições: Valores, Ponteiros e Referências Estruturas de Dados Prof. Vilson Heck Junior Sobre Variáveis Aprendemos, em introdução à programação, que possuem 3 partes mais importantes: Nome; Tipo de

Leia mais

Construtores e Especificadores de Acesso

Construtores e Especificadores de Acesso Construtores e Especificadores de Acesso Professora: Fátima L. S. Nunes 1 1 1 Orientação a Objetos Conceitos do Paradigma de Orientação a Objetos já vistos: Classes atributos e métodos Objetos instanciação

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

Polimorfismo. O que é polimorfismo?

Polimorfismo. O que é polimorfismo? O que é polimorfismo? Polimorfismo Significa que variáveis podem referenciar mais do que um tipo. Não é um conceito novo e várias linguagens de programação aplicam. Funções são polimórficas quando seus

Leia mais

1 Introdução e Conceitos básicos

1 Introdução e Conceitos básicos 1 Introdução e Conceitos básicos Aula 02 Sumário Capítulo 1 Introdução e Conceitos básicos 1.1 Modelos 1.2 Tipos primitivos de dados 1.3 Tipo Abstrato de dados 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2

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

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Sobrecarga de Métodos e Palavras Reservadas: this, static e final Prof. Francisco de Assis S. Santos, Dr. São José, 2014. Sobrecarga de Métodos Métodos sobrecarregados devem

Leia mais

Programação I Funções. Prof. Carlos Alberto

Programação I Funções. Prof. Carlos Alberto Programação I Funções Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Funções Funções são blocos de códigos que podem ser nomeados e chamados de dentro de um programa; Funções

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

Introdução à Programação. Conceitos Básicos de Orientação a Objetos

Introdução à Programação. Conceitos Básicos de Orientação a Objetos Introdução à Programação Conceitos Básicos de Orientação a Objetos Tópicos da Aula Aprenderemos fundamentos do paradigma orientado a objetos, mas antes veremos o que é paradigma Conceito de paradigma Diferentes

Leia mais

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

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Variáveis e Métodos de Classe Em Java, quer as classes quer as instâncias das classes são objectos. Onde está o estado da classe? Com que operações é manipulado? UBI, Departamento de Informática T04-1

Leia mais

Dados armazenados em um objeto podem ser tanto primitivos, tais como inteiros ou caracteres, ou referências para outros objetos.

Dados armazenados em um objeto podem ser tanto primitivos, tais como inteiros ou caracteres, ou referências para outros objetos. 2. Classes e Objetos Uma classe é um modelo que define os atributos e métodos comuns a um conjunto de objetos de forma encapsulada. Atributos são informações ou dados que descrevem, categorizam ou quantificam

Leia mais

Classe Interna (Inner)

Classe Interna (Inner) Classe Interna (Inner) Primeira versão da linguagem não possuia esse conceito, autores consideravam um complicador para linguagem; A partir da versão 1.1 o conceito foi introduzido; Verificou-se que o

Leia mais

Programação Orientada aos Objectos I

Programação Orientada aos Objectos I Programação Orientada aos Objectos I UEM Fevereiro 2014 Docente: eng a Tatiana Kovalenko AULA TEÓRICA 1 Tema 1. Introdução à POO Ø Revisão: POO. Classes e Objectos. Elaborado por eng.tatiana Kovalenko,

Leia mais

Programação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes -

Programação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes - Programação Java - Herança, Classes Abstratas e Interfaces - Marco Fagundes mfagundes@tre-pa.gov.br 1 Tópicos Herança Ligação Dinâmica Polimorfismo 2 Herança Herança é um conceito que mapeia as classes

Leia mais

Desenvolvimento Modular de Procedimentos

Desenvolvimento Modular de Procedimentos Desenvolvimento Modular de Procedimentos Em Java os Procedimentos implementam-se com Métodos Desenho Modular de Procedimentos A melhor metodologia para o desenvolvimento de procedimentos com alguma dimensão

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

PROGRAMAÇÃO ORIENTADA A OBJETOS: OCULTAR INFORMAÇÕES E ENCAPSULAMENTO

PROGRAMAÇÃO ORIENTADA A OBJETOS: OCULTAR INFORMAÇÕES E ENCAPSULAMENTO COLÉGIO ESTADUAL ULYSSES GUIMARÃES CURSO TÉCNICO PROFISSIONALIZANTE EM INFORMÁTICA ERINALDO SANCHES NASCIMENTO PROGRAMAÇÃO ORIENTADA A OBJETOS: OCULTAR INFORMAÇÕES E ENCAPSULAMENTO FOZ DO IGUAÇU 2013 LISTA

Leia mais

Programação Orientada por Objectos 2010/11. 2º Exame 28 de Junho de 2011

Programação Orientada por Objectos 2010/11. 2º Exame 28 de Junho de 2011 Programação Orientada por Objectos 2010/11 2º Exame 28 de Junho de 2011 Instruções (leia com cuidado): Escreva de forma CLARA o seu nome e número em todas as folhas. O exame contém 8 páginas dividido em

Leia mais

RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:

RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em: RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em: http://www.oxnar.com.br/aulas/java ATIVIDADE ELABORAR O PROGRAMA DE CÁLCULOS DE ÁREAS USANDO

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Modificadores de Acesso: public e private Prof. Tulio Alberton Ribeiro Instituto Federal de Santa Catarina IFSC campus São José tulio.alberton@ifsc.edu.br 31 de julho de

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

Instituto Federal de Educação, Ciência e Tecnologia do Ceará IFCE Programa Educacional Brasileiro de Desenvolvimento para ios BEPiD PROVA OBJETIVA

Instituto Federal de Educação, Ciência e Tecnologia do Ceará IFCE Programa Educacional Brasileiro de Desenvolvimento para ios BEPiD PROVA OBJETIVA Instituto Federal de Educação, Ciência e Tecnologia do Ceará IFCE Programa Educacional Brasileiro de Desenvolvimento para ios BEPiD PROVA OBJETIVA 01) A negação de eu não gosto de acordar cedo e eu sou

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

Programação OO em Java. Profa Andréa Schwertner Charão DLSC/CT/UFSM

Programação OO em Java. Profa Andréa Schwertner Charão DLSC/CT/UFSM Programação OO em Java Profa Andréa Schwertner Charão DLSC/CT/UFSM Sumário Herança Visibilidade de atributos e métodos Extensão e sobreposição Uso de super Referências para objetos Polimorfismo Conceitos

Leia mais