JavaRush /Blogue Java /Random-PT /Os problemas mais comuns de quem começa a aprender Java

Os problemas mais comuns de quem começa a aprender Java

Publicado no grupo Random-PT
Nível de conhecimento necessário para compreensão do artigo: iniciante. Você está estudando a missão Java Syntax e mais próximo de seus níveis iniciais. Os problemas mais comuns de quem começa a aprender Java - 1Você acabou de começar a aprender Java. Você é bombardeado com termos como se fosse uma cornucópia. Você está carregado com toneladas de informações técnicas e às vezes fica confuso em três pinheiros. Acredite, como você já se envolveu com programação, SEMPRE SERÁ ASSIM (neste momento, uma risada sinistra soa fora da tela, e uma voz baixa, cortada no meio da frase, sussurra “Corra... salve-se antes é tarde demais..."). Bugs irão assombrá-lo pelo resto de sua vida de programação, mesmo se você for o melhor desenvolvedor. No entanto, isso não é tão assustador quanto parece.
Se você acabou de começar a aprender JavaRush, provavelmente já encontrou os problemas levantados no artigo. De qualquer forma, receberíamos comentários descrevendo os problemas que você teve nos primeiros meses de aprendizado de Java.

Problema de nível 0: Confusão com o operador de comparação (==) e o operador de atribuição (=).

Este é um problema muito comum para quem muda de outras linguagens de programação. E em geral, desde o ensino fundamental nos acostumamos com o fato de que (=)se trata de um sinal de igual. Um truque simples que pode ser usado para lembrar é este: se você sabe que só se preocupa com um dos valores (você atribui um ao outro), você usa um único =sinal " ", caso contrário, se você se preocupa com todas as variáveis e valores (você os compara) você precisa de um ==sinal " " duplo.

Problema: Usando o operador de comparação (==) para testar a equivalência de strings

O que fazer: Lembre-se de que nenhum objeto Java pode ser verificado quanto à equivalência usando(==) , pois esse operador foi projetado para testar a igualdade de tipos primitivos.
Os problemas mais comuns de quem começa a aprender Java – 2
Para objetos você precisa usar o .equals(). E Stringna linguagem Java nada mais é do que um objeto (e immutable).
Um objeto marcado como Immutable é um objeto cujo estado não pode ser alterado após a criação. Em Java , isso significa que todos os campos de instância de uma classe são marcados como finale são primitivos (ou também immutable).

Problema: concatenação de strings em um loop

Não tente fazer isso sozinho! Cada vez que strings são concatenadas, um novo objeto é criado String(como descobrimos acima, strings immutablesão imutáveis). Em algum momento você ficará sem memória ou o programa começará a demorar muito para ser concluído. Solução. Use StringBuilderem vez disso Stringao concatenar conteúdo em um loop. A classe StringBuilderé usada quando você precisa fazer muitas alterações em uma sequência de caracteres. E tais linhas, ao contrário String, não são immutable.

Problema: NullPointerException

Este tipo de exceção ocorre quando tentamos usar um ponteiro nulo nullquando na verdade precisamos de um objeto real.
Todos os tipos primitivos possuem valores padrão. Então, y inté 0e y booleané false. O valor padrão de qualquer tipo de referência, ou seja, objetos, é null. Não é um objeto ou tipo, é um valor especial. O que essencialmente significa “não há nada aqui”.
Os problemas mais comuns de quem começa a aprender Java – 3
O que fazer: Se o seu código for escrito de tal forma que em algum momento seu objeto possa aceitar o valor null, você precisará adicionar uma “verificação de null”, especialmente se você não estiver criando o objeto sozinho. Lembre-se também de que é melhor retornar coleções vazias do que um conjunto de null's. Também seria bom adicionar validação para getters e setters.

Problema: por algum motivo o loop if/while/for não funciona

if (something.equals («что-то еще»)); {// <---- корень зла!!!
     System.out.println («Почему я не работаю???»);
}
O que há de errado aqui? É simples: um ponto e vírgula extra estragou o sangue de centenas de milhares de programadores Java novatos. Bem, você não precisa disso depois if (). Do ponto de vista da linguagem, tal sintaxe é bastante aceitável, portanto o compilador não reclamará disso. Mas isso encerra a instrução condicional e o código dentro do bloco {}nunca satisfará a condição acima.
Os problemas mais comuns de quem começa a aprender Java – 4
Solução: lembre-se da lógica do design. O sinal “ ;” significa o fim de um determinado bloco, mas aqui tudo está apenas começando.

Problema: Tentando acessar variáveis ​​de membros não estáticos a partir de métodos estáticos (como main)

Solução . Este problema está relacionado com a compreensão do próprio conceito static. Se um método estiver marcado com esta palavra, significa que não precisamos instanciar a classe para chamar o método principal. Então a solução é ter um bom entendimento da “estática” e entender sua essência.

Problema: Tentando reinventar a roda desenvolvendo bibliotecas e ferramentas já existentes

Solução. Na verdade, não é um grande problema. Para um iniciante, este é um exercício mais útil. Porém, se você quiser focar no resultado, por exemplo, criando um banco de dados de assinantes conveniente, então procurar um assinante na lista telefônica é apenas um dos resultados de sua aplicação. Neste caso, não há necessidade de escrever um algoritmo de busca binária. Use um existente (garantimos que alguém já o escreveu antes de você e está nas bibliotecas padrão). Portanto estude as bibliotecas padrão Java na documentação do Oracle. Aprenda com o Google, acostume-se a ler Stack Overflow e tire dúvidas na ajuda do JavaRush ! ...Claro, esses não são todos problemas dos iniciantes. Descreva o seu nos comentários! Você está interessado em ler artigos relacionados a Java? Junte-se ao grupo de desenvolvedores Java . Há muitas coisas interessantes aqui.
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION