Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INTRODUO:
SADA:
package testes; //o pacote sempre deve ser especificado.
public class Teste {
public static void main(String[] args) {
System.out.print("Hello World !");
}
}
Caracteres de escape:
\t tabulao.
\ imprimi uma aspa dupla.
\\ - imprimi uma barra.
\n - quebra de linha.
VARIVEIS:
Tipos primitivos:
int
float
double
char boolean
void
long short
byte
Todos os tipos no primitivos so tipos por referncia.
Ex: String e outras classes.
Casting:
int x, y;
double a = (double)x/y; //fora 'x' ser do tipo 'double'.
...
Scanner input = new Scanner(System.in); //instancia a classe 'Scanner' em 'input'.
int a = input.nextInt(); //'a' recebe o retorno do mtodo 'nextInt'.
// Ou:
System.out.println(input.nextFloat()); //imprimi o retorno de 'nextFloat'.
OPERADORES:
Aritmticos: * + - / %
Incremento e decremento: ++ -Condicionais:
&& || == != !
Relacionais: < > <= >=
Condicionais:
if else
switch
operador condicional(?)
Repetio:
while
do while
for
VETORES OU ARRAYS:
double[] notas = new double[20]; //cria um vetor de 20 posies em 'notas'.
String[] cores = {"azul", "verde", "vermelho", "preto"};
//cria um vetor de strings de 4 posies.
VETORES MULTIDIMENSIONAIS:
double[][] x = new double[3][3]; //cria uma matriz de 2 dimenses.
double[][] x = {
{10, 2.3, 5.6},
{4.7, 1.3, 6.123},
{17, 5.698, 12.7}
}; //cria e inicializa uma matriz de 2 dimenses.
ESTRUTURA ArrayList:
RTULOS:
CLASSES Wrapper:
Pode-se criar invlucros de tipos primitivos com essas classes, que permitem
vrias operaes.
Double preco = new Double("12.45"); //cria um objeto 'Double' e inicializa.
int i = preco.intValue(); //converte o valor de 'preco' para int.
byte b = preco.byteValue(); //converte para 'byte'
//converso esttica...
double d = Double.parseDouble("123.5"); //converte a string para 'double'.
int i2 = Integer.parseInt("123");
//converso de bases...
int i3 = Integer.valueOf("10011", 2); //converte a string que est na base 2.
MTODOS:
MODIFICADORES DE ACESSO:
:
:
:
:
MODIFICADOR static:
MTODOS SOBRECARREGADOS:
CONSTRUTORES:
COMPOSIO:
HERANA:
Uma classe pode herdar os atributos e mtodos de outra classe, nesse caso, a
classe que herda chamada de subclasse e a classe pai de superclasse.
A palavra-chave extends seguida do nome da classe pai faz com que a
subclasse possa utilizar todos os componentes da superclasse.
- superclasse:
public class Funcionario{
String nome;
double salario;
int horasTrabalho;
public void receberPagamento(double salario){
this.salario = salario;
}
public double calcularSalario(){
//cdigo...
}
}
- subclasse:
public class Gerente extends Funcionario{
public void pagarFuncionario(Funcionario f){
f.salario += f.calcularSalario();
}
Todas as classes, por padro, estendem da classe Object que possui alguns
mtodos como:
novo.equals(outro); //compara as informaes de dois objetos.
POLIMORFISMO:
//cdigo...
}
Classes abstratas, assim como seus mtodos abstratos, servem para ganhar
em polimorfismo, j que existe a garantia de que toda classe concreta que
estender dela ter seus mtodos abstratos implementados.
POLIMORFISMO interfaces:
Interfaces padronizam como objetos podem interagir entre si, ela especifica
quais operaes devem ser realizadas, mas no como devem ser realizadas.
como um contrato que uma classe assume para ter um determinado status,
e para cumpri-lo ter que especificar todos os mtodos pr-definidos.
Uma interface utilizada em classes no relacionadas torna mtodos e
constantes
comuns
a
elas,
permitindo
que
sejam
processadas
polimorficamente.
public interface Pagavel{
double valor;
}
double calcularPagamento();
TRATAMENTO DE EXCEES:
Podem existir vrios catch para diferentes tipos de erros, ou usar o multi
catch (para excees com o mesmo tratamento):
try{
//execuo normal...
}catch(Exceo1 | Exceo2 | Exceo3 nomeExcees){
//tratamento...
}
stackTrace: Pilha de erros, ou seja, uma lista de todos os erros que podem se
propagar durante a execuo de um bloco de instrues. Permite algumas
operaes como:
nome.printStackTrace(); //imprimi a pilha de erros.
nome.getStackTrace(); //retorna uma array de erros.
nome.getMessage();//retorna a msg passada no construtor da exceo.
//chamada em um mtodo...
public static void nomeMetodo() throws NomeException{
if(...){
//normal
}else
throw new NomeException(); //lana a exceo.
STRINGS:
ARQUIVOS:
java.nio.file.Path,
java.nio.file.Paths
w = Files.newBufferedWriter(p, utf8);
w.write("Texto"); //escreve no arquivo.
w.flush(); //passa o contedo do buffer para o arquivo.
}catch(IOException e){
e.printStackTrace();
}finally{
if(w != null)
w.close(); //fecha o arquivo.
Outras operaes:
Path path = Paths.get("C:/.../texto.txt");
Files.exists(path); //retorna se o caminho existe.
Files.isDirectory(path); //retorna se o caminho um diretrio.
Files.isRegularFile(path); //se um arquivo regular.
Files.isReadable(path); //se o arquivo pode ser lido.
Files.isExecutable(path); //se o arquivo pode ser executado.
Files.size(path); //retorna o tamanho do arquivo.
Files.getLastModifiedTime(path); //retorna a ltima vez que foi modificado.
Files.getOwner(path); //retorna o dono do arquivo.
Files.probeContentType(path); //retorna o tipo do arquivo.
//delete...
Path path = Paths.get("C:/.../texto.txt");
Files.delete(path);
/* pode lanar a exceo 'NosuchFileException' se o arquivo no existir
* ou a exceo 'DirectoryNotEmptyException' se o arquivo no estiver vazio.
*/
Files.deleteIfExists(path); //s deleta se o arquivo existir.
//create..
Files.createFile(path); //cria um arquivo vazio.
Files.write(path, "Texto".getBytes());
//copy...
Path copia = Paths.get("C:/.../texto.txt");
Files.copy(path, copia, StandardCopyOption.REPLACE_EXISTING);
//copia se o arquivo existir.
//move...
Path mover = Paths.get("C:/.../texto.txt");
Files.createDirectories(mover.getParent());
SERIALIZAO DE OBJETOS:
CLASSE Math:
/* para mysql */
con = DriverManager.getConnection("jdbc:mysql://localhost/bdteste", "root", "");
Statement st = con.createStatement(); //cria a statement.
String cmd = "COMANDO SQL";
st.executeUpdate(cmd); //pra comandos que alteram os dados.
st.executeQuery(cmd); //para comandos de pesquisa.
st.close(); //fecha a statement.
OBS.: adicionar o conector do SGBD na build path do projeto.