Antes de tudo, clique nos links ai do lado, e entre aqui e clique no banner.
Introdução:
- Java é uma linguagem de programação de compilador, uma API(Application Programing Interface) e uma máquina virtual.
- A API Java é uma coleção de pacotes, cada pacote é uma coleção de classes compiladas. A API que acompanha o JDK(Java Development Kit) é bastante grande, o pacote de classes para programação de entrada/saída (inclúi arquivos), estruturas de dados, funções matemáticas, comunicação via rede, interfaces gráficas, acesso a banco de dados, persistência de objetos, programação distribuída, gráficos 2d e 3d, reflexão computacional, web, entre muitas outras. Antes de tentar escrever uma nova classe, procure na API.
- A máquina virtual Java(JVM, Java Virtual Machine) é um programa responsável pela carga de um arquivo Java compilado e pela execução do código objeto desse arquivo.
- Java é dito independente de plataforma e arquitetura porque um "programa" Java é executado por outro programa que é a JVM. Então a independência só ocorre se houver uma JVM disponível para determinada plataforma de arquitetura.
- Java é compilada e interpretada. O compilador Java toma como entrada um programa fonte, codificada em uma arquivo texto, com a extensão ".java" e gera como saída um arquivo com o mesmo nome mas com extensão ".class". Este arquivo contém o código objeto gerado pelo compilador o qual consiste de uma sequência de bytes, cada byte representando uma operação que pode ou não ter outros bytes da sequência como argumentos. Esta sequência de bytes, é chamada de "bytecode". Cada método em uma classe em Java terá o seu bytecode no arquivo ".class". A JVM carrega o arquivo ".class" e interpreta o bytecode.
- Um arquivo ".java" é denominado unidade de compilação. Em uma unidade de compilação podem ser declarados na ordem:
- 1- Importação de classes(opcional)
2-Tipos dos quais podem ser classes ou interfaces
- Uma declaração de classe em Java obedece a seguinte sintaxe:
DeclaraçãoDeClasse:
("MODIFICADOR")* "class" "ID' ("EXTENDS" Nome) ?
"{"
(Membro)*
"}"
onde
-MODIFICADOR pode ser uma das seguintes palavras reservadas
- public, indicando que a visibilidade da classe é pública, ou seja, pode ser acessada de qualquer outra unidade de compilação(se omitido a visibilidade da classe é restrita a sua unidade de compilação)
- abstract, indicando que a classe é abstrata.
- final, indicando que a classe não pode ser derivada, ou seja, não poe ser superclasse de outra.
-
class
-ID, é qualquer modificador em Java.
-EXTENDS, é a palavra reservada "extends", a qual se presente deve ser seguida do nome da superclasse sendo declarada. Em Java apenas herança simples é admitida. Se a superclasse não for especificada a classe sendo declarada deriva implicitamente da classe Object. O nome de uma superclasse pode ser qualificado. Um nome qualificado em Java é definido pela seguinte sintaxe:
Nome:
- "ID" ( "." "ID")*
-Membro, pode ser um atributo, um construtor, um método ou uma classe interna. Em Java não há destrutor: todo objeto que não pode ser alcançado pela JVM é automáticamente destruído pelo coletor de lixo da máquina virtual.
- A declaração de uma classe define um novo tipo em relação de tipos primitivos da linguagem.
int (inteiro com sinal de 32 bits)
short (inteiro com sinal de 16 bits)
byte (inteiro com sinal de 8 bits)
long (inteiro com sinal de 64 bits)
float (real de 32 bits)
double (real de 64 bits)
boolean (
true ou
false)
char (caracter unicode de 2 bytes)
Além destes a palavra reservada void é usada na declaração de métodos que não possuem valor de retorno.
- Além de classes e tipos primitivos, outros tipos podem ser definidos através de vetores uni ou multidimensionais. Por exemplo, o tipo int[] representa o tipo vetor de inteiros e X[][] representa o tipo vetor de vetor de objetos da classe X. Em Java, uma instância de um tipo vetorado é um objeto daquele tipo, ou seja, um vetor em Java é um objeto.