CLASSES EM JAVA Dilvan Moreira (baseado no livro Big Java)

Slides:



Advertisements
Apresentações semelhantes
Programação orientada a objetos
Advertisements

Laboratório de programação III Linguagem C
Estruturas de Repetição
Paulo Marques Hernâni Pedroso
Prof. Thiago Pereira Rique
Algoritmos e Estrutura de Dados I
Classes e objetos Arrays e Sobrecarga
Paradigmas de Linguagens de Programação Paradima da Programação Orientada à Objetos Professor: Armando Hage Belém-2008.
Linguagem técnica de programação I Java – REVISÃO
Unidade I: “Dê um mergulho rápido”
Programação Orientada a Objetos com Java
Programação I Aula 2 (Métodos)
Introdução à Programação Orientada a Objetos com Java
Aula 3 Igor Ebrahim (ies) if669 - Introdução à Programação Monitoria de IP.
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos I Professora: Cheli Mendes Costa This.
By Ducheno Kelly Centro de Formação São Domingos.
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos I Professora: Cheli Mendes Costa Classes e Objetos em Java.
Aulas 2 e 3 – Java – Prof. Marcelo Heitor # O método main e argumentos na linha de comando; # Fluxo padrão de entrada e saída; # A classe JOptionPane;
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
Linguagem de Programação C#
Programação Orientada a Objetos - Java
Curso de Aprendizado Industrial Desenvolvedor WEB
Aula Prática 4 Monitoria IP/CC (~if669).
Polimorfismo.
Linguagem de Programação JAVA
M ÉTODOS DA C LASSE S TRING. FUNÇÕES COM STRING Uma string é um tipo texto que corresponde à união de um conjunto de caracteres. Em Java, as strings são.
STRINGS Dilvan Moreira (baseado no livro Big Java e Z. Liang)
JAVA Sintaxe.
Certificação Marco Antonio. Introdução A compreensão desse capítulo é muito importante pois trata de um assunto essencial em qualquer linguagem de programação,
Aula Prática 1 Monitoria IP/CC (~if669) (A partir do slide elaborado por Luís Gabriel)
Aula Prática 3 Funções Monitoria Introdução à Programação.
Conceitos Básicos e Manipulação de Objetos
Modificadores Programação II.
Copyright 2000, Departamento de Informática, UFPE. Todos os direitos reservados sob a legislação em vigor. Orientação a Objetos e Java.
Laboratório de Programação II Método main Dados e Métodos de Classes.
Array e ArrayList LPOO – 01/09/14.
Aula Prática 1 Monitoria IP/CC (~if669) (A partir do slide elaborado por Luís Gabriel)
Linguagem de Programação
Arrays e Matrizes na Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)
Arrays Outline 7.1 Introdução 7.2 Arrays 7.3 Declarando e Criando Arrays 7.4 Exemplos usando arrays 7.5 Ordenando arrays 7.6 Procurando em.
4 Aula – Introdução ao PHP Márcio Ferreira da Silva.
1. 2 Programação Orientada a Objetos Prof. Maurício Rodrigues de Morais
Java Básico Lab Ruddá Beltrão | Cristian Costa.
Iterações Dilvan Moreira. Lembrando... Desenvolvimento de programas  Desenvolvimento incremental:  Evitar depuração de muito código.  A técnica consiste.
C suporta algumas Constantes de caráteres especiais de barra invertida (backslash) que são usados em funções de saída. Constantes de caráteres especiais.
IFRN Técnico em Informática para Internet Desenvolvimento de Algoritmos Prof. Gilbert Azevedo.
Lógica de Programação Curso Técnico em Informática – Escola Olímpio Professor Marcelo Josué Telles
INE5408 Estruturas de Dados Introdução a Árvores - Conceitos - Árvores Binárias - Métodos e algoritmos de percurso - Métodos e algoritmos de balanceamento.
Programação para Internet Aula 06 Linguagem Java (Orientação a Objetos – Atributos e Métodos)
1 Interface (o termo) » Interface (a palavra reservada): Java estendeu o conceito de interfaces à um nível ainda mais flexível que permite construir entidades.
Polimorfismo com Interfaces Pacotes em Java Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB.
Minicurso Java Básico Cristian Backy | Cristian Costa | Ruddá Beltrão.
Clique para editar o título Linguagem C Para programadores Python PMR
Jean Carlo Mendes
Jean Carlo Mendes
Laboratório de Computação Aula 05 – Array Prof. Fábio Dias
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
MÉTODOS Dilvan Moreira (baseado no livro Big Java)
CONSTRUINDO CLASSES Dilvan Moreira (baseado no livro Big Java)
Lógica de programação Estruturas de seleção Estruturas de repetição Sub-Rotinas 1.
Introdução à Orientação a Objetos em Java Prof. Gustavo Wagner (Alterações) Slides originais: Prof. Tiago Massoni Desenvolvimento de Sistemas FATEC-PB.
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
PROGRAMAÇÃO ORIENTADA A OBJETOS EM C++ PAE: Pedro Shiguihara Professor: Dilvan Moreira.
IF E ITERAÇÃO WHILE Dilvan Moreira (baseado no livro Big Java e T. Munzner)
PROGRAMANDO SEM POO EM JAVA Dilvan Moreira (baseado no livro Big Java)
VARIÁVEIS EM JAVA Dilvan Moreira (baseado no livro Big Java)
FUNÇÕES Dilvan Moreira (baseado em material de Z. Liang)
Vetores de uma dimensão Nota Índice Posição identificando cada elemento Nome Comum para todos os elementos Valor Semelhante a uma variável.
Aula 5 - Métodos. Desenvolvimento de Programas A melhor forma de construir programas grandes é dividi-los em programas menores que executam tarefas específicas.
CLASSES EM JAVA Dilvan Moreira (baseado no livro Big Java)
Transcrição da apresentação:

CLASSES EM JAVA Dilvan Moreira (baseado no livro Big Java)

Lembrando Atribuição …  Operador: =  = não significa uma afirmação de igualdade  = é usado para mudar o valor de uma variável 1. int luckyNumber = 13; //[linha 1] 2. luckyNumber = 12; //[linha 2]

Lembrando: Operadores Relacionais  Testam dois valores (operandos)  Operadores  == egual retorna vaerdadeiro se igual, falso se não nota: não confundir com =  != diferente retorna verdadeiro se diferente, falso se igual  < menor que  <= menor ou igual que  > maior que  >= maior ou igual que

Lembrando: 4 coisas Necessárias em Qualquer Loop  Dê valores iniciais a uma ou mais variáveis usadas no loop  Teste para ver quando o loop para  Um ou mais comandos úteis  Mude alguma coisa para levar o processo mais próximo a seu fim test do useful stuff truefalse initialize get closer to termination como todos os loops trabalham

Leitura  Primeira metade do capítulo 2 (1st Edition)  2.1 Using and Constructing Objects  2.2 Object Variables  2.3 Defining a Class  2.4 Testing a Class  2.5 Instance Fields  2.6 Constructors

Programação  Programação é o problema de especificar:  os dados que vão ser usados ou manipulados  as operações que agem sobre esses dados  a ordem em que as operações são aplicadas aos dados  Até agora: especificamos dados usando os tipos primitivos  com operações pré-definidas como +, -, *, e /

Programando com Classes  E se os dados que queremos trabalhar são mais complexos que esses tipos primitivos?

Programando com Classes  E se os dados que queremos trabalhar são mais complexos que esses tipos primitivos?  Nós podemos criar nossos próprios tipos de dados: criando uma classe, nela:  especificamos a natureza dos dados que vamos usar  criamos as operações que vão ser feitas no nosso conjunto de dados  Operações definidas dentro de uma classe são chamadas métodos

Programando com Classes  Nós podemos ter múltiplas variáveis de tipos primitivos (ex: int)  cada uma com um nome diferente  cada uma com um valor diferente int x = 5; int y = 17;  Similarmente para classes: Nós podemos ter múltiplas variáveis (ou instâncias) de uma classe (ex: String)  cada uma com um nome diferente  cada uma com um valor diferente String name = “Tamara Munzner”; String computerName = “pangolin”;

Programando com Objetos  Object: uma instancia específica de uma classe  Classes são moldes para a criação de objetos  do mesmo modo que o tipo int é um molde para a criação de números inteiros  programadores definem classes  e objetos são criados a partir de classes

Objetos e Classes

 Objeto: entidade que manipulamos nos programas (pela chamada de métodos)  Cada objeto pertence a uma classe. Por exemple, System.out pertençe a classe PrintStream

Métodos  Método: Sequência de instruções que acessam os dados de um objeto  Objetos são manipulados através de seus métodos  Classe: Define um conjunto de objetos com o mesmo comportamento (conjunto de métodos)  A classe determina quais métodos são permitidos String greeting = "Hello"; greeting.println() // Error greeting.length() // OK

Exemplo de Uso de Objetos public class StringTest { public static void main (String[] args) { String firstname; String lastname; firstname = new String (“Kermit"); lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); }

Exemplo de Uso de Objetos  Declara dois objetos String diferentes  um chamado firstname e outro chamado lastname public class StringTest { public static void main (String[] args) { String firstname; String lastname; firstname = new String ("Kermit"); lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); }

Exemplo de Uso de Objetos  A simples declaração de uma variável não cria objetos! public class StringTest { public static void main (String[] args) { String firstname; String lastname;

Exemplo de Uso de Objetos  A simples declaração de uma variável não cria objetos!  Apenas diz ao compilador para reservar espaço para esses dois nomes  Esses espaços não vão armazenar os objetos  Eles guardam ponteiros (referências) para o endereço onde os objetos são armazenados.  Os objetos são armazenados em algum lugar na memória. public class StringTest { public static void main (String[] args) { String firstname; String lastname;

public class StringTest { public static void main (String[] args) { String firstname; String lastname; firstname = new String ("Kermit"); lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); } Exemplo de Uso de Objetos  Assim firstname e lastname não vão conter objetos Strings  elas contém referencias para objetos String

Construtores  Construtores: método com o mesmo nome da classe  sempre usado com new  cria o objeto  geralmente inicializado com dados firstname = new String (“Kermit");

public class StringTest { public static void main (String[] args) { String firstname; String lastname; firstname = new String (“Kermit"); lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); } Exemplo de Uso de Objetos  new e o construtor de String criam uma instancia da classe String  um objeto String com o valor “Kermit”  Coloca esse objeto em algum lugar da memória  coloca o endereço do objeto em firstname

Exemplo de Uso de Objetos firstname

Exemplo de Uso de Objetos firstname String object “Kermit” expressão no lado direito do operador

Exemplo de Uso de Objetos firstname String object “Kermit” variável aponta para o resultado da expressão da direita: no caso, o objeto string “Kermit”

public class StringTest { public static void main (String[] args) { String firstname; String lastname; firstname = new String (“Kermit"); lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); } Exemplo de Uso de Objetos  Do mesmo jeito …

Exemplo de Uso de Objetos  Declaração e podem ser feitos na mesma linha  exatamente com é feito com tipos primitivos public class StringTest { public static void main (String[] args) { String firstname = new String (“Kermit"); String lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); }

Programa  Crie uma classe para representar retângulos. Nessa classe crie um método intersection que calcula a intersecção de dois retângulos.  Rectangle r3 = r1.intersection(r2);  Escreva um programa IntersectionPrinter que constrói dois retângulos, imprime seus valores, acha a interseção entre eles e imprime os valores da interseção.

Perguntas?