2. UM POUCO SOBRE MIM.
▸ Desenvolvedor de software com alguns anos de mercado.
▸ Com o tempo acabei me tornando um especialista em
Android.
▸ Sou maluco pro desenvolvimento de software.
▸ E doido por novas linguagens.
▸ Atualmente trabalhando no Instituto atlântico.
9. CLASSE. OU VOCÊ TEM OU VOCÊ NÃO TEM.
‣ CLASSE É A DESCRIÇÃO DE UM TIPO DE UMA
VARIÁVEL.
‣ DESCREVE TODOS OS COMPORTAMENTOS QUE
UM OBJETO TERÁ.
‣ É A BASE PARA A ORIENTAÇÃO A OBJETOS.
13. OBJETOS TEM CLASSE
‣ OBJETOS SÃO A INSTANCIA/CONSTRUÇÃO DE
UMA CLASSE.
‣ E TEM TODOS OS COMPORTAMENTOS DESCRITOS
NA MESMA.
public static void main(String[] args) {
MinhaClasse minhaClasse = new MinhaClasse();
}
19. PRIVADO OU PUBLICO. MUDANDO O ACESSO.
‣ VARIÁVEIS E MÉTODOS DE CLASSE PODEM TER
UM MODIFICADOR DE ACESSO.
‣ PUBLIC SIGNIFICA QUE QUALQUER UM PODE
ACESSAR A VARIÁVEL A PARTIR DO OBJETO.
‣ PRIVATE INDICA QUE NINGUÉM ALÉM DO
PRÓPRIO OBJETO PODE TER ACESSO A VARIÁVEL.
20. SEGUINDO O PADRÃO JAVA. FAZER O QUE…..
‣ O PADRÃO JAVA DEFINE QUE NUNCA DEVEMOS
TER UMA VARIÁVEL PUBLIC EM UMA CLASSE.
‣ TODAS AS VARIÁVEIS DEVEM SER PRIVATE.
public class MinhaClasse {
public String naoPode = "Não faça isso jovem";
private String pode = "Faça isso jovem";
}
21.
22. public static void main(String[] args) {
MinhaClasse minhaClasse = new MinhaClasse();
System.out.println(minhaClasse.pode);
//Isso não compila pois a variável pode tem o modificador private
}
‣ O PADRÃO JAVA EXIGE QUE AS VARIÁVEIS SEJAM
ACESSADAS POR MÉTODOS DE GET E SET.
‣ O PADRÃO GET E SET ESTÃO PRESENTES EM
TODAS AS APIS JAVA.
23. GET E SET
‣ ADEQUANDO NOSSO CÓDIGO AO PADRÃO…
public class MinhaClasse {
private String pode = "Faça isso jovem";
public String getPode() {
return pode;
}
public void setPode(String pode) {
this.pode = pode;
}
}
public static void main(String[] args) {
MinhaClasse minhaClasse = new MinhaClasse();
System.out.println(minhaClasse.getPode());
}
26. EXCEPTIONS. ERROS SÃO SEMPRE ESPERADOS NO MUNDO JAVA.
‣ DURANTE A EXECUÇÃO DE UM MÉTODO, UM
ERRO PODE ACONTECER.
‣ DEVEMOS SER SEMPRE CAPAZES DE TRATAR
ESSES ERROS.
‣ EM JAVA MÉTODOS PODEM EXPLICITAMENTE
INFORMAR QUE PODEM LANÇAR UMA EXCEÇÃO.
28. EXCEPTIONS.
‣ DECLARAR UMA EXCEÇÃO SIGNIFICA INFORMAR
QUE UM MÉTODO PODE CAUSAR UM ERRO E
EXIGIR QUE ESSE ERRO SEJA EXPLICITAMENTE
TRATADO.
public void deuRuim(Integer number) throws Exception {
if (number == 5) {
System.out.println("Sucesso!!!!!");
} else {
throw new Exception("Erro na execução do método");
}
}
29. EXCEPTIONS.
‣ TODOS QUE EVOCAREM O MÉTODO PRECISAM
TRATAR A EXCEÇÃO.
public static void main(String[] args) {
MinhaClasse minhaClasse = new MinhaClasse();
minhaClasse.deuRuim(4);
}
‣ O CÓDIGO ACIMA NÃO COMPILA. OCORRE UM
ERRO DE COMPILAÇÃO DEVIDO A EXISTÊNCIA DE
UMA EXCEÇÃO NÃO TRATADA.
30. TRY CATCH. TENTA EXECUTAR PARA MIM.
‣ PARA COMPILAR O CÓDIGO É NECESSÁRIO
TRATAR A EXCEÇÃO.
public static void main(String[] args) {
MinhaClasse minhaClasse = new MinhaClasse();
try {
minhaClasse.deuRuim(4);
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
‣ CASO O MÉTODO JOGUE UMA EXCEÇÃO, O BLOCO
CATCH SERÁ CHAMADO.
33. BIBLIOTECAS DE TERCEIROS
‣ SÃO CÓDIGOS FEITOS POR OUTRAS PESSOAS E
DISPONIBILIZADOS PARA USO LIVRE OU NÃO.
‣ NORMALMENTE CHAMADOS DE FRAMEWORKS.
‣ TEM O INTUITO DE FACILITAR/POSSIBILITAR A
EXECUÇÃO DE TAREFAS COMPLEXAS.
37. TEXTO
DESAFIO
▸ Quero acessar uma pagina da internet.
▸ Vamos fazer uma requisição HTTP a um site publico.
▸ Vamos exibir o conteúdo textual desse site.
40. TEXTO
‣ COM A ADIÇÃO DESSA BIBLIOTECA TEMOS ACESSO
A NOVAS CLASSES E MÉTODOS.
‣ E PODEMOS CRIAR UM MÉTODO EM NOSSA CLASSE
QUE FAZ REQUISIÇÕES A INTERNET.
public class MinhaClasse {
public String request(String url) throws IOException {
OkHttpClient okHttpClient = new OkHttpClient();
Request request = new Request.Builder().url(url).build();
Response response = okHttpClient.newCall(request).execute();
return response.body().string();
}
}
41. TEXTO
E PODEMOS CHAMAR ESSE MÉTODO EM NOSSA CLASSE MAIN.
public static void main(String[] args) {
try {
MinhaClasse minhaClasse = new MinhaClasse();
String resultado = minhaClasse.request("http://square.github.io/okhttp/");
System.out.println(resultado);
} catch (IOException e) {
System.out.println(e.getMessage());
}
}