SlideShare uma empresa Scribd logo
1 de 27
Programação Orientada a
Objetos
Aula 2
Curso: Análise e Desenvolvimento de Sistemas
Professor: Rafael Wendel Pinheiro
• Roteiro da Aula
– Conversão de variáveis
– Tratamento de exceções
– Classe String
– Biblioteca JOptionPane
– Exercícios
2
Conversão de Variáveis
3
• Conversão de Variáveis
– Como fora abordado antes, a linguagem Java é
fortemente tipada, ou seja, requer que todas as
variáveis que forem declaradas possuam um
tipo de dado (String, int, float, boolean, etc.)
– Se em algum momento for necessário fazer a
conversão de um tipo de dado, a linguagem
fornece classes e métodos internos para esse
procedimento.
4
• Conversão de Variáveis
– Exemplo: Converter uma String em inteiro.
5
• Conversão de Variáveis
– Exemplo: Converter um inteiro em String.
6Obs: String.valueOf() serve para converter qualquer tipo de dado em String.
• Conversão de Variáveis
– Outros tipos de conversão
7
Converter String
para double.
Converter String
para boolean.
• Conversão de Variáveis
– Veja na prática!!!
8
Tratamento de exceções
9
• Tratamento de Exceções
– O que uma exceção?
• Exceção (ou Erro de Exceção) é um erro gerado
em tempo de execução e que é causado não por
algum erro de lógica ou sintaxe, mas sim pela
própria utilização do usuário e/ou operações internas
da própria linguagem.
• O tratamento de exceções da linguagem Java foi
projetado para situações em que um método/função
encontra um erro e não sabe como lidar com ele.
Logo, é disparado uma exceção. 10
• Tratamento de Exceções
– O que uma exceção?
• Exceção (ou Erro de Exceção) é um erro gerado
em tempo de execução e que é causado não por
algum erro de lógica ou sintaxe, mas sim pela
própria utilização do usuário e/ou operações internas
da própria linguagem.
• O tratamento de exceções da linguagem Java foi
projetado para situações em que um método/função
encontra um erro e não sabe como lidar com ele.
Logo, é disparado uma exceção. 11
• Tratamento de Exceções
– Exemplo:
• O método parseInt() da classe Integer deve receber
uma String como parâmetro para que possa fazer a
conversão e retornar um valor inteiro. Se o
parâmetro tiver o valor “20” esse será convertido
para inteiro. Mas, e se o valor da String for “IFSP” ?
12
• Tratamento de Exceções
13
Quando a aplicação é
executada é gerado
uma exceção.
• Tratamento de Exceções
– Como se prevenir?
• É deselegante quando o usuário está trabalhando
em uma aplicação e de repente, o programa “trava”
devido à uma exceção que foi gerada e ele fique
sem saber o por quê do erro e como fazer para
repará-lo.
• Uma exceção pode ser prevista e tratada pelo
programador através do comando try/catch.
14
• Tratamento de Exceções
– try/catch
• Os comandos try(tentar) catch(capturar) servem para
tratar erros de exceção que possivelmente venham a
acontecer (ou que sabemos que é altamente provável
de acontecer).
• Dessa forma, podemos definir um bloco de códigos
dentro da cláusula try, e se alguma exceção for
gerada, ao invés da aplicação travar e disparar os
erros, ela imediatamente é redirecionada para a
cláusula catch que já possui o código para tratar o
erro. 15
• Tratamento de Exceções
16
Quando ocorrer um erro de exceção do bloco do try, a aplicação é redirecionada
para o bloco catch.
• Tratamento de Exceções
• Uma cláusula para tratamento de exceções pode ter
diversos blocos catch, uma vez que existem classes
diversas para tratamentos de exceção de acordo com o
erro gerado.
• Ex:
– Exception
– NumberFormatException
– SQLException
– etc...
17
Classe String
18
• Classe String
– Apesar de ser comumente chamada de tipo de
dado, String na verdade é uma classe nativa
implementada no pacote java.lang
– Logo, as “variáveis” do tipo String são na
verdade instâncias/objetos da classe String.
– Como são objetos, possuem a capacidade de
executar alguns métodos implementados
dentro da classe String.
19
• Classe String
– Alguns métodos da classe String:
• charAt(): Retorna o caractere de uma determinada
posição da String.
• concat(): concatena com outra String.
• equals(): compara com outra String.
• equalsIgnoreCase(): Compara com outra String
independente da caixa.
• length(): retorna o tamanho da String.
• replace(): Identifica e altera um determinado
caractere.
20
• Classe String
• substring(): Desmembra a String em determinados
trechos.
• toLowerCase(): Converte todos os caracteres para
minúsculo.
• toUpperCase(): Converte todos os caracteres para
maiúsculo.
• trim(): Remove os espaços em branco no início e no
fim da String.
21
Biblioteca JOptionPane
22
• Biblioteca JOptionPane
– A linguagem Java oferece diversos recursos de
implementações que auxiliam no
desenvolvimento de interfaces gráficas
amigáveis ao usuário.
– A biblioteca JOptionPane oferece métodos para
a exibição de caixas de alertas na tela para
passar uma informação ao usuário ou então
solicitar algum tipo de interação por parte dele.
23
• Biblioteca JOptionPane
– Método showMessageDialog:
24
25
• Biblioteca JOptionPane
– Método showInputDialog:
Retorna uma String.
• Biblioteca JOptionPane
– Método showConfirmDialog:
26
Retorna um int
Sim: 0
Não: 1
Cancelar: 2
• Exercícios:
1.Crie uma aplicação para receber uma data no
formato dd/mm/YYYY e exiba um alerta com
essa data formatada para YYYY-mm-dd.
2.Crie uma aplicação para receber um número
inteiro maior que 0. Imprima todos os números
no intervalo de 0 e o número informado, sendo
que, quando for um número multiplo de 5,
escreva “foo” e quando for multiplo de 10,
escreva “bar”.
27

Mais conteúdo relacionado

Mais procurados

Java: Classes Abstratas, Anônimas, Interface
Java: Classes Abstratas, Anônimas, InterfaceJava: Classes Abstratas, Anônimas, Interface
Java: Classes Abstratas, Anônimas, InterfaceArthur Emanuel
 
http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/Rodrigo Vieira
 
Curso de Java (Parte 2)
 Curso de Java (Parte 2) Curso de Java (Parte 2)
Curso de Java (Parte 2)Mario Sergio
 
Curso Java Básico - Aula 04
Curso Java Básico - Aula 04Curso Java Básico - Aula 04
Curso Java Básico - Aula 04Natanael Fonseca
 
Curso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosCurso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosLeonardo Melo Santos
 
Curso Java Básico - Aula 03
Curso Java Básico - Aula 03Curso Java Básico - Aula 03
Curso Java Básico - Aula 03Natanael Fonseca
 
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVAProgramação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVACristiano Almeida
 
Programação orientada a objetos – III
Programação orientada a objetos – IIIProgramação orientada a objetos – III
Programação orientada a objetos – IIIGabriel Faustino
 
Java - Aula 2 - Orientado a Objetos
Java - Aula 2 - Orientado a ObjetosJava - Aula 2 - Orientado a Objetos
Java - Aula 2 - Orientado a ObjetosMoises Omena
 
Java: Introducao ao Swing
Java: Introducao ao SwingJava: Introducao ao Swing
Java: Introducao ao SwingArthur Emanuel
 
Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoMarconi Rodrigues
 
Curso de Java (Parte 4)
Curso de Java (Parte 4)Curso de Java (Parte 4)
Curso de Java (Parte 4)Mario Sergio
 
Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java Mario Jorge Pereira
 
Programação Orientada a Objetos - Uso da O.O. em Java
Programação Orientada a Objetos - Uso da O.O. em JavaProgramação Orientada a Objetos - Uso da O.O. em Java
Programação Orientada a Objetos - Uso da O.O. em JavaCristiano Almeida
 
Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01John Godoi
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Luis Ferreira
 
Programação orientada a objetos - IV
Programação orientada a objetos - IVProgramação orientada a objetos - IV
Programação orientada a objetos - IVGabriel Faustino
 

Mais procurados (20)

Java: Classes Abstratas, Anônimas, Interface
Java: Classes Abstratas, Anônimas, InterfaceJava: Classes Abstratas, Anônimas, Interface
Java: Classes Abstratas, Anônimas, Interface
 
http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/
 
Curso de Java (Parte 2)
 Curso de Java (Parte 2) Curso de Java (Parte 2)
Curso de Java (Parte 2)
 
Curso Java Básico - Aula 04
Curso Java Básico - Aula 04Curso Java Básico - Aula 04
Curso Java Básico - Aula 04
 
Curso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosCurso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetos
 
v
vv
v
 
Curso Java Básico - Aula 03
Curso Java Básico - Aula 03Curso Java Básico - Aula 03
Curso Java Básico - Aula 03
 
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVAProgramação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
 
Programação orientada a objetos – III
Programação orientada a objetos – IIIProgramação orientada a objetos – III
Programação orientada a objetos – III
 
JAVA - Orientação a Objetos
JAVA - Orientação a ObjetosJAVA - Orientação a Objetos
JAVA - Orientação a Objetos
 
POO - Aula 10 - Polimorfismo
POO - Aula 10 - PolimorfismoPOO - Aula 10 - Polimorfismo
POO - Aula 10 - Polimorfismo
 
Java - Aula 2 - Orientado a Objetos
Java - Aula 2 - Orientado a ObjetosJava - Aula 2 - Orientado a Objetos
Java - Aula 2 - Orientado a Objetos
 
Java: Introducao ao Swing
Java: Introducao ao SwingJava: Introducao ao Swing
Java: Introducao ao Swing
 
Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a Objeto
 
Curso de Java (Parte 4)
Curso de Java (Parte 4)Curso de Java (Parte 4)
Curso de Java (Parte 4)
 
Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java
 
Programação Orientada a Objetos - Uso da O.O. em Java
Programação Orientada a Objetos - Uso da O.O. em JavaProgramação Orientada a Objetos - Uso da O.O. em Java
Programação Orientada a Objetos - Uso da O.O. em Java
 
Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
 
Programação orientada a objetos - IV
Programação orientada a objetos - IVProgramação orientada a objetos - IV
Programação orientada a objetos - IV
 

Destaque

Tratamento de exceções em Java
Tratamento de exceções em JavaTratamento de exceções em Java
Tratamento de exceções em JavaWilson Júnior
 
Conheça mais o SlideShare
Conheça mais o SlideShareConheça mais o SlideShare
Conheça mais o SlideShareRafael Pinheiro
 
PHP Experience 2016 - [Palestra] Rumo à Certificação PHP
PHP Experience 2016 - [Palestra] Rumo à Certificação PHPPHP Experience 2016 - [Palestra] Rumo à Certificação PHP
PHP Experience 2016 - [Palestra] Rumo à Certificação PHPiMasters
 
Aula 2 - Noções Básicas de Eletricidade
Aula 2 - Noções Básicas de EletricidadeAula 2 - Noções Básicas de Eletricidade
Aula 2 - Noções Básicas de EletricidadeVitor Hugo Melo Araújo
 
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHPPHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHPiMasters
 
Curso eletricista básico iniciante abril 2011
Curso eletricista básico iniciante   abril 2011Curso eletricista básico iniciante   abril 2011
Curso eletricista básico iniciante abril 2011Marcio Roberto Patelli
 
Orientação a Objetos com PHP
Orientação a Objetos com PHPOrientação a Objetos com PHP
Orientação a Objetos com PHPAugusto Pascutti
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1Norivan Oliveira
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoLuiz Junior
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShareSlideShare
 

Destaque (20)

PHP - Arrays
PHP - ArraysPHP - Arrays
PHP - Arrays
 
Tratamento de exceções em Java
Tratamento de exceções em JavaTratamento de exceções em Java
Tratamento de exceções em Java
 
Conheça mais o SlideShare
Conheça mais o SlideShareConheça mais o SlideShare
Conheça mais o SlideShare
 
Mini Curso Wordpress
Mini Curso WordpressMini Curso Wordpress
Mini Curso Wordpress
 
POO - Aula 1 introducao
POO - Aula 1   introducaoPOO - Aula 1   introducao
POO - Aula 1 introducao
 
PHP Experience 2016 - [Palestra] Rumo à Certificação PHP
PHP Experience 2016 - [Palestra] Rumo à Certificação PHPPHP Experience 2016 - [Palestra] Rumo à Certificação PHP
PHP Experience 2016 - [Palestra] Rumo à Certificação PHP
 
Aula 2 - Noções Básicas de Eletricidade
Aula 2 - Noções Básicas de EletricidadeAula 2 - Noções Básicas de Eletricidade
Aula 2 - Noções Básicas de Eletricidade
 
Conversão de Unidades
Conversão de UnidadesConversão de Unidades
Conversão de Unidades
 
Metodologia SCRUM
Metodologia SCRUMMetodologia SCRUM
Metodologia SCRUM
 
PHP Orientado a Objetos
PHP Orientado a ObjetosPHP Orientado a Objetos
PHP Orientado a Objetos
 
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHPPHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
 
Curso de PHP - Arrays
Curso de PHP - ArraysCurso de PHP - Arrays
Curso de PHP - Arrays
 
Php array
Php arrayPhp array
Php array
 
Curso eletricista básico iniciante abril 2011
Curso eletricista básico iniciante   abril 2011Curso eletricista básico iniciante   abril 2011
Curso eletricista básico iniciante abril 2011
 
Linguagem PHP
Linguagem PHPLinguagem PHP
Linguagem PHP
 
Física e química unidades de medidas e si
Física e química unidades de medidas e siFísica e química unidades de medidas e si
Física e química unidades de medidas e si
 
Orientação a Objetos com PHP
Orientação a Objetos com PHPOrientação a Objetos com PHP
Orientação a Objetos com PHP
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao Avançado
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare
 

Semelhante a POO Java Aula 2

Java Básico :: Introdução
Java Básico :: IntroduçãoJava Básico :: Introdução
Java Básico :: IntroduçãoWesley R. Bezerra
 
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
 
Curso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoCurso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoJosé Araújo
 
Introdução a programação em python d2
Introdução a programação em python d2Introdução a programação em python d2
Introdução a programação em python d2Moises de Paula
 
Poo1 aula 6 - conversão de tipos primitivos
Poo1   aula 6 - conversão de tipos primitivosPoo1   aula 6 - conversão de tipos primitivos
Poo1 aula 6 - conversão de tipos primitivosDenis Sobrenome
 
Aula 02 operadores aritiméticos
Aula 02   operadores aritiméticosAula 02   operadores aritiméticos
Aula 02 operadores aritiméticosTácito Graça
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonGiancarlo Silva
 
Classes Java , JDBC / Swing / Collections
Classes Java , JDBC / Swing / Collections Classes Java , JDBC / Swing / Collections
Classes Java , JDBC / Swing / Collections Eduardo Carvalho
 
Aula3PythonBasico (1).ppt
Aula3PythonBasico (1).pptAula3PythonBasico (1).ppt
Aula3PythonBasico (1).pptMichaelArrais1
 

Semelhante a POO Java Aula 2 (20)

Java Básico
Java BásicoJava Básico
Java Básico
 
Java Básico :: Introdução
Java Básico :: IntroduçãoJava Básico :: Introdução
Java Básico :: Introdução
 
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
 
Curso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoCurso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de Programacao
 
Introdução ao Java 5
Introdução ao Java 5Introdução ao Java 5
Introdução ao Java 5
 
Aula4
Aula4Aula4
Aula4
 
Estudos Technocorp
Estudos TechnocorpEstudos Technocorp
Estudos Technocorp
 
Slide Share s2 Rodd
Slide Share s2 RoddSlide Share s2 Rodd
Slide Share s2 Rodd
 
Slide Semana2 Rodrigo2
Slide Semana2 Rodrigo2Slide Semana2 Rodrigo2
Slide Semana2 Rodrigo2
 
Introdução a programação em python d2
Introdução a programação em python d2Introdução a programação em python d2
Introdução a programação em python d2
 
Poo1 aula 6 - conversão de tipos primitivos
Poo1   aula 6 - conversão de tipos primitivosPoo1   aula 6 - conversão de tipos primitivos
Poo1 aula 6 - conversão de tipos primitivos
 
JAVA - Introdução
JAVA - IntroduçãoJAVA - Introdução
JAVA - Introdução
 
Linguagem Java- Iniciação à programação Java
Linguagem Java- Iniciação à programação JavaLinguagem Java- Iniciação à programação Java
Linguagem Java- Iniciação à programação Java
 
Aula 02 operadores aritiméticos
Aula 02   operadores aritiméticosAula 02   operadores aritiméticos
Aula 02 operadores aritiméticos
 
02 controle de fluxo
02   controle de fluxo02   controle de fluxo
02 controle de fluxo
 
Slide Semana2 Rodrigo
Slide Semana2 RodrigoSlide Semana2 Rodrigo
Slide Semana2 Rodrigo
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com Python
 
Classes Java , JDBC / Swing / Collections
Classes Java , JDBC / Swing / Collections Classes Java , JDBC / Swing / Collections
Classes Java , JDBC / Swing / Collections
 
Pesquisa ppi 2
Pesquisa ppi 2Pesquisa ppi 2
Pesquisa ppi 2
 
Aula3PythonBasico (1).ppt
Aula3PythonBasico (1).pptAula3PythonBasico (1).ppt
Aula3PythonBasico (1).ppt
 

POO Java Aula 2

  • 1. Programação Orientada a Objetos Aula 2 Curso: Análise e Desenvolvimento de Sistemas Professor: Rafael Wendel Pinheiro
  • 2. • Roteiro da Aula – Conversão de variáveis – Tratamento de exceções – Classe String – Biblioteca JOptionPane – Exercícios 2
  • 4. • Conversão de Variáveis – Como fora abordado antes, a linguagem Java é fortemente tipada, ou seja, requer que todas as variáveis que forem declaradas possuam um tipo de dado (String, int, float, boolean, etc.) – Se em algum momento for necessário fazer a conversão de um tipo de dado, a linguagem fornece classes e métodos internos para esse procedimento. 4
  • 5. • Conversão de Variáveis – Exemplo: Converter uma String em inteiro. 5
  • 6. • Conversão de Variáveis – Exemplo: Converter um inteiro em String. 6Obs: String.valueOf() serve para converter qualquer tipo de dado em String.
  • 7. • Conversão de Variáveis – Outros tipos de conversão 7 Converter String para double. Converter String para boolean.
  • 8. • Conversão de Variáveis – Veja na prática!!! 8
  • 10. • Tratamento de Exceções – O que uma exceção? • Exceção (ou Erro de Exceção) é um erro gerado em tempo de execução e que é causado não por algum erro de lógica ou sintaxe, mas sim pela própria utilização do usuário e/ou operações internas da própria linguagem. • O tratamento de exceções da linguagem Java foi projetado para situações em que um método/função encontra um erro e não sabe como lidar com ele. Logo, é disparado uma exceção. 10
  • 11. • Tratamento de Exceções – O que uma exceção? • Exceção (ou Erro de Exceção) é um erro gerado em tempo de execução e que é causado não por algum erro de lógica ou sintaxe, mas sim pela própria utilização do usuário e/ou operações internas da própria linguagem. • O tratamento de exceções da linguagem Java foi projetado para situações em que um método/função encontra um erro e não sabe como lidar com ele. Logo, é disparado uma exceção. 11
  • 12. • Tratamento de Exceções – Exemplo: • O método parseInt() da classe Integer deve receber uma String como parâmetro para que possa fazer a conversão e retornar um valor inteiro. Se o parâmetro tiver o valor “20” esse será convertido para inteiro. Mas, e se o valor da String for “IFSP” ? 12
  • 13. • Tratamento de Exceções 13 Quando a aplicação é executada é gerado uma exceção.
  • 14. • Tratamento de Exceções – Como se prevenir? • É deselegante quando o usuário está trabalhando em uma aplicação e de repente, o programa “trava” devido à uma exceção que foi gerada e ele fique sem saber o por quê do erro e como fazer para repará-lo. • Uma exceção pode ser prevista e tratada pelo programador através do comando try/catch. 14
  • 15. • Tratamento de Exceções – try/catch • Os comandos try(tentar) catch(capturar) servem para tratar erros de exceção que possivelmente venham a acontecer (ou que sabemos que é altamente provável de acontecer). • Dessa forma, podemos definir um bloco de códigos dentro da cláusula try, e se alguma exceção for gerada, ao invés da aplicação travar e disparar os erros, ela imediatamente é redirecionada para a cláusula catch que já possui o código para tratar o erro. 15
  • 16. • Tratamento de Exceções 16 Quando ocorrer um erro de exceção do bloco do try, a aplicação é redirecionada para o bloco catch.
  • 17. • Tratamento de Exceções • Uma cláusula para tratamento de exceções pode ter diversos blocos catch, uma vez que existem classes diversas para tratamentos de exceção de acordo com o erro gerado. • Ex: – Exception – NumberFormatException – SQLException – etc... 17
  • 19. • Classe String – Apesar de ser comumente chamada de tipo de dado, String na verdade é uma classe nativa implementada no pacote java.lang – Logo, as “variáveis” do tipo String são na verdade instâncias/objetos da classe String. – Como são objetos, possuem a capacidade de executar alguns métodos implementados dentro da classe String. 19
  • 20. • Classe String – Alguns métodos da classe String: • charAt(): Retorna o caractere de uma determinada posição da String. • concat(): concatena com outra String. • equals(): compara com outra String. • equalsIgnoreCase(): Compara com outra String independente da caixa. • length(): retorna o tamanho da String. • replace(): Identifica e altera um determinado caractere. 20
  • 21. • Classe String • substring(): Desmembra a String em determinados trechos. • toLowerCase(): Converte todos os caracteres para minúsculo. • toUpperCase(): Converte todos os caracteres para maiúsculo. • trim(): Remove os espaços em branco no início e no fim da String. 21
  • 23. • Biblioteca JOptionPane – A linguagem Java oferece diversos recursos de implementações que auxiliam no desenvolvimento de interfaces gráficas amigáveis ao usuário. – A biblioteca JOptionPane oferece métodos para a exibição de caixas de alertas na tela para passar uma informação ao usuário ou então solicitar algum tipo de interação por parte dele. 23
  • 24. • Biblioteca JOptionPane – Método showMessageDialog: 24
  • 25. 25 • Biblioteca JOptionPane – Método showInputDialog: Retorna uma String.
  • 26. • Biblioteca JOptionPane – Método showConfirmDialog: 26 Retorna um int Sim: 0 Não: 1 Cancelar: 2
  • 27. • Exercícios: 1.Crie uma aplicação para receber uma data no formato dd/mm/YYYY e exiba um alerta com essa data formatada para YYYY-mm-dd. 2.Crie uma aplicação para receber um número inteiro maior que 0. Imprima todos os números no intervalo de 0 e o número informado, sendo que, quando for um número multiplo de 5, escreva “foo” e quando for multiplo de 10, escreva “bar”. 27