Código binário para windows
Código binário para linux
Sistema Operacional Windows
Sistema Operacional Linux
Temos um código executável para cada sistema operacional. É necessário compilar uma vez para Windows, outra para o Linux, e assim por diante, caso a gente queira que esse nosso software possa ser utilizado em várias plataformas.
Código binário para Windows
Código binário para linux
Máquina Virtual Java
Sistema Operacional Windows
Sistema Operacional Linux
public class Hello World {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}Produzem novos valores a partir de um ou mais valores. O resultado da
maioria das operações é um valor boleano ou numérico.
int x = 21;
int y = 21;
if(x == y){
System.out.println("O Valor de x é igual ao valor de Y");
}int x = 5;
int y = 7
++x;
System.out.println("Pré incremento");
x++;
System.out.println("Pós incremento");
--y;
System.out.println("Pré decremento");
y--;
System.out.println("Pós decremento");
tipoDaVariavel nomeDaVariavel;
int idade;
idade = 15;
System.out.println(idade);double d = 3.1415;
int i = d;
//Será que compila??
double d = 5;
int i = d;
// E agora?
int i = 5;
double d2 = i;double d3 = 3.14;
int i = (int) d3;
long x = 10000;
int i = (int) x;
if (condicaoBooleana) {
codigo;
}int idade = 15;
if (idade < 18) {
System.out.println("Não pode entrar");
}int idade = 15;
if (idade < 18) {
System.out.println("Não pode entrar");
} else {
System.out.println("Pode entrar");
}int idade = 15;
boolean amigoDoDono = true;
if (idade >= 18 || amigoDoDono == true) {
System.out.println("Pode entrar");
}
else {
System.out.println("Não pode entrar");
}int menu = 0;
switch(menu){
case 1 : System.out.println("Últimas ligações"); break;
case 2 : System.out.println("Ligações perdidas"); break;
case 3 : System.out.println("Configurações"); break;
case 4 : System.out.println("Vídeos / Imagens"); break;
default : System.out.println("Mensagens"); break;int idade = 15;
while (idade < 18) {
System.out.println(idade);
idade = idade + 1;
}int x = 0;
do {
System.out.println("Loop do While");
x++;
} while (x < 5);for (int i = 0; i < 10; i = i + 1) {
System.out.println("olá!");
}for (int i = x; i < y; i++) {
if (i % 19 == 0) {
System.out.println("Achei um número divisível por 19 entre x e y");
break;
}
}public class Conta {
int numero;
String dono;
double saldo;
double limite;
}public class Programa {
public static void main(String[] args) {
Conta minhaConta;
minhaConta = new Conta();
minhaConta.dono = "Duke";
minhaConta.saldo = 1000.0;
System.out.println("Saldo atual: " + minhaConta.saldo);
}
}public class Conta {
int numero;
String dono;
double saldo;
double limite;
void saca(double valor) {
double novoSaldo = this.saldo - valor;
this.saldo = novoSaldo;
}
}public class Conta {
int numero;
String dono;
double saldo;
double limite;
void saca(double valor) {
double novoSaldo = this.saldo - valor;
this.saldo = novoSaldo;
}
void deposita(double quantidade) {
this.saldo += quantidade;
}
}public class Programa {
public static void main(String[] args) {
// criando a conta
Conta minhaConta;
minhaConta = new Conta();
// alterando os valores de minhaConta
minhaConta.dono = "Duke";
minhaConta.saldo = 1000;
// saca 200 reais
minhaConta.saca(200);
// deposita 500 reais
minhaConta.deposita(500);
System.out.println(minhaConta.saldo);
}
}public class Conta {
int numero;
String dono;
double saldo;
double limite;
boolean saca(double valor) {
if (this.saldo < valor) {
return false;
} else {
this.saldo = this.saldo - valor;
return true;
}
}
void deposita(double quantidade) {
this.saldo += quantidade;
}
}public static void main(String args[]) {
Conta c1;
c1 = new Conta();
Conta c2;
c2 = new Conta();
}class TestaReferencias {
public static void main(String args[]) {
Conta c1 = new Conta();
c1.deposita(100);
Conta c2 = c1; // linha importante!
c2.deposita(200);
System.out.println(c1.saldo);
System.out.println(c2.saldo);
}
}public static void main(String args[]) {
Conta c1 = new Conta();
c1.dono = "Duke";
c1.saldo = 227;
Conta c2 = new Conta();
c2.dono = "Duke";
c2.saldo = 227;
if (c1 == c2) {
System.out.println("Contas iguais");
}
}public class TestaCarro {
public static void main(String[] args){
Carro meuCarro = new Carro();
meuCarro.cor = "Verde";
meuCarro.modelo = "Fusca";
meuCarro.velocidadeAtual = 25;
meuCarro.velocidadeMaxima = 120;
//liga o carro
meuCarro.liga();
//acelera o carro
meuCarro.acelera(35);
System.out.println("O carro está com: " +meuCarro.velocidadeAtual+" km/h");
//Marcha do Carro
meuCarro.pegaMarcha();
}
}int idade1;
int idade2;
int idade3;
int idade4;int[] idades;idades = new int[10];
//acessando a posição do array
idades[5] = 10;Conta[] minhasContas;
minhasContas = new Conta[10];
// também pode ser desse jeito
Conta[] minhasContas = new Conta[10];public static void main(String args[]) {
int[] idades = new int[10];
for (int i = 0; i < 10; i++) {
idades[i] = i * 10;
}
for (int i = 0; i < 10; i++) {
System.out.println(idades[i]);
}
}public static void main(String args[]) {
int[] idades = new int[10];
for (int i = 0; i < 10; i++) {
idades[i] = i * 10;
}
// imprimindo toda a array
for (int x : idades) {
System.out.println(x);
}
}Scanner input = new Scanner(System.in);
String nome;
int idade;
System.out.println("Digite o seu nome: ");
nome = input.nextLine(); // armazena o primeiro número digitado pelo usuário
System.out.println("Digite a sua idade: ");
idade = input.nextInt(); // armazena o primeiro número digitado pelo usuário
| Tipos de variáveis | Métodos |
|---|---|
| float numF | input.nextFloat(); |
| int num1 | input.nextInt(); |
| byte byte1 | input.nextByte(); |
| long lg1 | input.nextLong(); |
| boolean b1 | input.nextBoolean(); |
| double num2 | input.nextDouble(); |
| String nome | input.nextLine(); |
import java.util.Scanner;import java.util.Scanner;
public class Cadastro {
public static void main(String[] args) {
//cria un Scanner para obter entrada a partir da janela de comando
Scanner input = new Scanner(System.in);
String nome;
int idade;
System.out.println("Digite o seu nome: ");
nome = input.nextLine(); // armazena o primeiro número digitado pelo usuário
System.out.println("Digite a sua idade: ");
idade = input.nextInt(); // armazena o primeiro número digitado pelo usuário
System.out.println("A idade de "+nome+" é "+idade+" anos.");
}
}
public class Produto {
}
class Funcionario {
private double salario ;
void aumentaSalario ( double aumento ) {
// lógica para aumentar o salário
}
}class Conta {
private double saldo;
private double limite;
private Cliente titular;
public double getSaldo() {
return this.saldo;
}
public void setSaldo(double saldo) {
this.saldo = saldo;
}
public double getLimite() {
return this.limite;
}
public void setLimite(double limite) {
this.limite = limite;
}
public Cliente getTitular() {
return this.titular;
}
public void setTitular(Cliente titular) {
this.titular = titular;
}
}class Conta {
int numero;
Cliente titular;
double saldo;
double limite;
// construtor
Conta() {
System.out.println("Construindo uma conta.");
}
}class Conta {
int numero;
Cliente titular;
double saldo;
double limite;
// construtor
Conta(Cliente titular) {
this.titular = titular;
}
}Cliente carlos = new Cliente();
carlos.nome = "Carlos";
Conta c = new Conta(carlos);
System.out.println(c.titular.nome);Classe mãe
Classe filha
class Funcionario {
String nome;
String cpf;
double salario;
}class Gerente extends Funcionario {
int senha;
int numeroDeFuncionariosGerenciados;
public boolean autentica(int senha) {
if (this.senha == senha) {
System.out.println("Acesso Permitido!");
return true;
} else {
System.out.println("Acesso Negado!");
return false;
}
}
}class Funcionario {
protected String nome;
protected String cpf;
protected double salario;
}class Gerente extends Funcionario {
int senha;
int numeroDeFuncionariosGerenciados;
public double getBonificacao() {
return this.salario * 0.15;
}
}public interface FiguraGeometrica
{
public String getNomeFigura();
public int getArea();
public int getPerimetro();
}package sistema.contas;
public class Conta {
// corpo da classe
}package sistema.contas;
public class Conta {
// corpo da classe
}package sistema.contas;
class ContaPoupanca extends Conta {
// corpo da classe
}package sistema.contas;
public class Conta {
// corpo da classe
}package sistema.clientes ;
public class Cliente {
private sistema.contas.Conta conta;
}package sistema.clientes;
import sistema.contas.Conta;
public class Cliente {
private Conta conta;
}Java fornece aos desenvolvedores um mecanismo
sofisticado para manipulação de erros que produz códigos de manipulação eficientes e organizados: a manipulação de exceções.
É pré-definida na linguagem Java, acompanhado de várias outras classes definindo um grande número de categorias de erro.
Os programadores Java, por convenção, caso queiram criar exceções devem estender a classe Exception que é uma subclasse de Throwable.
Throwable
Exception
Error
RuntimeException
IOException
NullPointerException
ClassCastException
FileNotFoundException
ArrayIndexOutOfBoundsException
class Teste {
public static void main ( String [] args ) {
Conta c = new Conta();
try {
c.deposita (100);
} catch ( IllegalArgumentException e) {
System . out. println (" Houve um erro ao depositar ");
}
}
}http://www.devmedia.com.br/trabalhando-com-excecoes-em-java/27601
class MinhaClasse {
}public class MinhaClasse extends Object {
}List lista = new ArrayList();
lista.add("Manoel");
lista.add("Joaquim");
lista.add("Maria");ContaCorrente c1 = new ContaCorrente();
c1.deposita(100);
ContaCorrente c2 = new ContaCorrente();
c2.deposita(200);
ContaCorrente c3 = new ContaCorrente();
c3.deposita(300);
List contas = new ArrayList();
contas.add(c1);
contas.add(c3);
contas.add(c2);
System.out.println(contas.size());
for (int i = 0; i < contas.size(); i++) {
ContaCorrente cc = (ContaCorrente) contas.get(i);
System.out.println(cc.getSaldo());
}ContaCorrente cc = new ContaCorrente();
List lista = new ArrayList();
lista.add("Uma string");
lista.add(cc);List<ContaCorrente> contas = new ArrayList<ContaCorrente>();
contas.add(c1);
contas.add(c3);
contas.add(c2);List<String> lista = new ArrayList<>();
lista.add("Sérgio");
lista.add("Paulo");
lista.add("Guilherme");
System.out.println(lista);
Collections.sort(lista);
System.out.println(lista);ContaCorrente c1 = new ContaCorrente();
c1.deposita(500);
ContaCorrente c2 = new ContaCorrente();
c2.deposita(200);
ContaCorrente c3 = new ContaCorrente();
c3.deposita(150);
List<ContaCorrente> contas = new ArrayList<>();
contas.add(c1);
contas.add(c3);
contas.add(c2);
Collections.sort(contas);public class ContaCorrente extends Conta implements Comparable<ContaCorrente> {
ContaCorrente c1 = new ContaCorrente();
c1.deposita(500);
ContaCorrente c2 = new ContaCorrente();
c2.deposita(200);
ContaCorrente c3 = new ContaCorrente();
c3.deposita(150);
List<ContaCorrente> contas = new ArrayList<>();
contas.add(c1);
contas.add(c3);
contas.add(c2);
Collections.sort(contas);
public int compareTo(ContaCorrente outra) {
if (this.saldo < outra.saldo) {
return -1;
}
if (this.saldo > outra.saldo) {
return 1;
}
return 0;
}
}import java.util.HashSet;
import java.util.Set;
public class Cargos {
public static void main(String[] args) {
Set<String> cargos = new HashSet<>();
cargos.add("Gerente");
cargos.add("Diretor");
cargos.add("Presidente");
cargos.add("Secretária");
cargos.add("Funcionário");
cargos.add("Diretor"); // repetido!
// imprime na tela todos os elementos
System.out.println(cargos);
}
}import java.util.ArrayList;
import java.util.List;
public class Lista {
public static void main(String[] args) {
List lista = new ArrayList();
lista.add("Manoel");
lista.add("Joaquim");
lista.add("Maria");
lista.add("João");
lista.add("Raimundo");
lista.add("José");
lista.add("Francisco");
for (int i = 0; i < lista.size(); i++) {
System.out.println(lista.get(i));
}
}
}import java.util.HashSet;
import java.util.Set;
public class Linguagem {
public static void main(String[] args) {
Set<String> conjunto = new HashSet<>();
conjunto.add("Java");
conjunto.add("PHP");
conjunto.add("Vraptor");
conjunto.add("Scala");
conjunto.add("Ruby");
conjunto.add("Angular");
for(String palavra : conjunto){
System.out.println(palavra);
}
}
}
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class Lista2 {
public static void main(String[] args) {
Set<String> lista = new HashSet<>();
lista.add("Manoel");
lista.add("Joaquim");
lista.add("Maria");
lista.add("João");
lista.add("Raimundo");
lista.add("José");
lista.add("Francisco");
Iterator<String> i = lista.iterator();
while (i.hasNext()) {
// recebe a palavra
String palavra = i.next();
System.out.println(palavra);
}
}
}ContaCorrente c1 = new ContaCorrente();
c1.deposita(10000);
ContaCorrente c2 = new ContaCorrente();
c2.deposita(3000);
// cria o mapa
Map<String, ContaCorrente> mapaDeContas = new HashMap<>();
// adiciona duas chaves e seus respectivos valores
mapaDeContas.put("diretor", c1);
mapaDeContas.put("gerente", c2);
ContaCorrente contaDoDiretor = mapaDeContas.get("diretor");
System.out.println(contaDoDiretor.getSaldo());Properties config = new Properties();
config.setProperty("database.login", "scott");
config.setProperty("database.password", "tiger");
config.setProperty("database.url","jdbc:mysql:/localhost/teste");
String login = config.getProperty("database.login");
String password = config.getProperty("database.password");
String url = config.getProperty("database.url");
DriverManager.getConnection(url, login, password);JFrame frame = new JFrame ("UTD - Java com Banco de Dados");
frame.setSize (300 , 200);
frame.setVisible (true);JFrame frame = new JFrame ("UTD - Java com Banco de Dados");
JPanel panel = new JPanel ();
frame.setContentPane (panel);JFrame frame = new JFrame ("UTD - Java com Banco de Dados");
frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel ();
JLabel rotulo = new JLabel ();
rotulo.setText ("Nome: ");
panel.add (rotulo);
JTextField textField = new JTextField (40);
panel.add (textField);
frame.setContentPane (panel);
frame.pack ();
frame.setVisible (true);import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class Teste {
public static void main ( String [] args ) {
JFrame frame = new JFrame ("UTD - Login");
frame.setDefaultCloseOperation ( JFrame . EXIT_ON_CLOSE );
JPanel panel = new JPanel ();
JLabel label1 = new JLabel ("Usuário: ");
JTextField textField = new JTextField (20) ;
JLabel label2 = new JLabel ("Senha: ");
JPasswordField passwordField = new JPasswordField (20) ;
JButton button = new JButton ("Logar");
panel.add (label1);
panel.add (textField);
panel.add (label2);
panel.add (passwordField);
panel.add (button);
frame.setContentPane (panel);
frame.pack ();
frame.setVisible (true);
}
}import javax.swing.*;
import java.awt.*;
public class TestBorder{
public static void main(String args[]){
JFrame tela = new JFrame("Combo");
tela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
tela.setVisible(true);
//criando botões
JButton botao01 = new JButton("Botão 01");
JButton botao02 = new JButton("Botão 02");
JButton botao03 = new JButton("Botão 03");
JButton botao04 = new JButton("Botão 04");
JButton botao05 = new JButton("Botão 05");
//adicionando os componentes na tela
tela.getContentPane().add(botao01, BorderLayout.NORTH);
tela.getContentPane().add(botao02, BorderLayout.CENTER);
tela.getContentPane().add(botao03, BorderLayout.WEST);
tela.getContentPane().add(botao04, BorderLayout.SOUTH);
tela.getContentPane().add(botao05, BorderLayout.EAST);
tela.pack();
}
}import javax.swing.*;
import java.awt.*;
public class TestLayout extends JFrame{
public LayoutTest(){
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
//criando botões
JButton botao01 = new JButton("Botão 01");
JButton botao02 = new JButton("Botão 02");
JButton botao03 = new JButton("Botão 03");
JButton botao04 = new JButton("Botão 04");
JButton botao05 = new JButton("Botão 05");
getContentPane().add(panel);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
pack();
}
public static void main(String args[]){
new LayoutTest();
}
}import javax.swing.*;
import java.awt.*;
public class TestLayout extends JFrame{
public LayoutTest(){
JPanel panel = new JPanel();
//criando botões
JButton botao01 = new JButton("Botão 01");
JButton botao02 = new JButton("Botão 02");
JButton botao03 = new JButton("Botão 03");
JButton botao04 = new JButton("Botão 04");
JButton botao05 = new JButton("Botão 05");
panel.add(botao01);
panel.add(botao02);
panel.add(botao03);
panel.add(botao04);
panel.add(botao05);
getContentPane().add(panel);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
pack();
}
public static void main(String args[]){
new LayoutTest();
}
}Organiza os componentes em um grid (tabela) com várias linhas e colunas (podemos definir no construtor).
import java.awt.*;
import javax.swing.*;
public class ExemploGridLayout {
public static void main(String[] args){
//Criaremos alguns botões
JButton bt1 = new JButton("Botão 1");
JButton bt2 = new JButton("Botão 2");
JButton bt3 = new JButton("Botão 3");
JButton bt4 = new JButton("Botão 4");
JFrame minhaJanela = new JFrame("Exemplo de GridLayout");
minhaJanela.setSize(400,400);
minhaJanela.setLocation(100,100);
minhaJanela.getContentPane().setLayout(new GridLayout(2,2));
minhaJanela.getContentPane().add(bt1);
minhaJanela.getContentPane().add(bt2);
minhaJanela.getContentPane().add(bt3);
minhaJanela.getContentPane().add(bt4);
minhaJanela.setVisible(true);
}
}class TestaEntrada {
public static void main(String[] args) throws IOException {
InputStream is = new FileInputStream("arquivo.txt");
int b = is.read();
}
}AudioInputStream
FileInputStream
ObjectInputStream
ByteArrayOutputStream
FileOutputStream
ObjectOutputStream
OutputStream console = System.out ;
PrintStream printStream = new PrintStream (console) ;
printStream.println ("Java com Banco de Dados");
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class CapturaEventoBotao implements ActionListener {
private JButton botao;
public void janela(){
JFrame frame = new JFrame();
botao = new JButton();
//REGISTRA O EVENTO
botao.addActionListener(this);
frame.getContentPane().add(botao);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300,100);
frame.setVisible(true);
}
@Override
public void actionPerformed(ActionEvent evento) {
botao.setText("Botão foi clicado!");
//ALTERA A FONTE
botao.setFont(new Font("SansSerif", Font.BOLD, 20));
}
public static void main(String[] args) {
CapturaEventoBotao captura = new CapturaEventoBotao();
captura.janela();
}
}NomeDaClasse
+ Atributo1
- Atributo2
# Atributo3
+ Método1
- Método2
Atores
São softwares que gerenciam o banco de dados em si.
Armazena, manipula e recupera dados unicamente estruturados na forma de tabelas.
Também denominado NoSQL.
A grande vantagem/desvantagem consiste que não podem exigir esquemas de tabela fixa e, geralmente, não suportam instruções e operações de junção SQL.
Bancos de dados NoSQL armazenam os dados com técnicas que visam oferecer escalabilidade horizontal como a computação nas nuvens e a demanda das grandes empresas da internet dos dias atuais.
mysql -h localhost -u root -p
mysql - evocamos o servidor
-h - dizemos que o próximo dado é referente ao host
localhost - informamos o o host
-u - dizemos que o próximo dado é referente ao usuário
root - informamos o usuário
-p - dizemos que o próximo dado é referente a senha
);
INSERT INTO cadastroAluno(codigo, nome, email) VALUES (null, “Ricardo”, “ricoarrigoni@gmail.com”) ; INSERT INTO cadastroAluno(codigo, nome, email) VALUES (null, “João”, “joao@gmail.com”) ; INSERT INTO cadastroAluno(codigo, nome, email) VALUES (null, “Maria”, “maria@gmail.com”) ;
SELECT * FROM cadastroAluno;
Todos os registros da tabela foram retornados. Isso se deu porque o uso do SELECT * faz com que a consulta retorne todos os valores da tabela.
SELECT email FROM cadastroAluno;
Se quisermos que os registros retornados venham ordenados, nós podemos usar o comando ORDER BY, basta dizer pelo que você quer ordenar que ele traz o registro ordenadoTodos os registros da tabela foram retornados.
SELECT * FROM cadastroAluno ORDER BY nome asc;
Para alterar um registro, usamos o comando update, com ele é possível editar os campos de sua tabela e colocar outro valor neles.
UPDATE cadastroAluno SET nome=”Ricardo Arrigoni” WHERE codigo=1;
Responsável por remover todo e qualquer registro do bando de dados.
DELETE FROM cadastroAluno WHERE codigo=3;
Muitos sistemas precisam manter as informações com as quais eles trabalham.
permitir consultas futuras;
geração de relatórios;
possíveis alterações nas informações.
Processo de armazenamento de dados.
JDBC é a biblioteca de persistência em banco de dados relacionais do Java.
Existem diversas ferramentas do tipo ORM (Object Relational Mapping) que facilitam bastante o uso do JDBC.
Necessidade de dois computadores se comunicarem, existe diversos protocolos que permite a troca de informação: o protocolo mais famoso é TCP (Transmission Control Protocol).
Com TCP épossível criar um fluxo entre dois computadores.
A vantagem de se usar TCP, em vez de criar nosso próprio protocolo de bytes, é que o TCP vai garantir a entrega dos pacotes que transferirmos e criar um protocolo base para isto é algo bem complicado.
Como é possível se conectar a dois pontos? Como é possível ser conectado por diversos pontos?
O IP identifica uma máquina, a porta é a solução para identificar diversas aplicações em uma máquina. Se todas as portas de uma máquina estiverem ocupadas, não é possível se conectar a ela enquanto nenhuma for liberada.
É um conector entre a aplicação e o SGBD.
a ela como JDBC.
Entre as diversas interfaces deste pacote, existe a interface Connection que define métodos para executar uma query (como um insert e select), comitar transação e fechar a conexão, entre outros. Caso queiramos trabalhar com o MySQL, precisamos de classes concretas que implementem essas interfaces do pacote java.sql.
Todos os principais bancos de dados do mercado possuem drivers JDBC para que você possa utilizá-los com Java.
@Entity
class Estado {
@Id
@GeneratedValue
private Long id;
@OneToOne
private Governador governador;
}