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

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

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

Linguagem de Programação II Implementação

POO Fundamentos Parte III. Professor Vicente Paulo de Camargo

Aula 5 POO 1 Encapsulamento. Profa. Elaine Faria UFU

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

Aula 4 Sumário Classes e Objetos Variáveis de instância, construtores e métodos Programas de teste

AULA 13 MÉTODOS. Disciplina: Programação Orientada a Objetos Professora: Alba Lopes

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

Java Standard Edition (JSE)

PROGRAMAÇÃO ORIENTADA A OBJETOS JAVA

Linguagem de Programação. Diagrama de classes

Visibilidade e Encapsulamento

Interfaces e Classes Abstratas

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

POO - Programação Orientada a Objetos

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

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

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

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

AULA 11 PROGRAMAÇÃO ORIENTADA A OBJETOS (INTRODUÇÃO) Disciplina: Programação Orientada a Objetos Professora: Alba Lopes

Q d( ) P. a( ) c( ) e( ) c( ) S. c( ) d( )

Atributos e Métodos Estáticos

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

Programação Java. - Classes, Objetos, Atributos e Métodos - Marco Fagundes Marco Fagundes -

Aula 6 POO 1 Construtores. Profa. Elaine Faria UFU

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

A figura abaixo representa uma classe denominada Carteira. Esta classe é composta dos métodos depositar(valor) e retirar(valor) e do atributo saldo.

Introdução à Orientação a Objetos em Java

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

Reinaldo Gomes Análise/projeto estruturado

Computação II - Java - Prova 1 Prof. Adriano Joaquim de Oliveira Cruz /05/13. Questão: Total Pontos: Gráu:

Para entender o conceito de objetos em programação devemos fazer uma analogia com o mundo real:

Programação Orientada a Objeto

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

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

Aula 3 POO 1 Classe e Objeto. Profa. Elaine Faria UFU

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

Linguagem de Programação II Implementação

Sabemos que a classe é responsável por definir a estrutura e o comportamento de seus objetos. Portanto, os objetos são instâncias das classes.

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

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

Relacionamentos entre objetos

Aula 10 POO 1 Classes Abstratas. Profa. Elaine Faria UFU

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

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

Programação Orientada aos Objectos I

Introdução. Universidade Federal de Uberlândia. Programação Orientada a Objetos. Prof. Fabiano Dorça

Linguagem de programação Java

Linguagem de Programação Orientada a Objeto Coleções


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

Unidade: Introdução à POO (Programação Orientada a Objetos)

Idiomas de Programação

COMPORTAMENTOS - Observações

Programação Orientada a Objetos II

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

JAVA TÓPICOS ESPECIAIS DE PROGRAMACAO ORIENTADA A OBJETOS

Universidade Federal de Uberlândia

AULA TEÓRICA 10. Tema 9. Interface. Tema 10. Recursividade

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

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

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

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

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

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

CIÊNCIA DA COMPUTAÇÃO - LINGUAGEM DE PROGRAMAÇÃO II REVISÃO POO

A programação orientada a objetos tenta simular estes aspectos, trazendo para o computador a realidade do dia-a-dia.

ALGORITMOS. Professor: Diego Oliveira. Aula 06 - Tipos Primitivos de Dados

Curso: Técnico em Informática Integrado Disciplina: POO Carga horária: 60h Período: 2º Ano Professor: Edmilson Barbalho Campos Neto LISTA 02.

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

Implementando um Projeto. Programação em Java. Do Projeto para Implementação. Classe Pública em Java. Corpo de Classes e Métodos. Convenção de Nomes

AULA 16 HERANÇA. Disciplina: Programação Orientada a Objetos Professora: Alba Lopes

Linguagem Técnica I. Prof. Jonatas Bastos

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

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

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

POO fundamentos Parte II. Professor Vicente Paulo de Camargo

Tipos, Literais, Operadores

Tipos, Literais, Operadores

Introdução à UML. Prof. Jesus José de Oliveira Neto

Universidade Estadual de Santa Cruz

Orientação a Objetos e Java

Análise de Programação

POO UML e Outros Conceitos. Prof. Vicente Paulo de Camargo

Programação Java. - Herança e Polimorfismo - Marco Fagundes Marco Fagundes -

Conteúdo desta aula. Importância da AOO Conceito de Abstração Introdução à UML Introdução ao diagrama de classes

Métodos e Procedimentos. Prof. Jesus José de Oliveira Neto

Introdução aos aplicativos Java. Prof. Marcelo Roberto Zorzan

POO Programação Orientada a Objetos

Construtores. Introdução

MODELAGEM VISUAL DE OBJETOS COM UML DIAGRAMA DE CLASSES.

Programação Orientada a Objetos Classes e Objetos. Prof. Vicente Paulo de Camargo

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

Transcriçã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. Marco A. S. Mangan mangan@inf.pucrs.br Revisão : encapsulam dados (atributos) e operações sobre os dados (métodos) Objetos: instâncias de classes, têm estado (definido pelos atributos) e comportamento (definido pelos métodos) Todo programa Java consiste em pelo menos uma definição de classe (classes definidas pelo programador) Palavra chave class introduz uma definição de classe e é imediatamente seguida pelo nome da classe. public class ContaCorrente{ //definição dos atributos e métodos Convenção: nome de classe iniciam com letra maiúscula e tem uma letra maiúscula para cada palavra no nome da classe. Por exemplo: ExemploDeNomeDeClasse Nome da classe é chamado identificador. Identificador é uma série de caracteres que consistem em letras, dígitos, sublinhados (_) e sinais de cifrão ($), que não iniciem por dígito e não contenham espaço em branco. Java faz diferenciação entre maiúsculas e minúsculas. Definições de classes incluem (geralmente): modificador de acesso palavra-chave class nome da classe atributos de instância métodos de instância Modificadores de Acesso Determinam a visibilidade dos atributos e dos métodos. Permitem definir o encapsulamento de atributos e métodos. Três modificadores principais: private: podem ser acessados somente por métodos da mesma classe public: podem ser acessado de qualquer classe

Modificadores de Acesso Recomendação private para atributos public para métodos public class Conta { private int numero; //atributos private float saldo; public int consultanumero(){ //métodos return numero; public float consultasaldo() { return saldo; public void depositar(float valor){ saldo = saldo + valor; Definem serviços que podem ser solicitados a uma instância (objeto) Definição do método incluem: modificador de acesso; tipo do dado retornado após a execução do método; nome do método; o nome e tipos de parâmetros; código delimitado por chaves ({ ). Convenção: nome de métodos iniciam com letra minúscula e tem uma letra maiúscula para cada palavra no nome da classe. Por exemplo: verificasaldo Convenção: método get e método set get Retornam o valor dos campos (ou atributos) de um objeto, uma vez que não é possível acessá-los diretamente. set Permitem alterar o valor de um campo (ou atributo) cada vez que são chamados. Estes métodos são chamados por alguns autores de mutantes (mutator methods). Exemplo: Professor Fazer um sistema para guardar e consultar informações sobre a carga horária de professores. Assuma que um professor possui como atributos básicos nome, matrícula e carga horária.

Classe Professor public class Professor{ private String nome; private int matricula; private int cargahoraria;... Atributos estão encapsulados!!! Apenas métodos da própria classe Professor podem acessar os atributos. Classe Professor com get e set public class Professor{ private String nome; private int matricula; private int cargahoraria; public void setnome(string n) { nome = n; public String getnome() { return nome; public void setmatricula(int m) { matricula = m; public int getmatricula() { return matricula; public void setcargahoraria(int c) { cargahoraria = c; public int getcargahoraria() { return cargahoraria; UML UML (Unified Modeling Language) Linguagem para especificação, visualização e construção de sistemas que é padrão para modelagem orientada a objetos. Modo para descrever os vários aspectos de modelagem UML: diagramas. Diagrama Apresentação gráfica de uma coleção de elementos de modelo. Caso de uso, Classe, Interação, Estado, Implementação Notação UML Classe: retângulo dividido em três partes primeira parte: nome da classe segunda parte: atributos terceira parte: métodos Atributos e métodos private: - public: + Professor private String nome private int matricula private int cargahoraria public void setnome (String n) public String getnome () public void setmatricula (int m) public int getmatricula() public void setcargahoraria (int c) public int getcargahoraria() Notação UML Como Executar um Programa Java Professor - nome: String - matricula: int - cargahoraria: int + setnome (n: String) + getnome ( ): String + setmatricula (m: int) + getmatricula( ): int + setcargahoraria (c: int) + getcargahoraria( ): int Um programa é composto de várias classes e objetos. Como indicar por onde o programa começa? Em Java temos um método especial que o interpretador assume como o início do programa: main. public static void main (String args[ ])

Exemplo: Instancia Professor public class CriaInstaciaProfessor{ public static void main(string args[]){ Professor p1; Professor p2; p1 = new Professor(); p1.setnome( Maria ); p1.setmatricula(1234); p1.setcargahoraria(16); p2 = new Professor(); p1.setnome( Joao ); p1.setmatricula(5678); p1.setcargahoraria(10); 1) Escreva um método para a classe Professor que imprima todos os dados de um determinado professor. 2) Escreva uma classe Relogio com hora, minuto e segundo, que apresente métodos para informar a hora inicial, incrementar n segundos, decrementar n segundos e exibir a hora atual na tela. 3) Exemplifique a utilização desta classe criando uma aplicação que crie vários relógios e use os métodos definidos. Por exemplo, crie 3 relógios e chame alguns métodos para incrementar/decrementar n segundos do relógio. No final, exiba a hora atual de cada relógio. 4) Escreva uma classe para representar os dados de um funcionário celetista para o cálculo de seu salário líquido. O salário líquido é calculado a partir de seu salário base acrescido de R$ 20,00 por cada hora-extra realizada no mês. 5) Defina uma classe Ponto com as seguintes características: - armazene um ponto 2D (formato double); - permita especificar os valores das coordenadas x e y; - permita deslocar o ponto dx unidades para a direita e dy unidades para cima; - retorne o valor das coordenadas; - imprima na tela a posição do ponto P 6) Defina a classe CriarInstanciasPonto para testar a classe implementada no exercício 5. A classe deve: - instanciar dois objetos Ponto p1 e p2; - especificar os valores das coordenadas dos pontos; - deslocar o ponto p1 duas unidades para cima e quatro unidades para direita; - visualizar a posição dos pontos criados.

Bibliografia Deitel, H. M. E Deitel, P. J. Java: Como Programar. Bookman, Quarta Edição. 2002. Machado, Julio. Laboratório de Programação B. Notas de aula. http://www.inf.pucrs.br/~juliopm. 2003. Barnes, D. J.; Kölling, M. Objects First with Java: A Practical Introducing using BlueJ. 2003.