Linguagem Java

Dicas e tutoriais sobre a linguagem Java

Linguagem Java


Introdução

Primeiramente apelidada de Oak, (carvalho) a linguagem de programação Java começou a ser desenvolvida na década de 90, na empresa Sun Microsystems, por uma equipa de programadores, designada de Green Team, chefiada por James Gosling. Diferentemente das outras linguagens que são compiladas para código nativo (dependentes de plataforma onde correm), esta linguagem é compilada para um ‘bytecode’ que é executada por uma máquina virtual.

Esta característica conferiu à linguagem portabilidade, pois o objectivo do projecto, era que funcionasse em diferentes processadores de equipamentos de electrónica de consumo, nomeadamente, electrodomésticos.

Com o advento da Internet a equipa foi incumbida de adaptar a Oak, e em 1995, foi lançada uma nova versão, tendo sido rebaptizada de Java. Os navegadores existentes na altura, perceberam a importância da linguagem, tal como o Netscape, tendo adaptado uma postura de apoio, incluindo Applets Java.

Em 2004, a linguagem atingiu cerca de 3 milhões de pessoas a fazer desenvolvimento, tendo crescido imenso até aos dias de hoje, sendo uma referência indiscutível no mercado de desenvolvimento de software. Esta linguagem acabou, graças às suas potencialidades, por se tornar popular pelo seu uso na Internet e hoje está presente em todos os navegadores web, mainframes, sistemas operativos, celulares e variadíssimo equipamento.

A Sun Microsystems, concede grátis através do seu site, o ambiente de desenvolvimento Java, denominado indiferentemente com as siglas: JDK, SDK ou J2SE, que incluí o API de Java, o compilador e o JRE (Java Runtime Enviroment).

Preparação do ambiente

Podemos programar em ambiente Java, apenas utilizando um editor de texto simples como por exemplo o Notpad, compilar o programa e executá-lo através de comandos simples na janela DOS do Windows, é no entanto manifesto que esta forma simplista de desenvolvimento, não se coaduna com as exigências da programação actual.

Devido a este facto, não apresentamos aqui nenhum exemplo em editor de texto simples, (por se tratar de exemplos académicos) avançamos para um ambiente de desenvolvimento integrado (IDE) mais eficaz e profissional e que permite obter resultados mais consistentes com menos esforço, aproveitando os recursos postos à disposição por este software, delineado, sobretudo, para o desenvolvimento de aplicações.

Um dos IDE mais potente, actualmente no mercado é o NetBeans com a vantagem de correr em Windows, Linux, Mac OS X e Solaris ser completamente grátis e em código aberto (open-source). Para além disso dispõe de uma enorme quantidade de plugins desenvolvidos pela própria comunidade e por terceiros.

Assim, aconselhamos a efectuar o seu carregamento no site da NetBeans e começar a acostumar-se a este ambiente de desenvolvimento, porque daqui por pouco tempo vai ver que valeu o seu empenho e tempo investido.

Usando o NetBeans

Abra a o NetBeans IDE, irá observar um interface gráfico do utilizador (GUI) Graphical User Interface na terminologia inglesa. Vamos iniciar o primeiro projecto o objectivo deste é que ao correr escreva a famosa frase Hello world!

Abra File--> New Project, e nesta nova janela escolha Java e Java Aplication e clique em Next isto irá abrir uma nova janela.

Nesta janela aparece o nome para o projecto e a sua localização. O nome poderá ser javaapplication1 (nome por defeito) veja a localização (pasta) onde pretende que fiquem os ficheiros, clique Finish.

Repare no código que foi gerado automaticamente pelo NetBeans:

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package javaapplication1;
/**
*
* @author xxxx
*/
public class Main {
   /**
   * @param args the command line arguments
   */
   public static void main(String[] args) {
      // TODO code application logic here
   }
}

Em public static void main(String[] args) escreva agora a seguinte linha de código a seguir a, //TODO code application logic here.

System.out.println("Hello world!");

Vamos correr o pequeno programa criado, no menu Run escolha a opção Run Main Project. Na janela de Output situado em baixo observe o resultado obtido:

run:
Hello world!
BUILD SUCCESSFUL (total time: 0 seconds)


Fundamentos de Programação


1. Dissecando o programa Hello world

A primeira linha de código, public class Main indica que o nome da classe é Main. Em Java todo o código deverá ser colocado dentro da declaração de classe. Para se obter a declaração de classe usa-se a palavra reservada class. Em adição, a classe usa um especificador public, que indica que a nossa classe ficará acessível a outras classes de outras packages (packages são uma colecção de classes, como no nosso exemplo: javaapplication1).

A seguir aparece a chaveta aberta { que indica que começa um bloco, as seguintes três linhas indicam um comentário em Java:

/**
* @param args the command line arguments
*/

Um comentário é utilizado para documentar uma parte do código, não fazendo parte do programa em si mesmo, mas especialmente importante em termos de documentação. Acresce que é uma boa prática adicionar comentários ao código que vamos desenvolvendo.

Um comentário é indicado pelos delimitadores “/*” e “*/” tudo dentro dos delimitadores é ignorado pelo compilador de Java, e é tratado como comentário.

A linha seguinte public static void main(String[] args) { indica o nome de um método inserido na classe Main que é o main (principal), não confunda a class com o método. O método main é o ponto de começo do programa de Java. Todos os programas excepto Applets escritos em Java começam no método main. A linha // TODO code application logic here também é um comentário em Java.

Agora entendemos que existem duas formas de criar comentários. A primeira é colocar os comentários dentro dos limitadores /* e de */, a outra é usar // (duas barras) como começo do comentário.

A linha System.out.println("Hello world!"); imprime o texto “Hello World!” no ecrã. O comando Java System.out.println(), imprime o texto que se encontrar entre as aspas no ecrã.

As duas chavetas finais servem para fechar o método main e a class Main respectivamente.


2. Comentários em Java

Comentários são notas escritas com o propósito de documentar o código, estas não fazem parte do programa e não afectam o seu fluxo. A linguagem Java suporta três tipos de comentários:

• O estilo C++, linha de comentário simples;
• O estilo C de comentário multilinha;
• Comentário especial designado por javadoc.
Estilo C++

O estilo C++ começa com duas barras // todo o texto a seguir às referidas barras é tratado como comentário. A seguir apresentamos um exemplo do comentário:

// Isto é o estilo C++ ou linha de comentário simples.

O estilo C multilinha

O estilo C, também conhecido como comentário multilinha começa com o delimitador /* e termina com */. Exemplo de um comentário multilinha:

/* Isto é o estilo C
também conhecido como comentário multilinha */

Comentário especial javadoc

Os comentários especiais javadoc são usados para gerarem uma documentação em HTML, dos seus programas. Podemos criar documentos javadoc começando os comentários com o delimitador /** e terminando com */. Exemplo de um comentário javadoc:

/**
Isto é um exemplo de comentários javadoc usado
para gerar documentação em HTML, podem ser usadas tags como:
@autor Floridas Perez
@versão 2.5
*/

3. Declarações e Blocos

Uma declaração é uma ou mais linhas de código terminados por ponto e vírgula. Exemplo de uma declaração simples:

System.out.println(“Hello world”);

Um bloco é constituído por uma ou mais declarações, sendo iniciado e fechado com chavetas. Exemplo de um bloco:

public static void main( String[] args ){
   System.out.println("Hello");
   System.out.println("world");
}

4. Identificadores

Identificadores são símbolos que representam nomes de variáveis, métodos, classes, etc. Exemplos de identificadores são: Main, main, System, out.

A linguagem Java é sensível a letras maiúsculas e minúsculas, nomeadamente ao nível dos identificadores, por isso é importante ter atenção a este facto. Os identificadores começam com uma letra, um traço “_”, ou com o símbolo de dólar $. As letras podem ser maiúsculas ou minúsculas. Nos caracteres subsequentes podem ser usados os algarismos de 0 a 9. Nos identificadores não poderão ser usadas palavras reservadas, como por exemplo: class, public, void, etc.


5. Palavras Reservadas

Palavras reservadas são identificadores pré definidos não podendo ser usadas como nomes de variáveis, métodos, classes, etc. Exemplo de palavras reservadas: while, if, new, switch, char.


6. Constantes

Na linguagem Java existem vários tipos de constantes: Integer, Floating-Point, Boolean, Character e String.


Constantes de inteiros

As constantes de inteiros Integer podem ser em diferentes formatos: decimal (base 10), hexadecimal (base 16), e octal (base 8). Para usar constantes de inteiros, nos programas, temos de seguir algumas notações especiais. Para números decimais, não são necessárias notações especiais, apenas se escreve o número pretendido. Para números hexadecimais devem ser precedidos de “0x” ou “0X”. Para o formato octal devem ser precedidos de “0”. Por exemplo considere o número 12. A sua representação decimal é obviamente 12, em hexadecimal é 0xC, e em octal é equivalente a 014.

Nas constantes de inteiros o tipo de dados é int. O int tem um valor de 32 bits consignado, que poderá ser forçado a 64 bits adicionando o símbolo “l” ou “L” de long.


Constantes de Floating-Point (Ponto Flutuante)

As constantes de Floating-Point representam os números reais com uma parte inteira e outra decimal, por exemplo: 3.141519. Estas constantes podem ser expressas em notação standard ou científica. Por exemplo 6543.78 (notação standard) e 65.4378e2 (notação científica).

Nas constantes de Floating-Point o tipo de dados é double. O double tem um valor de 64 bits consignado, que poderá ser forçado a uma precisão menor usando apenas 32 bits adicionando o símbolo “f” ou “F”.


Constantes Booleanas

As constantes booleanas têm apenas dois valores, true ou false.


Constantes de caracteres

As constantes de caracteres representam os caracteres Unicode. Um carácter Unicode tem um valor 16 bits, que substituiu o sistema de 8 bits do código ASCII. O Unicode permite a inclusão símbolos e de caracteres especiais de outras línguas. Para usar um constante de um caracter, por exemplo da letra a coloque-a entre pelicas, ou seja, ‘a’. Para usar caracteres especiais, coloca-se a barra invertida antes. Por exemplo ‘\n’ para nova linha, ou ‘\b’ para backspace.


Constantes de strings

As constantes de strings representa múltiplos caracteres inseridos em aspas. Exemplo: “Hello World”.

7. Variáveis

Uma variável é um item de dados usada para armazenar o estado de valores e objectos. Uma variável é constituída por um tipo de dados e um nome. O tipo de dados indica o tipo de valor que a variável poderá ter. O nome da variável deverá seguir as regras dos identificadores.


Declaração e Inicialização de Variáveis

A declaração da variável tem a seguinte sintaxe:

<tipo de dados> <nome> [=valor a iniciar];

Nota: Os valores dentro de <> são valores requeridos, os que se encontram no parêntesis rectos [] são opcionais.

Lembre-se as variáveis são contentores, (imagine chávenas) elas contêm algo devem ter um tipo, tamanho e devem ter um nome. De momento examinaremos as variáveis que contêm tipos primitivos e, um pouco mais adiante, discutiremos as que contêm referências a objectos.

Cada variável primitiva possui uma quantidade fixa de bits (tamanho da chávena) veja o quadro seguinte:

Tipo Quantidade bits Intervalo valores
1. Booleano e char
boolean Específica da JVM true ou false
char 16 0 a 65535
2. Numéricos
a) Inteiros
byte 8 -2^7 a 2^7-1 (-128 a 127)
short 16 -2^15 a 2^15-1 (-32768 a 32767)
int 32 -2^31 a 2^31-1 (-2147483648 a 2147483647)
long 64 -2^63 a 2^63-1 (-enorme a enorme)
b) Ponto Flutuante
float 32 -2^31 a 2^31-1 (-2147483648 a 2147483647)
double 64 -2^63 a 2^63-1 (-enorme a enorme)

Em seguida expomos um programa exemplo de declaração e inicialização de algumas variáveis.

public class ExemploVariaveis{
   public static void main( String[] args ){
      //declarar o tipo de dados com o nome da variável
      // resultado e tipo de dados boolean
      boolean resultado;
      //declarar o tipo de dados com o nome da variável
      //escolha e tipo de dados char
      char escolha;
      escolha = 'C'; //atribuir 'C' a escolha
      //declarar o tipo de dados com o nome da variável
      //grade, declarar e inicializar com o valor 0.0 o tipo de dados double
      double grade = 0.0;
   }
}

Página seguinte