Caro amigos ,ainda sou muito leigo no mundo Java e estou aos poucos me esforçando para aprender tal linguagem.
Ocorre que apesar dos livro e das videos aulas alguns problemas simples ainda me afetam ,
e gostaria de saber se poderiam me ajudar de uma maneira mais clara a entender um dos problemas que estão me fazendo travar
muitas vezes.
Apesar de simples eu não estou conseguindo entender a tal da Sintaxe do java, não ela por completa mais sim a parte em que se refere a fechar os tals " {} "
Sempre me deparo com erros do tipo " reached end of file while parsing class ,interface or enum expected illegal start of expression " .
Já pesquisei li e reli mais não consigo montar os programas da maneira correta se puderem me dar algumas dicas de como aprender a fazer isso ficarei grato.
Desde já um Muito Obrigado.
Arquitetura Java
7 Respostas
Não tem para onde correr!
tem que ler muito, entender e estudar bastante a teoria e praticar fazendo exercícios e com os erros também se aprende! pois conhecendo-os saberás como resolve-los.
Tudo o que você precisa saber é: Toda linha normal(Em que não ocorre a abertura de {} ), termina com ;
Linha como a do for, if, while, etc, abrem {} por que apartir dai a JVM executa o código dentro dessas {}
por exemplo:
ENQUANTO (condição for verdadeira) {
SE (condição for verdadeira) {
ESCREVA: "Olá";
} SENÃO {
ESCREVA: "Tchau";
}
}
OBS: Isso não é java, hehe
Vai praticando que uma hora entra no sangue, respeita o tempo. As apostilas abaixo são bem didáticas e podem te ajudar:
http://www.caelum.com.br/apostilas/ (Java e Orientação a Objetos)
http://www.k19.com.br/downloads/apostilas/java/k19-k11-orientacao-a-objetos-em-java
Escrever código na mão, sem ajuda de uma IDE é difícil mesmo, mas para quem está começando é o melhor de jeito de pegar a linguagem. Algumas práticas que eu considero boas, e que fazem falta até pra quem usa IDE:
1 - Sempre idente o código. Identar significa tabular o código de acordo com o seu escopo, por exemplo, no código abaixo fica fácil saber que nome, dataNascimento, idade e endereco fazem parte de Cliente:
class Cliente{
String nome;
Date dataNascimento;
int idade;
String endereco;
}
Pior seria:
class Cliente{
String nome;
Date dataNascimento;
int idade;
String endereco;
}
ou pior ainda:
class Cliente{String nome;Date dataNascimento;int idade;String endereco;}
enfim, idente o quanto for necessário, você vai ver que dentro das classes podem vir métodos, dentro dos métodos podem ter blocos de if, for, while, try-catch. Mas mesmo que uma linha comece no meio da tela, não deixe de identar o seu código.
2 - Ao utilizar chaves, parênteses, colchetes ou aspas, sempre abra e feche na mesma hora. Por exemplo, ao digitar uma String “Alô Mundo”, digite primeiro as aspas depois posicione o cursor entre eles e digite o conteúdo. Por exemplo: “” --> “Alô” --> “Alô Mundo”. Isso ajuda principalmente com chaves e grandes blocos de código. Sendo assim, nas próximas classes que você escrever digite: class, o nome da classe, abra as chaves e logo em seguida, feche as chaves na linha seguinte. Somente então você começa a digitar o conteúdo da classe. O mesmo vale para if’s, for’s e outros blocos de código.
3 - Sempre declare uma variável por linha.
4 - Evite quebrar comandos em mais de uma linha.
Os controladores de fluxo tem como função fazer com que o programa realize uma determinada função quando(ou enquanto) algo for verdadeiro.
Mostrarei mais ou menos como funciona o if e o while. O for funciona básicamente da mesma forma do while só que mais “complicadinho”.
if(“se”) é o controlador do “se for isso, faça isso”.
Exemplo:
int x = 10
se(x for igual a 10){ //Aqui temos uma condição verdadeira já que x é igual a 10
//faça alguma coisa
}
Aplicação:
int x = 10;
if(x == 10){
System.out.println("X é igual a 10!!!");
}
while(“enquanto”)é um gerador de loop (repetição), é o operador do “enquanto isso for verdade, faça isso”.
Ele (geralmente) serve para gerar um código que tem uma repetição FINITA, ou seja, que em determinado ponto acaba.
Digamos que você queira que apareça na tela do número 1 ao número 100, imagine o trabalho que daria escrever do 1 ao 100…
Exemplo:
int x = 1;
enquanto(x for menor que 100){
//Mostre x e faça com que x em determinado momento seja igual
//some 1 ao x
}
Aplicação:
int x = 1;
while(x < 100){
System.out.println(x);
x++;
}
*Não revisei o comentário, estou meio com pressa se tiver algo errado, por favor, comentem.
Eu ainda sou iniciante em Java, porém, já venho estudado a um bom tempo e já tenho a base.
No começo acho que geral é assim, claro tem aqueles que vem de boa experiência em outras linguagens e aprendem a sintaxe rapidinho.
A dica que dou é respeitar o tempo como o cara falou e ler e escrever bastante, o livro que estou lendo é o Use a Cabeça Java e todos os exercícios forçam você a escrever e analisar os códigos fora do compilador, então pra pegar o jeito é tranquilo. Eu li a apostila da Caleum e é muito boa também e por último tem um curso no youtube que considero excelente, que é da universidade XTI.
Segue ai o curso:
Caro amigos ,
agradeço a ajuda de todos ,
as informações passadas me são muito úteis.
Creio que no minímo compreendi que no começo essas dúvidas são comuns.
Do demais as dicas pra mim conseguir pegar a maneira certa de organização
e montar um escopo correto foram bem explicativas e podem ter certeza que
irão me ajudar muito nessa longa caminhada.
Estou lendo o livro “Use a cabeça Java” também ,e estou gostando e justamente
ele que está me ajudando a criar dúvidas rs’ ,mais como vocês mesmo disseram
creio que é escrevendo ele na pratica que vou aos poucos aprendendo a tirar minhas
dúvidas e corrigir os problemas que aos poucos vão surgindo.
Referente a videos aulas também estou vendo algumas para dar um apoio no conteúdo,
e em breve espero poder com as apostilas da Caelun também.
Desde sempre o meu muito obrigado , agradeço a todos e espero sempre contar com
a ajuda e experiência de todos vocês, até uma proxima.