SlideShare uma empresa Scribd logo
1 de 70
Baixar para ler offline
Módulo III
Os Fundamentos I
Francisco Souza
Márcio de Paula
Tipos de Dados
Primitivos
São tipos de dados que representam tipos
básicos da linguagem.
Não são objetos!
Project MARK - Orientação a Obejtos com Java 2
Exemplo 01
Project MARK - Orientação a Obejtos com Java 3
char boolean byte short
int long double float
Exemplo 01
Project MARK - Orientação a Obejtos com Java 4
byte 8 bits
short 16 bits float 32 bits
int 32 bits double 64 bits
long 64 bits
Exemplo 01
Project MARK - Orientação a Obejtos com Java 5
byte 27
− 1
short 215
− 1
int 231
− 1
long 263
− 1
Tipos de Dados
Referencial
Todo e qualquer tipo de classe criada em Java.
Project MARK - Orientação a Obejtos com Java 6
Exemplo 02
Object
Scanner
Integer
String
ArrayList
Project MARK - Orientação a Obejtos com Java 7
Tipos de Dados
Conversão de Tipos
Em Java, um tipo pode ser convertido em outro.
Devem ser compatíveis.
Project MARK - Orientação a Obejtos com Java 8
Exemplo 03
byte → int → long
byte → float → double
Project MARK - Orientação a Obejtos com Java 9
Fonte de Bugs
Conversão de Tipos
Deve-se ter muito cuidado ao se converter tipos
de maior precisão para tipos de menor precisão.
Perda de informação.
Project MARK - Orientação a Obejtos com Java 10
Exemplo 04
long → int → short
float → int
Project MARK - Orientação a Obejtos com Java 11
Variáveis
O que são variáveis?
“São abstrações de endereços de memória, onde
valores absolutos (ou referências para outras
posições de memória) são armazenadas.”
Project MARK - Orientação a Obejtos com Java 12
Exemplo 05
int code = 44;
Project MARK - Orientação a Obejtos com Java 13
44
0x0021String name = “Francis”;
Literais
Conceito
Simplesmente falando, são representações de
dados dentro do código-fonte.
Project MARK - Orientação a Obejtos com Java 14
Literais
Booleanos e Lógicos
Valores true ou false.
Variáveis booleanas ou expressões lógicas
Project MARK - Orientação a Obejtos com Java 15
Literais
Inteiros
Representam números inteiros e podem ser de
natureza octal, decimal ou hexadecimal.
Project MARK - Orientação a Obejtos com Java 16
Exemplo 06
int code = 44;
Project MARK - Orientação a Obejtos com Java 17
int codeHex = 0x2C;
int codeOctal = 054;
Literais
Fracionários
Representam números racionais. A parte inteira e
fracionária são separadas por um ponto [ . ]
Project MARK - Orientação a Obejtos com Java 18
Exemplo 07
Project MARK - Orientação a Obejtos com Java 19
float goldenRatio = 1.618f;
double half = 0.5d;
Literais
Strings e Caracteres
Strings são cadeias de caracteres inseridos entre
“ ”.
Símbolo alfanumérico entre ‘ ’.
Project MARK - Orientação a Obejtos com Java 20
Exemplo 08
Project MARK - Orientação a Obejtos com Java 21
char letter = ‘z’;
String str = “hello”;
Literais
Nulo
Representa um objeto nulo, ou seja a variável não
é capaz de apontar para uma região de memória
válida.
Project MARK - Orientação a Obejtos com Java 22
Exemplo 09
Project MARK - Orientação a Obejtos com Java 23
Object obj = null;
Tipos de Variáveis
Variáveis Finais
Variável a que só pode se realizar uma única
operação de atribuição.
Project MARK - Orientação a Obejtos com Java 24
Exemplo 10
Project MARK - Orientação a Obejtos com Java 25
final float altura = 1.68f;
altura = 1.80f;
Exemplo 10
Project MARK - Orientação a Obejtos com Java 26
final float altura = 1.68f;
altura = 1.80f;
Exemplo 11
Project MARK - Orientação a Obejtos com Java 27
final Person another = new Person();
me = another;
final Person me = new Person();
Exemplo 11
Project MARK - Orientação a Obejtos com Java 28
final Person another = new Person();
me = another;
final Person me = new Person();
Exemplo 12
Project MARK - Orientação a Obejtos com Java 29
final Person me = new Person();
me.setName(“Francis”);
Tipos de Variáveis
Variáveis Transientes
A variável será ignorada pela JVM, quando for
necessário persistir o estado do objeto na
memória.
Project MARK - Orientação a Obejtos com Java 30
Tipos de Variáveis
Variáveis Transientes
Utiliza-se a palavra reservada transient.
Usada somente para atributos da classe.
Project MARK - Orientação a Obejtos com Java 31
Exemplo 13
class User {
String name;
String email;
String password;
transient int loginCounter;
...
}
Project MARK - Orientação a Obejtos com Java 32
Tipos de Variáveis
Variáveis Estáticas
Independentes da instanciação de um objeto.
Todas as instâncias compartilham o mesmo
valor.
Project MARK - Orientação a Obejtos com Java 33
Tipos de Variáveis
Variáveis Estáticas
Utilizada na definição de atributos de uma classe.
Utiliza-se a palavra reservada static.
Project MARK - Orientação a Obejtos com Java 34
Exemplo 14
class Foo {
static int fooCount;
...
}
Project MARK - Orientação a Obejtos com Java 35
Tipos de Variáveis
Constantes
static + final
Project MARK - Orientação a Obejtos com Java 36
Exemplo 15
class Bar {
static final int BAR_SECRET = 0x4E00B7;
...
}
Project MARK - Orientação a Obejtos com Java 37
Fonte de Bugs
Variáveis Sombreadas
Acontece quando uma variável local é declarada
com mesmo nome de um atributo.
Project MARK - Orientação a Obejtos com Java 38
Exemplo 16
class Foo {
int size;
public void setSize(int size) {
size = size;
}
}
Project MARK - Orientação a Obejtos com Java 39
Exemplo 16
class Foo {
int size;
public void setSize(int size) {
this.size = size;
}
}
Project MARK - Orientação a Obejtos com Java 40
Operadores em Java
Operadores Aritméticos
Quatro operações
+ - * /
Project MARK - Orientação a Obejtos com Java 41
Exemplo 17
int sum = 23 + 9;
int sub = 15 – 4;
int mul = 2 * 5;
float div = 12 / 6;
Project MARK - Orientação a Obejtos com Java 42
Operadores em Java
Operadores Aritméticos
Resto
%
Project MARK - Orientação a Obejtos com Java 43
Exemplo 18
int mod = 10 % 3;
Project MARK - Orientação a Obejtos com Java 44
Operadores em Java
Operadores de Atribuição
Project MARK - Orientação a Obejtos com Java 45
Operadores em Java
Operador de Atribuição
int size = 23;
String name = “Ykaro”;
Project MARK - Orientação a Obejtos com Java 46
Operadores em Java
Operadores Atribuição
++ += *= /=
-- -= %=
Project MARK - Orientação a Obejtos com Java 47
Operadores em Java
Project MARK - Orientação a Obejtos com Java 48
a++ ++a a = a + 1
a-- --a a = a - 1
a += b a = a + b
a -= b a = a - b
a *= b a = a * b
a /= b a = a / b
a %= b a = a % b
Fonte de Bugs
Operadores Atribuição
Project MARK - Orientação a Obejtos com Java 49
++x --x
x++ x--
Exemplo 19
int x = 20;
int y = x++;
System.out.println(String.valueOf(x))
System.out.println(String.valueOf(y))
------------------------------------------
21
20
Project MARK - Orientação a Obejtos com Java 50
Exemplo 20
int x = 20;
int y = ++x;
System.out.println(String.valueOf(x))
System.out.println(String.valueOf(y))
------------------------------------------
21
21
Project MARK - Orientação a Obejtos com Java 51
Fonte de Bugs
Operadores Atribuição
Project MARK - Orientação a Obejtos com Java 52
++x
Primeiro
incrementa,
depois atribui.
x++
Primeiro atribui,
depois
incrementa.
Operadores em Java
Operadores de Comparação
São operadores utilizados para a realização de
comparações entre dois objetos.
Resultam em um valor booleano.
Project MARK - Orientação a Obejtos com Java 53
Operadores em Java
Operadores de Comparação
== != < >
<= >=
Project MARK - Orientação a Obejtos com Java 54
Exemplo 21
System.out.println(String.valueOf(2 == 3))
System.out.println(String.valueOf(2 != 3))
------------------------------------------
true
false
Project MARK - Orientação a Obejtos com Java 55
Exemplo 22
System.out.println(String.valueOf(2 > 3))
System.out.println(String.valueOf(2 < 3))
------------------------------------------
false
true
Project MARK - Orientação a Obejtos com Java 56
Exemplo 23
System.out.println(String.valueOf(2 <= 3))
System.out.println(String.valueOf(2 >= 3))
------------------------------------------
true
false
Project MARK - Orientação a Obejtos com Java 57
Operadores em Java
Operadores Lógicos
São operadores destinados a valores booleanos
Curto-Circuitado
Não Curto-Circuitado
Negação
Project MARK - Orientação a Obejtos com Java 58
Operadores em Java
Operadores Lógicos Curto-Circuitados
“O segundo operando de uma expressão lógica
só é avaliado se o primeiro não for suficiente para
determinar o valor da expressão lógica.”
Project MARK - Orientação a Obejtos com Java 59
Operadores em Java
Operadores Lógicos Curto-Circuitados
&&
||
Project MARK - Orientação a Obejtos com Java 60
Exemplo 24
boolean a = true;
boolean b = false;
//O valor de a não será checado.
boolean andResult = b && a
Project MARK - Orientação a Obejtos com Java 61
Exemplo 25
boolean a = true;
boolean b = false;
//O valor de b não será checado.
boolean orResult = a || b
Project MARK - Orientação a Obejtos com Java 62
Operadores em Java
Operadores Lógicos Não Curto-Circuitados
Funcionamento similar aos operadores && e ||.
Ambos os operandos são checados para se
calcular o resultado da expressão.
Project MARK - Orientação a Obejtos com Java 63
Operadores em Java
Operadores Lógicos Não Curto-Circuitados
&
|
Project MARK - Orientação a Obejtos com Java 64
Operadores em Java
Operadores Lógicos Não Curto-Circuitados
Nega um valor lógico.
Project MARK - Orientação a Obejtos com Java 65
Operadores em Java
Operador Lógico Negação
!
Project MARK - Orientação a Obejtos com Java 66
Exemplo 26
boolean a = true;
System.out.println(String.valueOf( !a ))
------------------------------------------
false
Project MARK - Orientação a Obejtos com Java 67
Operadores em Java
Operador Ternário
Usado para atribuições.
Não suporta blocos de código.
Project MARK - Orientação a Obejtos com Java 68
Operadores em Java
Operador Ternário
<exp> ? <caso_positivo> : <caso_negativo>
Project MARK - Orientação a Obejtos com Java 69
Exemplo 27
int a = 10;
int b = 12;
int maior = a > b ? a : b;
Project MARK - Orientação a Obejtos com Java 70

Mais conteúdo relacionado

Mais procurados

Java cert programmer
Java cert programmerJava cert programmer
Java cert programmerRegis Melo
 
Apresentação java
Apresentação javaApresentação java
Apresentação javamunosai
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVAMoises Omena
 
UFCG.JCert Reunião 1 - Declarações e Controle de Acesso
UFCG.JCert Reunião 1 - Declarações e Controle de AcessoUFCG.JCert Reunião 1 - Declarações e Controle de Acesso
UFCG.JCert Reunião 1 - Declarações e Controle de AcessoAnderson Ledo
 
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...Manuel Menezes de Sequeira
 
An Aspect-Oriented Infrastructure for Design by Contract in Java
An Aspect-Oriented Infrastructure for Design by Contract in JavaAn Aspect-Oriented Infrastructure for Design by Contract in Java
An Aspect-Oriented Infrastructure for Design by Contract in Javasagostinho
 
Introdução ao paradigma imperativo
Introdução ao paradigma imperativoIntrodução ao paradigma imperativo
Introdução ao paradigma imperativoTony Alexander Hild
 
Padrões-12 - Padrões Estruturais - Facade
Padrões-12 - Padrões Estruturais - FacadePadrões-12 - Padrões Estruturais - Facade
Padrões-12 - Padrões Estruturais - FacadeEduardo Nicola F. Zagari
 
Introdução a Scala [GeekieTalk]
Introdução a Scala [GeekieTalk]Introdução a Scala [GeekieTalk]
Introdução a Scala [GeekieTalk]Nicolau Werneck
 
Grupo de estudo - Kotlin
Grupo de estudo - KotlinGrupo de estudo - Kotlin
Grupo de estudo - KotlinAndré Justi
 

Mais procurados (20)

Java cert programmer
Java cert programmerJava cert programmer
Java cert programmer
 
Linguagem Java
Linguagem JavaLinguagem Java
Linguagem Java
 
Programação Funcional usando C#
Programação Funcional usando C#Programação Funcional usando C#
Programação Funcional usando C#
 
Apresentação java
Apresentação javaApresentação java
Apresentação java
 
Teste Driven Development
Teste Driven DevelopmentTeste Driven Development
Teste Driven Development
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVA
 
UFCG.JCert Reunião 1 - Declarações e Controle de Acesso
UFCG.JCert Reunião 1 - Declarações e Controle de AcessoUFCG.JCert Reunião 1 - Declarações e Controle de Acesso
UFCG.JCert Reunião 1 - Declarações e Controle de Acesso
 
Linguagem de programação C# 4 e 5
Linguagem de programação C# 4 e 5Linguagem de programação C# 4 e 5
Linguagem de programação C# 4 e 5
 
Aula2
Aula2Aula2
Aula2
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Design patterns de uma vez por todas
Design patterns de uma vez por todasDesign patterns de uma vez por todas
Design patterns de uma vez por todas
 
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
 
An Aspect-Oriented Infrastructure for Design by Contract in Java
An Aspect-Oriented Infrastructure for Design by Contract in JavaAn Aspect-Oriented Infrastructure for Design by Contract in Java
An Aspect-Oriented Infrastructure for Design by Contract in Java
 
Introdução ao paradigma imperativo
Introdução ao paradigma imperativoIntrodução ao paradigma imperativo
Introdução ao paradigma imperativo
 
Educação e certificação na Plataforma .NET
Educação e certificação na Plataforma .NETEducação e certificação na Plataforma .NET
Educação e certificação na Plataforma .NET
 
Java modulo 01 - Introdução
Java modulo 01 - IntroduçãoJava modulo 01 - Introdução
Java modulo 01 - Introdução
 
Padrões-12 - Padrões Estruturais - Facade
Padrões-12 - Padrões Estruturais - FacadePadrões-12 - Padrões Estruturais - Facade
Padrões-12 - Padrões Estruturais - Facade
 
Introdução ao Java
Introdução ao JavaIntrodução ao Java
Introdução ao Java
 
Introdução a Scala [GeekieTalk]
Introdução a Scala [GeekieTalk]Introdução a Scala [GeekieTalk]
Introdução a Scala [GeekieTalk]
 
Grupo de estudo - Kotlin
Grupo de estudo - KotlinGrupo de estudo - Kotlin
Grupo de estudo - Kotlin
 

Destaque

Inbound Certified Flexcin - Kyle Starkey
Inbound Certified Flexcin - Kyle StarkeyInbound Certified Flexcin - Kyle Starkey
Inbound Certified Flexcin - Kyle StarkeyKyle Starkey
 
File2 seq3 read and write 2 3MS
File2 seq3 read and write 2 3MSFile2 seq3 read and write 2 3MS
File2 seq3 read and write 2 3MSMourad Mouhoubi
 
Aproximant-se a l'impacte de les polítiques d'habitatge en les desigualtats e...
Aproximant-se a l'impacte de les polítiques d'habitatge en les desigualtats e...Aproximant-se a l'impacte de les polítiques d'habitatge en les desigualtats e...
Aproximant-se a l'impacte de les polítiques d'habitatge en les desigualtats e...sophieproject
 
Live Oracle Applications Technical Training
Live Oracle Applications Technical TrainingLive Oracle Applications Technical Training
Live Oracle Applications Technical Trainingmindmajixtrainings
 
SNC-Lavalin presentation for Guarani
SNC-Lavalin presentation for GuaraniSNC-Lavalin presentation for Guarani
SNC-Lavalin presentation for GuaraniIwl Pcu
 
ผู้ให้บริการอินเทอร์เน็ต
ผู้ให้บริการอินเทอร์เน็ตผู้ให้บริการอินเทอร์เน็ต
ผู้ให้บริการอินเทอร์เน็ตBeam Iemsumang
 
NRT app leaflet artwork [ 2 ] v2 (2)
NRT app leaflet artwork [ 2 ] v2 (2)NRT app leaflet artwork [ 2 ] v2 (2)
NRT app leaflet artwork [ 2 ] v2 (2)Aleksandra A. Herbec
 
Paolo Risso - Il mondo del golf - Intervista a Paolo Risso
Paolo Risso - Il mondo del golf - Intervista a Paolo RissoPaolo Risso - Il mondo del golf - Intervista a Paolo Risso
Paolo Risso - Il mondo del golf - Intervista a Paolo RissoPaolo Risso
 

Destaque (12)

Reham Ashry cv
Reham Ashry cvReham Ashry cv
Reham Ashry cv
 
Kuliah 10 so
Kuliah 10 soKuliah 10 so
Kuliah 10 so
 
Inbound Certified Flexcin - Kyle Starkey
Inbound Certified Flexcin - Kyle StarkeyInbound Certified Flexcin - Kyle Starkey
Inbound Certified Flexcin - Kyle Starkey
 
File2 seq3 read and write 2 3MS
File2 seq3 read and write 2 3MSFile2 seq3 read and write 2 3MS
File2 seq3 read and write 2 3MS
 
Aproximant-se a l'impacte de les polítiques d'habitatge en les desigualtats e...
Aproximant-se a l'impacte de les polítiques d'habitatge en les desigualtats e...Aproximant-se a l'impacte de les polítiques d'habitatge en les desigualtats e...
Aproximant-se a l'impacte de les polítiques d'habitatge en les desigualtats e...
 
Live Oracle Applications Technical Training
Live Oracle Applications Technical TrainingLive Oracle Applications Technical Training
Live Oracle Applications Technical Training
 
Logos: Then and Now
Logos: Then and NowLogos: Then and Now
Logos: Then and Now
 
SNC-Lavalin presentation for Guarani
SNC-Lavalin presentation for GuaraniSNC-Lavalin presentation for Guarani
SNC-Lavalin presentation for Guarani
 
ผู้ให้บริการอินเทอร์เน็ต
ผู้ให้บริการอินเทอร์เน็ตผู้ให้บริการอินเทอร์เน็ต
ผู้ให้บริการอินเทอร์เน็ต
 
NRT app leaflet artwork [ 2 ] v2 (2)
NRT app leaflet artwork [ 2 ] v2 (2)NRT app leaflet artwork [ 2 ] v2 (2)
NRT app leaflet artwork [ 2 ] v2 (2)
 
テスト
テストテスト
テスト
 
Paolo Risso - Il mondo del golf - Intervista a Paolo Risso
Paolo Risso - Il mondo del golf - Intervista a Paolo RissoPaolo Risso - Il mondo del golf - Intervista a Paolo Risso
Paolo Risso - Il mondo del golf - Intervista a Paolo Risso
 

Semelhante a Java aula 04

Programação Orientada a Objetos parte 3
Programação Orientada a Objetos parte 3Programação Orientada a Objetos parte 3
Programação Orientada a Objetos parte 3Elaine Cecília Gatto
 
Três anos de Scala no NewsMonitor
Três anos de Scala no NewsMonitorTrês anos de Scala no NewsMonitor
Três anos de Scala no NewsMonitorFelipe Hummel
 
Aula 03 - Classes math e string - JAVA
Aula 03   - Classes math e string - JAVAAula 03   - Classes math e string - JAVA
Aula 03 - Classes math e string - JAVAULBRA
 
Laboratório de Programação II: Uso do ponteiro void *
Laboratório de Programação II: Uso do ponteiro void *Laboratório de Programação II: Uso do ponteiro void *
Laboratório de Programação II: Uso do ponteiro void *Alex Camargo
 
Java: A Máquina Virtual e seu Mercado de Trabalho
Java: A Máquina Virtual e seu Mercado de TrabalhoJava: A Máquina Virtual e seu Mercado de Trabalho
Java: A Máquina Virtual e seu Mercado de TrabalhoAndrey Masiero
 
Aula 2 conversao de variaveis j option-pane
Aula 2   conversao de variaveis j option-paneAula 2   conversao de variaveis j option-pane
Aula 2 conversao de variaveis j option-paneRafael Pinheiro
 
Programacao de macros_com_libre_office_basic_slideshare
Programacao de macros_com_libre_office_basic_slideshareProgramacao de macros_com_libre_office_basic_slideshare
Programacao de macros_com_libre_office_basic_slideshareMarcio Junior Vieira
 
Programação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice BasicProgramação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice BasicMarcio Junior Vieira
 
Programação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice BasicProgramação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice BasicAmbiente Livre
 
Javascript para CSharpers 4 - POO
Javascript para CSharpers 4 - POOJavascript para CSharpers 4 - POO
Javascript para CSharpers 4 - POOWesley Lemos
 
T05_LM3: Javascript (2013-2014)
T05_LM3: Javascript (2013-2014)T05_LM3: Javascript (2013-2014)
T05_LM3: Javascript (2013-2014)Carlos Santos
 
[Ruby Summit Brasil 2020] Ruby 3 e Análise estática - O que esperar e o que s...
[Ruby Summit Brasil 2020] Ruby 3 e Análise estática - O que esperar e o que s...[Ruby Summit Brasil 2020] Ruby 3 e Análise estática - O que esperar e o que s...
[Ruby Summit Brasil 2020] Ruby 3 e Análise estática - O que esperar e o que s...Weverton Timoteo
 

Semelhante a Java aula 04 (20)

Java aula 05
Java aula 05Java aula 05
Java aula 05
 
Curso Ruby
Curso RubyCurso Ruby
Curso Ruby
 
Programação Orientada a Objetos parte 3
Programação Orientada a Objetos parte 3Programação Orientada a Objetos parte 3
Programação Orientada a Objetos parte 3
 
JAVA - Introdução
JAVA - IntroduçãoJAVA - Introdução
JAVA - Introdução
 
7194099-Manual-de-Java
7194099-Manual-de-Java7194099-Manual-de-Java
7194099-Manual-de-Java
 
Três anos de Scala no NewsMonitor
Três anos de Scala no NewsMonitorTrês anos de Scala no NewsMonitor
Três anos de Scala no NewsMonitor
 
1.introducao java
1.introducao java1.introducao java
1.introducao java
 
es6
es6es6
es6
 
Es6
Es6Es6
Es6
 
Aula 03 - Classes math e string - JAVA
Aula 03   - Classes math e string - JAVAAula 03   - Classes math e string - JAVA
Aula 03 - Classes math e string - JAVA
 
Laboratório de Programação II: Uso do ponteiro void *
Laboratório de Programação II: Uso do ponteiro void *Laboratório de Programação II: Uso do ponteiro void *
Laboratório de Programação II: Uso do ponteiro void *
 
Java: A Máquina Virtual e seu Mercado de Trabalho
Java: A Máquina Virtual e seu Mercado de TrabalhoJava: A Máquina Virtual e seu Mercado de Trabalho
Java: A Máquina Virtual e seu Mercado de Trabalho
 
Aula 2 conversao de variaveis j option-pane
Aula 2   conversao de variaveis j option-paneAula 2   conversao de variaveis j option-pane
Aula 2 conversao de variaveis j option-pane
 
Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001
 
Programacao de macros_com_libre_office_basic_slideshare
Programacao de macros_com_libre_office_basic_slideshareProgramacao de macros_com_libre_office_basic_slideshare
Programacao de macros_com_libre_office_basic_slideshare
 
Programação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice BasicProgramação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice Basic
 
Programação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice BasicProgramação de Macros com LibreOffice Basic
Programação de Macros com LibreOffice Basic
 
Javascript para CSharpers 4 - POO
Javascript para CSharpers 4 - POOJavascript para CSharpers 4 - POO
Javascript para CSharpers 4 - POO
 
T05_LM3: Javascript (2013-2014)
T05_LM3: Javascript (2013-2014)T05_LM3: Javascript (2013-2014)
T05_LM3: Javascript (2013-2014)
 
[Ruby Summit Brasil 2020] Ruby 3 e Análise estática - O que esperar e o que s...
[Ruby Summit Brasil 2020] Ruby 3 e Análise estática - O que esperar e o que s...[Ruby Summit Brasil 2020] Ruby 3 e Análise estática - O que esperar e o que s...
[Ruby Summit Brasil 2020] Ruby 3 e Análise estática - O que esperar e o que s...
 

Último

A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesMary Alvarenga
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfFernandaMota99
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.silves15
 
Noções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdfNoções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdflucassilva721057
 
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumGÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumAugusto Costa
 
A poesia - Definições e Característicass
A poesia - Definições e CaracterísticassA poesia - Definições e Característicass
A poesia - Definições e CaracterísticassAugusto Costa
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxLuizHenriquedeAlmeid6
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADOcarolinacespedes23
 
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxPLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxSamiraMiresVieiradeM
 
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxLuizHenriquedeAlmeid6
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxkarinedarozabatista
 
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMVanessaCavalcante37
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Mary Alvarenga
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
AULA SOBRE AMERICA LATINA E ANGLO SAXONICA.pptx
AULA SOBRE AMERICA LATINA E ANGLO SAXONICA.pptxAULA SOBRE AMERICA LATINA E ANGLO SAXONICA.pptx
AULA SOBRE AMERICA LATINA E ANGLO SAXONICA.pptxLaurindo6
 
interfaces entre psicologia e neurologia.pdf
interfaces entre psicologia e neurologia.pdfinterfaces entre psicologia e neurologia.pdf
interfaces entre psicologia e neurologia.pdfIvoneSantos45
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptxMarlene Cunhada
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividadeMary Alvarenga
 

Último (20)

A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das Mães
 
Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdf
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.
 
Noções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdfNoções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdf
 
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumGÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
 
A poesia - Definições e Característicass
A poesia - Definições e CaracterísticassA poesia - Definições e Característicass
A poesia - Definições e Característicass
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
 
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptxPLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
PLANOS E EIXOS DO CORPO HUMANO.educacao física pptx
 
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
 
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
AULA SOBRE AMERICA LATINA E ANGLO SAXONICA.pptx
AULA SOBRE AMERICA LATINA E ANGLO SAXONICA.pptxAULA SOBRE AMERICA LATINA E ANGLO SAXONICA.pptx
AULA SOBRE AMERICA LATINA E ANGLO SAXONICA.pptx
 
interfaces entre psicologia e neurologia.pdf
interfaces entre psicologia e neurologia.pdfinterfaces entre psicologia e neurologia.pdf
interfaces entre psicologia e neurologia.pdf
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptx
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividade
 

Java aula 04

  • 1. Módulo III Os Fundamentos I Francisco Souza Márcio de Paula
  • 2. Tipos de Dados Primitivos São tipos de dados que representam tipos básicos da linguagem. Não são objetos! Project MARK - Orientação a Obejtos com Java 2
  • 3. Exemplo 01 Project MARK - Orientação a Obejtos com Java 3 char boolean byte short int long double float
  • 4. Exemplo 01 Project MARK - Orientação a Obejtos com Java 4 byte 8 bits short 16 bits float 32 bits int 32 bits double 64 bits long 64 bits
  • 5. Exemplo 01 Project MARK - Orientação a Obejtos com Java 5 byte 27 − 1 short 215 − 1 int 231 − 1 long 263 − 1
  • 6. Tipos de Dados Referencial Todo e qualquer tipo de classe criada em Java. Project MARK - Orientação a Obejtos com Java 6
  • 8. Tipos de Dados Conversão de Tipos Em Java, um tipo pode ser convertido em outro. Devem ser compatíveis. Project MARK - Orientação a Obejtos com Java 8
  • 9. Exemplo 03 byte → int → long byte → float → double Project MARK - Orientação a Obejtos com Java 9
  • 10. Fonte de Bugs Conversão de Tipos Deve-se ter muito cuidado ao se converter tipos de maior precisão para tipos de menor precisão. Perda de informação. Project MARK - Orientação a Obejtos com Java 10
  • 11. Exemplo 04 long → int → short float → int Project MARK - Orientação a Obejtos com Java 11
  • 12. Variáveis O que são variáveis? “São abstrações de endereços de memória, onde valores absolutos (ou referências para outras posições de memória) são armazenadas.” Project MARK - Orientação a Obejtos com Java 12
  • 13. Exemplo 05 int code = 44; Project MARK - Orientação a Obejtos com Java 13 44 0x0021String name = “Francis”;
  • 14. Literais Conceito Simplesmente falando, são representações de dados dentro do código-fonte. Project MARK - Orientação a Obejtos com Java 14
  • 15. Literais Booleanos e Lógicos Valores true ou false. Variáveis booleanas ou expressões lógicas Project MARK - Orientação a Obejtos com Java 15
  • 16. Literais Inteiros Representam números inteiros e podem ser de natureza octal, decimal ou hexadecimal. Project MARK - Orientação a Obejtos com Java 16
  • 17. Exemplo 06 int code = 44; Project MARK - Orientação a Obejtos com Java 17 int codeHex = 0x2C; int codeOctal = 054;
  • 18. Literais Fracionários Representam números racionais. A parte inteira e fracionária são separadas por um ponto [ . ] Project MARK - Orientação a Obejtos com Java 18
  • 19. Exemplo 07 Project MARK - Orientação a Obejtos com Java 19 float goldenRatio = 1.618f; double half = 0.5d;
  • 20. Literais Strings e Caracteres Strings são cadeias de caracteres inseridos entre “ ”. Símbolo alfanumérico entre ‘ ’. Project MARK - Orientação a Obejtos com Java 20
  • 21. Exemplo 08 Project MARK - Orientação a Obejtos com Java 21 char letter = ‘z’; String str = “hello”;
  • 22. Literais Nulo Representa um objeto nulo, ou seja a variável não é capaz de apontar para uma região de memória válida. Project MARK - Orientação a Obejtos com Java 22
  • 23. Exemplo 09 Project MARK - Orientação a Obejtos com Java 23 Object obj = null;
  • 24. Tipos de Variáveis Variáveis Finais Variável a que só pode se realizar uma única operação de atribuição. Project MARK - Orientação a Obejtos com Java 24
  • 25. Exemplo 10 Project MARK - Orientação a Obejtos com Java 25 final float altura = 1.68f; altura = 1.80f;
  • 26. Exemplo 10 Project MARK - Orientação a Obejtos com Java 26 final float altura = 1.68f; altura = 1.80f;
  • 27. Exemplo 11 Project MARK - Orientação a Obejtos com Java 27 final Person another = new Person(); me = another; final Person me = new Person();
  • 28. Exemplo 11 Project MARK - Orientação a Obejtos com Java 28 final Person another = new Person(); me = another; final Person me = new Person();
  • 29. Exemplo 12 Project MARK - Orientação a Obejtos com Java 29 final Person me = new Person(); me.setName(“Francis”);
  • 30. Tipos de Variáveis Variáveis Transientes A variável será ignorada pela JVM, quando for necessário persistir o estado do objeto na memória. Project MARK - Orientação a Obejtos com Java 30
  • 31. Tipos de Variáveis Variáveis Transientes Utiliza-se a palavra reservada transient. Usada somente para atributos da classe. Project MARK - Orientação a Obejtos com Java 31
  • 32. Exemplo 13 class User { String name; String email; String password; transient int loginCounter; ... } Project MARK - Orientação a Obejtos com Java 32
  • 33. Tipos de Variáveis Variáveis Estáticas Independentes da instanciação de um objeto. Todas as instâncias compartilham o mesmo valor. Project MARK - Orientação a Obejtos com Java 33
  • 34. Tipos de Variáveis Variáveis Estáticas Utilizada na definição de atributos de uma classe. Utiliza-se a palavra reservada static. Project MARK - Orientação a Obejtos com Java 34
  • 35. Exemplo 14 class Foo { static int fooCount; ... } Project MARK - Orientação a Obejtos com Java 35
  • 36. Tipos de Variáveis Constantes static + final Project MARK - Orientação a Obejtos com Java 36
  • 37. Exemplo 15 class Bar { static final int BAR_SECRET = 0x4E00B7; ... } Project MARK - Orientação a Obejtos com Java 37
  • 38. Fonte de Bugs Variáveis Sombreadas Acontece quando uma variável local é declarada com mesmo nome de um atributo. Project MARK - Orientação a Obejtos com Java 38
  • 39. Exemplo 16 class Foo { int size; public void setSize(int size) { size = size; } } Project MARK - Orientação a Obejtos com Java 39
  • 40. Exemplo 16 class Foo { int size; public void setSize(int size) { this.size = size; } } Project MARK - Orientação a Obejtos com Java 40
  • 41. Operadores em Java Operadores Aritméticos Quatro operações + - * / Project MARK - Orientação a Obejtos com Java 41
  • 42. Exemplo 17 int sum = 23 + 9; int sub = 15 – 4; int mul = 2 * 5; float div = 12 / 6; Project MARK - Orientação a Obejtos com Java 42
  • 43. Operadores em Java Operadores Aritméticos Resto % Project MARK - Orientação a Obejtos com Java 43
  • 44. Exemplo 18 int mod = 10 % 3; Project MARK - Orientação a Obejtos com Java 44
  • 45. Operadores em Java Operadores de Atribuição Project MARK - Orientação a Obejtos com Java 45
  • 46. Operadores em Java Operador de Atribuição int size = 23; String name = “Ykaro”; Project MARK - Orientação a Obejtos com Java 46
  • 47. Operadores em Java Operadores Atribuição ++ += *= /= -- -= %= Project MARK - Orientação a Obejtos com Java 47
  • 48. Operadores em Java Project MARK - Orientação a Obejtos com Java 48 a++ ++a a = a + 1 a-- --a a = a - 1 a += b a = a + b a -= b a = a - b a *= b a = a * b a /= b a = a / b a %= b a = a % b
  • 49. Fonte de Bugs Operadores Atribuição Project MARK - Orientação a Obejtos com Java 49 ++x --x x++ x--
  • 50. Exemplo 19 int x = 20; int y = x++; System.out.println(String.valueOf(x)) System.out.println(String.valueOf(y)) ------------------------------------------ 21 20 Project MARK - Orientação a Obejtos com Java 50
  • 51. Exemplo 20 int x = 20; int y = ++x; System.out.println(String.valueOf(x)) System.out.println(String.valueOf(y)) ------------------------------------------ 21 21 Project MARK - Orientação a Obejtos com Java 51
  • 52. Fonte de Bugs Operadores Atribuição Project MARK - Orientação a Obejtos com Java 52 ++x Primeiro incrementa, depois atribui. x++ Primeiro atribui, depois incrementa.
  • 53. Operadores em Java Operadores de Comparação São operadores utilizados para a realização de comparações entre dois objetos. Resultam em um valor booleano. Project MARK - Orientação a Obejtos com Java 53
  • 54. Operadores em Java Operadores de Comparação == != < > <= >= Project MARK - Orientação a Obejtos com Java 54
  • 55. Exemplo 21 System.out.println(String.valueOf(2 == 3)) System.out.println(String.valueOf(2 != 3)) ------------------------------------------ true false Project MARK - Orientação a Obejtos com Java 55
  • 56. Exemplo 22 System.out.println(String.valueOf(2 > 3)) System.out.println(String.valueOf(2 < 3)) ------------------------------------------ false true Project MARK - Orientação a Obejtos com Java 56
  • 57. Exemplo 23 System.out.println(String.valueOf(2 <= 3)) System.out.println(String.valueOf(2 >= 3)) ------------------------------------------ true false Project MARK - Orientação a Obejtos com Java 57
  • 58. Operadores em Java Operadores Lógicos São operadores destinados a valores booleanos Curto-Circuitado Não Curto-Circuitado Negação Project MARK - Orientação a Obejtos com Java 58
  • 59. Operadores em Java Operadores Lógicos Curto-Circuitados “O segundo operando de uma expressão lógica só é avaliado se o primeiro não for suficiente para determinar o valor da expressão lógica.” Project MARK - Orientação a Obejtos com Java 59
  • 60. Operadores em Java Operadores Lógicos Curto-Circuitados && || Project MARK - Orientação a Obejtos com Java 60
  • 61. Exemplo 24 boolean a = true; boolean b = false; //O valor de a não será checado. boolean andResult = b && a Project MARK - Orientação a Obejtos com Java 61
  • 62. Exemplo 25 boolean a = true; boolean b = false; //O valor de b não será checado. boolean orResult = a || b Project MARK - Orientação a Obejtos com Java 62
  • 63. Operadores em Java Operadores Lógicos Não Curto-Circuitados Funcionamento similar aos operadores && e ||. Ambos os operandos são checados para se calcular o resultado da expressão. Project MARK - Orientação a Obejtos com Java 63
  • 64. Operadores em Java Operadores Lógicos Não Curto-Circuitados & | Project MARK - Orientação a Obejtos com Java 64
  • 65. Operadores em Java Operadores Lógicos Não Curto-Circuitados Nega um valor lógico. Project MARK - Orientação a Obejtos com Java 65
  • 66. Operadores em Java Operador Lógico Negação ! Project MARK - Orientação a Obejtos com Java 66
  • 67. Exemplo 26 boolean a = true; System.out.println(String.valueOf( !a )) ------------------------------------------ false Project MARK - Orientação a Obejtos com Java 67
  • 68. Operadores em Java Operador Ternário Usado para atribuições. Não suporta blocos de código. Project MARK - Orientação a Obejtos com Java 68
  • 69. Operadores em Java Operador Ternário <exp> ? <caso_positivo> : <caso_negativo> Project MARK - Orientação a Obejtos com Java 69
  • 70. Exemplo 27 int a = 10; int b = 12; int maior = a > b ? a : b; Project MARK - Orientação a Obejtos com Java 70