Академический Документы
Профессиональный Документы
Культура Документы
Recursos de Rede - Possui extensa biblioteca de rotinas que facilitam a cooperação com
protocolos TCP/IP, tais como HTTP e FTP;
Carga Dinâmica de Código - Programas em Java são formados por uma colecção de
classes armazenadas independentemente e que podem ser carregadas no momento de
utilização.
A linguagem java tem várias aplicações sendo as mais comuns na actualidade das seguintes:
1
1.1 Como executar o programa em Java
Para desenvolver e executar um programa em Java é preciso possuir:
Compilador java - para converter o código fonte para bytecode (código intermédio) que
será interpretado e executado pelo programa java.
O compilador é um programa que transforma o código fonte em bytecode (para o caso de java).
Este processo em java gera um ficheiro com extensão .class
Um compilador é um dos dois tipos mais gerais de tradutores, sendo que o segundo tipo que a ele
deve ser comparado é um interpretador.
Normalmente, o código fonte é escrito em uma linguagem de programação de alto nível, com
grande capacidade de abstracção, e o código objecto é escrito em uma linguagem de baixo nível,
como uma sequência de instruções a ser executada por um sistema operacional.
2
1.3 Máquina Virtual Java
Máquina virtual Java (do inglês Java Virtual Machine - JVM) é um programa que carrega e
executa os aplicativos Java, convertendo os bytecodes em código executável de máquina. A JVM
é responsável pela gestão das aplicações, à medida que são executados.
Durante o processo de compilação, os programas Java não são transformados para o código
binário como acontece com outras linguagens (exemplo a linguagem C), mas sim são
transformados para uma representação intermediária, chamada de bytecodes e por sua vez, os
bytecodes são interpretados pela máquina virtual Java
Graças à máquina virtual Java, os programas escritos em Java podem funcionar em qualquer
plataforma de hardware e software que possua uma versão da JVM, tornando assim essas
aplicações independentes da plataforma onde funcionam.
Muitas pessoas acreditam que por causa desse processo de compilação, a linguagem Java tem
baixo desempenho. Durante muito tempo esta foi uma afirmação verdadeira. Porém novos
avanços tem tornado o compilador dinâmico (JVM), em muitos casos, mais eficiente que o
compilador estático.
Java hoje já possui uma performance próxima do C++. Isto é possível graças a optimizações,
como a compilação especulativa, que aproveita o tempo livre do processador para pré-compilar
bytecode para código nativo. Outros mecanismos ainda mais elaborados como o HotSpot da Sun,
que guarda informações disponíveis somente em tempo de execução (ex.: número de usuários,
processamento usado, memória disponível), para optimizar o funcionamento da JVM,
possibilitando que a JVM vá "aprendendo" e melhorando seu desempenho. Isto é uma realidade
tão presente que hoje é fácil encontrar programas corporativos e de missão crítica usando
tecnologia Java. No Brasil, por exemplo, a maioria dos Bancos utiliza a tecnologia Java para
construir algumas aplicações bancarias, que são acedidas por milhares de usuários diariamente.
Grandes sites como o eBay utilizam Java para garantir alta performance. E a cada ano Java tem
se tornado mais rápido, na medida que se evolui o compilador dinâmico.
3
uma vez terminado os procedimento, o seu programa java estará instalado no seguinte
directório: C:\Program Files\Java\jdk1.6.0. O nome deste directório muda dependendo
da versão.
Depois de instalar Java, deve configurar as variáveis de ambiente para se puder usar o programa
java apartar de qualquer directório. Se o ambiente não for devidamente configurado, o java e seu
compilador (java e javac ) só poderá funcionar somente quando estiver localizado no directório
C:\Program Files\Java\jdk1.6.0
Clique à direita na ícon “My Computer” escolhe “properties” na janela exibida. Clique a
Tab “Advanced”, depois, aparecerá a janela da figura 1.
4
Escreva a seguinte informação na nova janela.
Se tiver PATH, nome de variável, escolhe PATH e clique na botão “Edit”, acrescente o
caminho do directório onde se encontra o java. Antes do caminho coloque símbolo de ;
(ponto e virgula)
Como foi referido a cima se as variáveis do ambiente se não forem devidamente configuradas a
compilação e execução do java (javac, java e etc.) só poderão ser feitas quando estivermos na
pasta C:\Program Files\Java\jdk1.6.0\bin que é onde está instalado o software de java.
Para confirmar se a instalação ocorreu com sucesso deve-se abir a janela de “command prompt”
e escrever o seguinte comando: “java -version” :
5
Esta janela mostra que já estas pronto para programar usando Java. Sejam bem vindos no mundo
do Java.
1. usando NOTEPAD criar o codigo fonte e guardar num ficheiro com extensão .java
(exemplo OlaMundo.java)
2. Compilar o código fonte usando o comando JAVAC (javac OlaMundo.java)
3. Executar o programa usando o comando JAVA (java OlaMundo)
Nome de ficheiro : OlaMundo.java – Note que o java é sensível a maiúsculas e minúsculas, por
isso, nunca deve trocar maiúsculas por minúsculas e vice-versa;
6
guardar no directório da sua preferencia o código fonte com o nome da classe, tal qual se
observa da figura acima
javac HelloWorld.java
java HelloWorld
Se tudo estiver a funcionar bem irá aparecer no seu computador um écran idêntico da nossa
figura acima. Caso o seu programa não funcione verifique o seguinte :
7
O conteúdo de programa criado por si
Nome de ficheiro
Variáveis de ambiente
Especificação de comando javac e java
Por ser um programa novo, vamos interpretar as instruções do nosso programa (OlaMundo)
HelloWorld.java do exemplo.
programa 1 – HelloWorld.java
public class HelloWorld {
public static void main(String args[]) {
System.out.println("Hello Java World !");
}
}
public class HelloWorld - esta linha de código, declara o nome de classe que vai ser criada, para
o caso especifico irá criar a classe HelloWorld.
public static void main(String args[]) - java começa a executar sempre a partir desta linha,
assim java irá executar o conteudo deste metodo.
System.out.println("Hello Java World !") - esta linha de código java usa o comando
System.out.println para imprimir/mostrar no ecran o texto que está entre “” (aspas). System e
System.out são um comandos que fazem parte da livraria de classe pré definida.
Ao mudarmos o comando println para print, o programa não muda de linha depois de imprimir o
texto no écran.
Tomando como exemplo o programa OlaMundo podemos assumir a seguinte estrutura básica de
um programa em java:
Importante: Ao compilar os seus programas em java irá encontrar, principalmente nos primeiros
dias, muitos erros. Recomendamos que se esforce para entender os erros que surgem de modo a
aprender cada vez mais para tornar-se um bom programador. “ É importante acumular as
experiências de sofrimento para forjar-se como programador”
Exercício
8
2. Mude o nome de classe.
Declarar o tipo de variável – definir o tipo de dados que deve ser guardado na variável
9
2.2 Literais
Um valor constante em Java se cria utilizando uma representação literal da mesma. Java utiliza
cinco tipos de elementos: inteiros, reais com virgula flutuante, booleanos, caracteres e cadeias
(strings), que se podem usar em qualquer lugar do código fonte de Java. Cada um destes literais
tem um tipo correspondente associado a ele.
Inteiros:
byte 8 bits
short 16 bits
int 32 bits
long 64 bits
exemplo 21
Reais com virgula flutuante:
float 32 bits
double 64 bits
Por exemplo: 3.14
Booleanos:
true
false
Caracteres:
Cadenas:
nome_utilizador
Nome_Utilizador
_variavel_de_sistema
$transacao
10
E o exemplo do seu uso seria:
int contador_principal;
char _lista_de_ficheiros;
float $quantidade_em_Mtn;
Declaração de variáveis
Uma vez conhecido o nome e o tipo de dados da variável é necessário declara-la. A variável
declarada tem efeito dentro do bloco em que foi declarada.
Int idade;
Float salario;
Bolean opçao;
Int valor
Quando temos mais de uma variável do mesmo tipo podemos declarar como segue:
11
2.4 Inicialização de variáveis
Inicializar uma variavel significa atribuir um valor a esta mesma variável. Os seguintes exemplos
inicializam uma variável no momento da sua declaração:
Float salario=254,6;
Bolean opcao=true;
Int idade=20, valor=40;
Sintaxe de inicialização de variável é
nome_de_variavel = valor;
Em geral as variáveis não inicializadas tomam o valor por defeito do respectivo tipo. O java
alerta quando tentamos usar uma variável não inicializada.
programa 4 - CalcWithParams.java
No programa que segue vamos usar varias variáveis para consolidar o seu conceito.
Programa 5 - CalcWithParams.java
byte b;
short s;
int i;
long l;
float f;
double d;
char c;
}
12
Programa 6 – NoInitParam.java
public class NoInitParam {
public static void main( String args[] ) {
int a;
System.out.println(a);
}
}
C:\exercicios>javac NoInitParam.java
System.out.println(a);
1 error
Escreva “00000001” na
memória “a”, ao alocarmos
“a=1;”.
A variavel ‘’a’’ tem “00000001” em vez de “1”? porque o tipo de dados “int” é tratado como int(
que tem 4bytes). Por causa disso, o valor escrito na memória é “00000001”.
3 ESTRUTURA DE CONTROLO
Os tipos de estrutura de controle comuns são:
o if
o if~else
o switch
Repetição ou iterração
o for
o while
13
o do~while
o break, continue, return
3.1 a condição if
if é uma das estrutura mais usadas, expressa divergência de condição nas declarações de
controlo. A sua sintaxe é a seguinte:
if(condição)
{expressão 1} // este bloco só é executado no caso verdadeiro. Dispensa-se de parênteses
//quando é composto por 1 única instrução
Expressão 2 // esta expressão é sempre executada
Lista 1 – IfSample1.java
A instrução if avalia a condição de if e executa próxima linha quando o resultado for verdadeiro.
Se não for verdadeiro, passa para a próxima linha.
O operador “==” é um operador para comparação e neste caso verifica se “a” é 1 ou não. Se uma
vez verificada a condição verdadeira devem ser executadas duas instruções, estas duas instruções
devem estar entre parênteses ({}), tal como se verifica na sintaxe abaixo.:
If(condição){
Instrução 1 // esta instrução só é executada no caso verdadeiro
Instrução 2 // esta instrução só é executada no caso verdadeiro
}
Instrução 3 // esta instrução é sempre executada
Lista 2 – IfSample2.java
14
A avaliação da condição if pode ser também falsa.
if( condição) {
expessao1; // executa-se quando a condição é verdadeira
}
else {
expressão 2; // executa-se quando a condição é falsa
}
Para o caso em que a expressão 1 é composta por uma instrução os parentes são dispensáveis, o
mesmo é aplicável para a expressão 2.
Lista 3 – IfSample3.java
public class IfSample3 {
public static void main( String args[] ) {
int a = 1;
if ( a == 1 ) {
System.out.println("Variável a e 1, isto é a condição if é verdadeira");
System.out.println("Variável a e 1 , isto é a condição if é verdadeira ");
} else {
System.out.println("Variável a não e 1, , isto é a condição if é falsa ");
}
System.out.println("Esta parte e executado sempre.");
}
}
If(condicao1)
Expressao 1;
If(condicao2)
Expressao 2;
If(condicao 3)
Expressao 3
........
15
If(condicao n)
Expressao n;
Esta forma de avaliar diversas condições pode ser melhorada através do uso da instrução switch
que tem a seguinte sintax:
Switch (expressa_1)
Case constant 1;
Expressao(x)
Break;
Switch (expressa_2)
Case constant 2;
Expressao(y);
Break;
…….
Switch (expressao_n)
Case constant n;
Expressao (k)
Break;
……….
Default
Expressão(Z)
Lista 4 – SwitchSample.java
Switch(oper)
16
Case ‘+’;
Y=x1+x2;
Break;
Case ‘-’;
Y=x1-x2;
Break;
Case ‘*’;
Y=x1*x2;
Break;
Case ‘/’;
Y=x1/x2;
Break;
Onde:
expressão 1 – inicializa o contador do ciclo (ex. Int i=0;). Esta expressão é avaliada
apenas uma vez.
Condição – é a condição que deve ser satisfeita para que o ciclo seja realizado. Esta
expressão é sempre booleana ( I<0 ). Se o resultado da avaliação do teste é falso o
ciclo para.
Exemplo :
Lista 5 – ForSample.java
public class ForSample {
public static void main( String args[] ) {
int i = 1;
for ( i = 1; i <= 10; i++ )
System.out.println(i);
System.out.println("Aqui e fora do ciclo for.");
}
}
17
3.6 O ciclo while
A instrução while é usada para repetir uma expressão ou um bloco enquanto uma determinada
condição for cumprida. A sintax é:
Lista 6 - WhileSample.java
public class WhileSample {
public static void main( String args[] ) {
int a = 0;
while ( a < 100 ) {
System.out.println("Variavel a e "+a+" .");
a++;
}
}
}
Do{
Expressão (s);
}while (dondiçao)
Lista 7 - DoWhileSample.java
public class DoWhileSample {
public static void main( String args[] ) {
int a = 0;
do {
System.out.println("Variavel a e "+a+" .");
a++;
} while ( a < 100 );
}
}
18
int i;
for ( i = 0; i < 1000; i++ ) {
System.out.println(i);
if ( i == 1 ) break; // interrompe o ciclo for
}
Continue: faz com que o ciclo seja novamente iterado sem que sejam executadas as restantes
instruções do corpo do ciclo. O resultado da execução do exemplo seguinte é a impressão de
valores impares.
int i;
for ( i = 0; i < 1000; i++ ) {
if ( (i % 2) == 0 ) continue;
System.out.println(i);
}
int i = 1;
for ( i = 1; i <= 10; i++ ) {
System.out.println(i);
return; // termina a execução do bloco (ciclo) for
}
System.out.println("Aqui e fora da frase for.");
}
4 ARRAYS
Um array é um tipo de dados de referencia (não primitivo). Um array é uma variável que serve
para guardar vários elementos em geral do mesmo tipo.
A B C D F
A figura acima é um array de caracteres com dimensão 5. cada elemento de um array pode ser
acedido através do respectivo índice que indica a posição em que este elemento se encontra. É
preciso notar que o primeiro elemento do array tem sempre o índice zero. Para o caso da figura
acima o índice de “A” será 0 e o índice de “F” é 4.
Declaração do array
Criação de um novo objecto do tipo array que é o mesmo que assignar memória ao array
Ex. C=new int[12] cria um array de 12 elementos. Em geral o array é inicializado com
valores default do tipo declarado. Neste caso é inicializado com 0 (zero)
19
A seguinte declaração também é possível
Float b[]={12.9,14.5,16.5,18.95,23.0}
Ex. B[2]=20.5;
System.out.println(“”+b[2]);
Será armazenado no indece 2( posição 3) o valor 20.5 que a seguir será impresso através da
instrução system.out. print ln...
exemplo
Lista 1 – TesteDeArray.java
class TesteDeArray {
public static void main(String[] args) {
int[] tels;
tels = new int[5];
tels[0] = 824056224;
tels[1] = 821111110;
tels[2] = 821231231;
System.out.println("Numero1 " + tels [0]);
}
}
Lista 2 – ArraySample.java
class ArraySample {
public static void main(String[] args) {
int[] pequeno = new int[5];
int[] grande = new int[6];
//Inicializacao
for (int i = 0; i < pequeno.length; i++) {
pequeno[i] = i;
grande[i] = i*10;
}
//Exibicao
System.out.print("pequeno: "); exbArray(pequeno);
System.out.print("grande: "); exbArray(grande);
20
grande[5] = pequeno[2];
System.out.print("pequeno: "); exbArray(pequeno);
System.out.print("grande: "); exbArray(grande);
pequeno = grande;
System.out.print("pequeno: "); exbArray(pequeno);
System.out.print("grande: "); exbArray(grande);
grande[1] = 100;
System.out.print("pequeno: "); exbArray(pequeno);
System.out.print("grande: "); exbArray(grande);
}
//Funcao para mostrar conteudos de array
21