34
Disciplina: MsC. Alexandro Vladno Edmilson Campos MsC. Fábio Procópio Esp. Felipe Dantas MsC. João Maria MsC. Liviane Melo Corpo docente: AULA 02 Programação Orientada à Objetos

Disciplina: Programação Orientada à Objetos · Tipo Tamanho Alcance byte 1 byte -128 a 127 short 2 bytes -32.768 a 32.767 int 4 bytes -2.147.483.648 a 2.147.483.647 Long 8 bytes

  • Upload
    lydang

  • View
    239

  • Download
    0

Embed Size (px)

Citation preview

Disciplina:

MsC. Alexandro Vladno

Edmilson Campos

MsC. Fábio Procópio

Esp. Felipe Dantas

MsC. João Maria

MsC. Liviane Melo

Corpo docente:

AULA 02

Programação Orientada à Objetos

»

»

»

Edmilson Campos ([email protected]) 2

Tipo Tamanho Alcance

byte 1 byte -128 a 127

short 2 bytes -32.768 a 32.767

int 4 bytes -2.147.483.648 a 2.147.483.647

Long 8 bytes -9223372036854775808 a 9223372036854775807

/* Cuidados com o alcance do tipo: */

byte b = 127;

System.out.println("b = " + b); // b = 127

b = b + 1;

System.out.println("b = " + b); // b = -128

Edmilson Campos ([email protected]) 3

Tipo Tamanho Alcance

float 4 bytes aprox. ±3.402823 E+38F

double 8 bytes aprox. ±1.79769313486231 E+308

//Um sufixo F ou f é utilizado para literais do tipo float

//A separação decimal é feita com “.”

float f = 1.0f / 3.0f;

double d = 0.1e1 / 3.; // 0.1e1 = 0,1 x 101

//Note a diferença na precisão.

System.out.println(f); // 0.33333334

System.out.println(d); // 0.3333333333333333

Edmilson Campos ([email protected]) 4

»−

»

»

»

»

Edmilson Campos ([email protected]) 5

»

»

char c = 'a';

System.out.println("c: " + c); // c: a

c = c + 1;

System.out.println("c: " + c); // c: b

c = (char)(c * 100 / 80);

System.out.println("c: " + c); // c: z

int i = c;

Edmilson Campos ([email protected]) 6

Código Significado

\n Quebra de linha (new line ou linefeed)

\r Retorno de carro (carriage return)

\b Retrocesso (backspace)

\t Tabulação (horizontal tabulation)

\f Nova página (form feed)

\’ Aspas simples (apóstrofo)

\” Aspas

\\ Barra invertida

Edmilson Campos ([email protected]) 7

»

boolean b = true;

if (b) System.out.println("OK!"); // OK!

int i = (int) b; // Erro de compilação!

i = 1;

if (i) System.out.println("??"); // Idem!

Edmilson Campos ([email protected]) 8

int i;

float f = 3.141592f;

char a = '\u0061', b = 'b', c, d = 'd';

boolean b1, b2 = true;

Edmilson Campos ([email protected]) 9

public class Variavel {

public static int c = 10; // De classe.

public int i; // De instância.

public int func() {

int n = 5; // Local.

i = 2 * n;

return (i + c);

}

}

Edmilson Campos ([email protected]) 10

int i = 10;

if (i > 0) {

int j = 15;

System.out.println(i + j); // 25

}

j = i + j; // Erro: variável fora de escopo!

Edmilson Campos ([email protected]) 11

Edmilson Campos ([email protected]) 12

Edmilson Campos ([email protected]) 13

abstract

const continue for new

enum assert strictfp instanceof while

super native float volatile long

finally class static void interface

char final try short Int

default goto package synchronized boolean

do extends catch transient return

if private this break double

implements protected throw byte else

import public throws case switch

»

»

Edmilson Campos ([email protected]) 14

»

»

»

»

»

Edmilson Campos ([email protected]) 15

»

»

int a = 100;

long b = a;

Edmilson Campos ([email protected]) 16

»

»

»

»

»

»

float a = 100.00f;

int b = (int)a;

Edmilson Campos ([email protected]) 17

public class Constantes {

public static void main(String[] args) {

final double CM_POR_POLEGADA = 2.54;

CM_POR_POLEGADA = 2.55; // Erro!

double larguraPol = 13.94;

double larguraCm = larguraPol * CM_POR_POLEGADA;

System.out.println(larguraCm);

}

}

Edmilson Campos ([email protected]) 18

»

»

»

Edmilson Campos ([email protected]) 19

»

▪»

»

Edmilson Campos ([email protected]) 20

Operador Descrição uso

+ Adição a + b

- Subtração a – b

* Multiplicação a * b

/ Divisão a / b

% Resto da divisão inteira a % b

- (Unário) Inversão de sinal -a

+ (Unário) Manutenção de sinal +a

++ Incremento unário ++a ou a++

-- Decremento unário --a ou a--

Edmilson Campos ([email protected]) 21

»

»

»

»

»

»

Edmilson Campos ([email protected]) 22

int a = 10;

int b = 20;

int c, d;

c = a++; // c recebe 10

d = ++b; // d recebe 21

Edmilson Campos ([email protected]) 23

== Igual a == b

!= Diferente a != b

> Maior que a > b

>= Maior que ou igual a a >= b

< Menor que a < b

<= Menor que ou igual a a <= b

Observações: Os parâmetros devem ser de tipos

compatíveis; Não confunda = (atribuição) com ==

(igualdade).

Edmilson Campos ([email protected]) 24

&& AND (E) a && b

& AND sem curto-circuito a & b

II OR (OU) a || b

| OR sem curto-circuito a | b

^ XOR (ou Exclusivo) a ^ b

! NOT (inversão de valor) !a

Observações:

Só operam sobre valores lógicos;

Podem ser combinados em expressões

grandes.

Edmilson Campos ([email protected]) 25

Edmilson Campos ([email protected]) 26

int x = 10, y = 15, z = 20;

// (z > y) não é avaliado.

if ((x > y) && (z > y)) { /* ... */ }

// (z == y) não é avaliado.

if ((x == 10) || (z == y)) { /* ... */ }

// Ambos são avaliados.

if ((x > y) & (z > y)) { /* ... */ }

// Ambos são avaliados.

if ((x == 10) | (z == y)) { /* ... */ }

& AND (E)

| OR (OU)

^ XOR (ou Exclusivo)

~ NOT (não)

>> Deslocamento de bits para direita (divisão)

<< Deslocamento de bits para esquerda (multiplicação)

Observações:

Operam em variáveis inteiras, bit a bit:

Edmilson Campos ([email protected]) 27

»

»

»

»

Edmilson Campos ([email protected]) 28

Expressão Equivale

x += y; x = x + y;

x -= y; x = x - y;

x *= y; x = x * y;

x /= y; x = x / y;

x %= y; x = x % y;

Edmilson Campos ([email protected]) 29

»

»

int x = 7;

int y = (x < 10) ? x * 2 : x / 2;

System.out.println("y = " + y); // y = 14

Edmilson Campos ([email protected]) 30

»

»

x = y;

Edmilson Campos ([email protected]) 36

»

»

»

Edmilson Campos ([email protected]) 37

Edmilson Campos ([email protected]) 38

// Equivale a new String("Olá, mundo!").

String mensagem = "Olá, mundo!";

// String vazia (tamanho 0).

String str = "";

// Concatenação.

str = "A mensagem é: " + mensagem;

// Conversão (c1 é aquele objeto Coordenada).

int i = 10; float f = 3.14f;

str = "i = " + i + ", f = " + f;

str += ", c1 = " + c1;

Edmilson Campos ([email protected]) 39