Índice:
- Coloque letras maiúsculas onde elas pertençam
- Desligar uma indicação de comutação
- Compare os valores com um sinal duplo igual
- Adicionar ouvintes para lidar com eventos
- Defina os construtores necessários
- Corrigir referências não estéticas
- Mantenha-se dentro dos limites em uma matriz
- Antecipar ponteiros nulos
- Use permissões
- A atividade não encontrada
Vídeo: Erros que devs Java profissionais cometem que os impedem de crescer na Carreira(e como evitar!) 2024
Aqui estão 10 lembretes rápidos para evitar erros fáceis quando você está programando aplicativos Android com Java código. Escrever seus próprios programas Java será muito mais fácil e mais suave quando você passar por essa lista de verificação.
Coloque letras maiúsculas onde elas pertençam
Java é uma língua sensível a maiúsculas e minúsculas, então você realmente tem que se preocupar com seus P s e Q s - juntamente com todas as outras letras do alfabeto. Aqui estão alguns conceitos a ter em mente ao criar programas Java:
-
As palavras-chave de Java são completamente minúsculas. Por exemplo, em uma instrução Java if, a palavra se não pode ser Se ou IF.
-
Quando você usa nomes da API Java Programming Interface (API), o caso dos nomes deve coincidir com o que aparece na API.
-
Você também precisa se certificar de que os nomes que você compõe você mesmo são capitalizados da mesma maneira durante todo o programa. Se você declarar uma variável myAccount, você não pode se referir a isso como MyAccount, myaccount ou Myaccount. Se você capitalizar o nome da variável de duas maneiras diferentes, a Java pensa que está se referindo a duas variáveis completamente diferentes.
Desligar uma indicação de comutação
Se você não sair de uma declaração de mudança, você obtém uma queda. Por exemplo, se o valor do rolo for 7, o código a seguir imprime todas as três palavras: ganhe, continue e perca:
switch (roll) {case 7: System. Fora. println ("win"); caso 10: sistema. Fora. println ("continue"); caso 12: sistema. Fora. println ("lose");}
Compare os valores com um sinal duplo igual
Quando você compara dois valores um com o outro, você usa um sinal duplo igual. A linha
se (inputNumber == randomNumber)
está correta, mas a linha
se (inputNumber = randomNumber)
não está correta.
Adicionar ouvintes para lidar com eventos
Você quer saber quando o usuário clica em um widget, quando uma animação termina ou quando algo acontece, para criar ouvintes:
classe pública MainActivity extends Activities implementa OnClickListener, AnimationListener {… public void onClick (View view) {…} public void onAnimationEnd (animação de animação) {…}
Quando você cria ouvintes, você deve se lembrar de configurar os ouvintes:
ImageView widget = novo ImageView (este); ferramenta. setOnClickListener (este); … AlphaAnimation animation = new AlphaAnimation (0. 0F, 1. 0F); animação. setAnimationListener (este); …
Se você esqueceu a chamada para setOnClickListener, nada acontece quando você clica no widget. Clicar no widget mais uma segunda vez não ajuda.
Defina os construtores necessários
Quando você define um construtor com parâmetros, como em
Temperatura pública (número duplo)
Java não cria mais um construtor sem parâmetros padrão para você. Em outras palavras, você não pode mais chamar
Temperatura roomTemp = nova Temperatura ();
a menos que você defina explicitamente seu próprio construtor de temperatura sem parâmetros.
Corrigir referências não estéticas
Se você tentar compilar o seguinte código, você receberá uma mensagem de erro:
classe WillNotWork {String greeting = "Hello"; public static void main (String args []) {Sistema. Fora. println (saudação);}}
Você recebe uma mensagem de erro porque a principal é estática, mas a saudação não é estática.
Mantenha-se dentro dos limites em uma matriz
Quando você declara uma matriz com dez componentes, os componentes têm índices de 0 a 9. Em outras palavras, se você declarar
int convidados [] = novo int [10];
você pode se referir aos componentes da matriz de convidados escrevendo convidados [0], convidados [1], e assim por diante, até os convidados [9]. Você não pode escrever convidados [10], porque a matriz de convidados não tem nenhum componente com o índice 10.
Antecipar ponteiros nulos
Esses exemplos não são propensos a lançar o NullPointerException, mas na programação Java da vida real, você veja essa exceção o tempo todo. Uma NullPointerException ocorre quando você chama um método em uma expressão que não possui um valor "legítimo". Aqui está um exemplo barato:
classe pública ThrowNullPointerException {public static void main (String [] args) {String myString = null; exibir (myString);} exibição void estática (String aString) {if (! aString. contains ("confidencial")) {System. Fora. println (aString);}}}
O método de exibição imprime uma seqüência de caracteres somente se essa string não contiver a palavra confidencial . O problema é que a variável myString (e, portanto, o parâmetro aString) não se refere a uma string de qualquer tipo - nem mesmo à string vazia (").
Quando o computador atinge a chamada para aString. contém, o computador procura um método contém pertencente a nulo. Mas nulo não é nada. O valor nulo não possui métodos. Então, você obtém uma grande NullPointerException, e o programa cai à sua volta.
Para evitar esse tipo de calamidade, pense duas vezes sobre qualquer chamada de método em seu código. Se a expressão antes do ponto pode ser nula, adicione o código de tratamento de exceções ao seu programa:
tente {se (! AString. Contains ("confidencial")) {System. Fora. println (aString);}} catch (NullPointerException e) {System. Fora. println ("The string is null.");}
Use permissões
Alguns aplicativos requerem permissões explícitas. Por exemplo, um aplicativo pode conversar com os servidores do Twitter pela Internet. Isso não funciona a menos que você adicione um elemento ao AndroidManifest do aplicativo. Arquivo xml:
Se você esqueceu de adicionar o elemento ao seu AndroidManifest. arquivo xml, o aplicativo não pode se comunicar com os servidores do Twitter. O aplicativo falhou sem exibir uma mensagem de erro útil. Que pena!
A atividade não encontrada
Se você criar uma segunda atividade para seu aplicativo, você deve adicionar um novo elemento no AndroidManifest do aplicativo.arquivo xml. Por exemplo, um aplicativo para Android pode ter duas atividades: MainActivity e MyListActivity.
O Eclipse cria automaticamente um Se você não adiciona este elemento, o Android não pode encontrar a classe MyListActivity, mesmo que MyListAcitivity. O arquivo java está no diretório do projeto Eclipse do aplicativo. Seu aplicativo trava com uma ActivityNotFoundException. E isso faz toda a diferença.