A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Programação Orientada a Objetos – Parte II

Apresentações semelhantes


Apresentação em tema: "Programação Orientada a Objetos – Parte II"— Transcrição da apresentação:

1 Programação Orientada a Objetos – Parte II
Prof. André Argeri Ribeirão Preto, Agosto 2009

2 Conversões • para String – String.ValueOf • String para int
– Integer.parseInt() • String para float – Float.parseFloat(); • String para double – Double.parseDouble(); • String para Char – minhastring.charAt(0);

3 Operadores Aritiméticos
• São representados por um conjunto de símbolos que definem as operações matemáticas básicas.

4 Operadores de Atribuição
Operadores Matemáticos de Atribuição

5 Operadores Relacionais
• São utilizados para realizar comparações entre variáveis do mesmo tipo.

6 Estrutura condicional
Estrutura Condicional Simples if ( condicao ) { } Estrutura Condicional Composta else

7 Estrutura Condicional Aninhada
if ( condicao1 ) { if ( condicao2 ) ... } else if ( condicao3 )

8 Estrutura Condicional Mutuamente Exclusiva
if ( condicao1 ) { ... } else if (condicao 2) else if (condicao 3) else

9 Estrutura Condicional Mutuamente Exclusiva
– switch ... case switch(variavel) { case 1: ... break; case 2: default: }

10 Estrutura de Repetição
Estrutura FOR – Utilizada quando se sabe o número de vezes que um trecho do programa deve ser repetido for ( condicao_inicial; condicao_parada; incremento ou decremento ) { trecho do programa }

11 Estrutura de Repetição
Exemplos de utilização da Estrutura FOR – Números entre 1 e 100 com incremento de 1 • for ( int i = 1; i <= 100; i++ ) – Números entre 100 e 1 com decremento de 1 • for ( int i = 100; i >= 1 ; i-- ) – Números entre 7 e 77 com incremento de 7 • for ( int i = 7; i <= 77; i += 7 ) – Números entre 20 e 2 com decremento de 2 • for ( int i = 20; i >= 2; i -= 2 )

12 Estrutura de Repetição
Estrutura WHILE – Utilizada quando o número de repetições não é fixo. public static void main(String[] args) { int cont = 1; while ( cont <= 10 ) System.out.println(cont); cont++; }

13 Estrutura de Repetição
Estrutura DO..WHILE – Utilizada quando o número de repetições não é fixo. public static void main(String[] args) { int cont = 1; do { System.out.println(cont); cont++; } while(cont <= 10);

14 Exercícios Escreva um programa que receba um conjunto
de 5 (cinco) números inteiros, calcule e mostre: – Soma desses números – Média desses números – Maior número digitado – Menor número digitado – Total de números positivos – Total de números negativos

15 Vetor • Definição – Estruturas de dados que contém itens do mesmo tipo
– Uma vez criadas mantém o mesmo tamanho estáticas • Representam um conjunto de dados localizado continuamente na memória – Cada localização da memória tem o mesmo nome – Cada localização da memória tem o mesmo tipo

16 Vetor • Índices – Em Java o índice dos Arrays começa em 0 (zero)
• v[0], v[1], ... , v[n] – v.length • retorna o tamanho (número de elementos)do array v • Declaração – int v[] = new int[10] – String c[] = new String[100];

17 Vetor public static void main(String[] args) { int vet[] = new int[5];
System.out.println("Tamanho do vetor = " + vet.length); System.out.println("Elementos do vetor"); for (int i = 0; i < vet.length; i++) System.out.println(" Posição " + i + " = " + vet[i]); }

18 Vetor public static void main(String[] args) {
int vet[] = {10,20,30,40,50}; System.out.println("Tamanho do vetor = " + vet.length); System.out.println("Elementos do vetor"); for (int i = 0; i < vet.length; i++) System.out.println(" Posição " + i + " = " + vet[i]); }

19 Matriz • Arranjos multidimensionais organizados através de linhas e colunas • Exemplo: Matrizes 2D – matriz[linha][coluna] • Declaração – int mat[][] = new int[3][4];  3 linhas 4 colunas – int mat[][] = {{1,2},{3,4}};  2 linhas 2 colunas

20 Exercícios Faça um programa que preencha dois vetores de dez elementos cada um e mostre o vetor resultante da intercalação entre eles.

21 Exercícios Faça um programa que preencha um vetor com 8 posições de números inteiros, calcule e mostre dois vetores resultantes. O primeiro vetor resultante deve conter os números positivos, enquanto o segundo deve conter os números negativos. Cada vetor resultante vai ter no máximo, oito posições, que poderão não ser utilizadas.

22 Exercícios - Faça um programa que preencha um vetor de 10 números inteiros, calcule e mostre o vetor resultante de uma ordenação crescente.

23 Exercícios - Faça um programa que receba 6 números inteiros e mostre:
- Os números pares digitados; - A quantidade de pares digitados; - A soma dos números pares; - Os números impares digitados; - A quantidade de impares digitados; - A soma dos números impares;

24 Exercícios - Desenvolva um programa que preencha uma matriz 10x20 com números inteiros e some cada uma das linhas, armazenando o resultado das somas em um vetor. A seguir, o programa deverá multiplicar cada elemento da matriz pela soma da linha correspondente e mostrar a matriz resultante.

25 Exercícios - Desenvolva um programa que preencha uma matriz 6x4 com números inteiros, calcule e mostre quantos elementos dessa matriz são maiores que 30 e, em seguida, monte uma segunda matriz com os elementos diferentes de 30. No lugar do número 30 da segunda matriz, coloque o número 0.

26 Exercícios - Crie um programa que preencha uma matriz 8x8 com números inteiros e mostre uma mensagem dizendo se a matriz digitada é simétrica. Uma matriz só pode ser considerada simétrica se A[i,j] = A[j,i].

27 Exercícios - Elabore um programa que preencha uma matriz 10x10 com números inteiros, execute as trocas especificadas a seguir e mostre a matriz resultante: - a linha 2 com a linha 8 - a coluna 4 com a coluna 10 - a diagonal principal com a diagonal secundária - a linha 5 com a linha 10

28 Exercícios - Faça um programa que preencha uma matriz 7x7 de números inteiros e crie dois vetores com 7 posições cada um que contenham, respectivamente, o maior elemento de cada uma das linhas e o menor elemento de cada uma das colunas. Escreva a matriz e os dois vetores gerados.

29 Exercícios - Crie um programa que leia um vetor V contendo 18 elementos. A seguir, o programa deverá distribuir esses elementos em uma matriz 3x6 e, no final, mostrar a matriz gerada.

30 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : FUNDAMENTOS

31 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : FUNDAMENTOS

32 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : FUNDAMENTOS
• Classe – É um conjunto de códigos de programação que incluem a definição dos atributos e dos métodos necessários para a criação de um ou mais objetos. – Contém toda a descrição da forma do objeto, é um molde para a criação do objeto, é uma matriz geradora de objetos, é a fábrica de objetos. – Uma classe também é um tipo definido pelo usuário.

33 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : FUNDAMENTOS
• Objeto ou Instância – Tem determinadas propriedades que o caracterizam e que são armazenadas no próprio objeto. As propriedades de um objeto são chamadas ainda de atributos. – O objeto interage com o meio e em função de excitações que sofre, realiza determinadas ações que alteram o seu estado (atributos). – Um objeto é uma entidade única que reúne atributos e métodos, ou seja, reúne as propriedades do objeto e as reações aos estímulos que sofre.

34 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : FUNDAMENTOS

35 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : FUNDAMENTOS
Declarando uma Classe: class Pessoa { string nome; void Andar() { } } Declarando um Objeto Pessoa objPessoa = new Pessoa();

36 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : FUNDAMENTOS

37 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Atributos
Atributos de Classe – Quando um atributo é dividido entre todos os objetos criados, ele é armazenado na classe. EX: Um contador de relógios criados. Atributos de Objeto – Quando um atributo é individual ele é armazenado no objeto. EX: A hora de um relógio. String nome = “Andre”; int idade = 28;

38 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Métodos
• As ações ou comportamento dos objetos são chamados de métodos. • Os comportamentos do objeto são definidos na classe através dos métodos e servem para manipular e alterar os atributos do objeto. • Manipuladores – set = atribuem valores – get = retornam valores

39 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Métodos

40 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Métodos
Testando a classe Pessoa

41 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Métodos
Métodos que não retornam valores – O nome do método é precedido da palavra reservada void public void ExibirMensagem(String msg) { System.out.println(msg); }

42 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Métodos
• Métodos que retornam valores – O nome do método é precedido do tipo de dados que o método deverá retornar – Obrigatoriamente esses métodos devem conter a palavra reservada return public int Quadrado(int valor ) { return valor*valor; } public int Cubo(int valor ) return valor*valor*valor;

43 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Métodos
• Regras de Escopo – Local – Global int x = 5;// atributo global public void Imprimir() { int x = 10;// atributo local System.out.println("X (local) = " + x ); System.out.println("X (global) = " + this.x ); }

44 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Fundamentos
• Na linguagem Java os tipos de dados são divididos em dois grupos: – Primitivos • boolean, char, int, float, double, etc – Referência (ou não primitivos) • Objetos • Quando tipos primitivos são criados eles são inicializados automaticamente com valor zero (ou false no caso do boolean). • Os tipos Referência são inicializados com null

45 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Fundamentos
Tipos Referência inicializados com null public static void main(String[] args) { Pessoa objPessoa = new Pessoa(); objPessoa.ExibirNome(); }

46 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Construtores
– Construtores são métodos especiais responsáveis pela implementação de ações necessárias para a existência de um objeto – É o primeiro método executado quando a classe é instanciada. – Possui o mesmo nome da classe public Pessoa() { nomepessoa = ""; }

47 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Construtores
• Sobrecarga de Construtores – Tanto os métodos de uma classe quanto seus construtores podem ser sobrecarregados. – Isso permite a definição de métodos ou construtores com mesmo nome, mas com funcionalidades diferentes.

48 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Construtores
• Sobrecarga de Construtores public Pessoa() { nomepessoa = ""; } public Pessoa(String nome) nomepessoa = nome;

49 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Construtores
• Utilizando construtores sobrecarregados public static void main(String[] args) { Pessoa p1 = new Pessoa(); Pessoa p2 = new Pessoa("José"); p1.setNome("João"); p1.ExibirNome(); p2.ExibirNome(); }

50 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Métodos
• Passagem de Parâmetros – Passagem por Valor • Uma cópia do valor da variável é passada para o método chamador • Todas os tipos de dados primitivos (int, char, double) são passados por valor – Passagem por Referência • O método chamador tem acesso direto ao valor armazenado na variável • É mais rápido do que a Passagem por Valor, pois não “duplica” os dados na memória; • Em Java todos os objetos são passados por referência – Arrays são objetos em Java

51 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Métodos

52 PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) : Métodos

53 Exercícios • Cria uma classe chamada Contador , com as seguintes características: – Tenha uma variável inteira capaz de armazenar o valor do contador – Possua um construtor que inicializa o contador com zero – Contenha um construtor no qual seja possível informar o valor inicial para o contador – Um método para incrementar o contador (em 1) – Um método para decrementar o contador (em 1) – Um método para imprimir o contador

54 Exercícios • Escreva uma classe chamada Calculadora essa classe deverá conter os seguintes métodos: – Soma – Subtracao – Multiplicacao – Divisao Importante!!! Cada método deverá conter outro sobrecarregado para operar com números inteiros e ponto flutuante (double)

55 Exercícios • Crie uma classe JogoDaVelha que permita escrever um programa completo para jogar o Jogo da Velha. • A classe deve conter como dados privados um arranjo bidimensional de inteiros de 3 por 3. • Um construtor deve inicializar o tabuleiro vazio com zeros em todas as posições. • O jogo poderá ser utilizado por dois jogadores humanos.

56 Exercícios • Todo movimento deve ocorrer apenas para uma posição vazia do arranjo – Caso o jogador tente mover para uma posição ocupada uma mensagem deve ser exibida. • Depois de cada movimento, determine se alguém ganhou o jogo, ou se houve empate – Além disso, imprima o status do tabuleiro Jogo da Velha utilizando POO X | 0 | X X | 0 | 0 0 | X | • Crie uma classe de Teste para ilustrar o funcionamento do Jogo


Carregar ppt "Programação Orientada a Objetos – Parte II"

Apresentações semelhantes


Anúncios Google