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 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 Ctambé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;
}
}