DOC

aula23 java - conceitos e programas exemplodoc

By Victoria Ramos,2014-04-24 14:46
6 views 0
aula23 java - conceitos e programas exemplodoc

aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

    Aula 23 Java conceitos e programas exemplo

    Um pequeno resumo de algumas características principais do Java. Vejamos alguns exemplos do livro:

    “Aprendendo Java 2”

    Mello, Chiara e Villela

    Novatec Editora Ltda. www.novateceditora.com.br

    Outras referências para o aprendizado da linguagem Java na Internet:

Livro on-line:

    Bruce Eckel

    Thinking in Java, 3rd Edition, Prentice-Hall, 2002.

     na Internet

Tutorial do Java:

    na Internet

0. Um programa bem simples

    Considere o seguinte programa: Dados 2 números, calcular a soma. Veja a solução abaixo:

// Simples.java

    public class Simples extends Object

    {

     public Simples() throws Exception

     {

     // declarações

     byte dado[] = new byte[100];

     int i, j, k;

     // leitura de i

     System.out.println("\nEntre com o valor de i:");

     // leitura do dado do teclado

     System.in.read(dado);

     // conversão para String

     String x = new String(dado);

     // conversão de String para inteiro e atribuição

     i = (new Integer(x.trim())).intValue();

     // leitura de j

     System.out.println("\nEntre com o valor de j:");

     // leitura do dado do teclado

     System.in.read(dado);

     // conversão para String

     x = new String(dado);

     // conversão de String para inteiro e atribuição

     j = (new Integer(x.trim())).intValue();

     // calcula a soma

    aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

     k = i+j;

     // imprime o resultado

     System.out.println("\nValor da soma:" + k);

     }

public static void main(String args[]) throws Exception { Usando a terminologia do C, o programa acima tem uma função chama Simples() e Simples t = new Simples(); um programa principal cujo único comando é a chamada da função. }

    }

    Podemos fazê-lo também só com o programa principal. Veja abaixo:

// Simples1.java

    public class Simples1 extends Object

    {

     public static void main (String args[]) throws Exception

     {

     // declarações

     byte dado[] = new byte[100];

     int i, j, k;

     // leitura de i

     System.out.println("\nEntre com o valor de i:");

     // leitura do dado do teclado

     System.in.read(dado);

     // conversão para String

     String x = new String(dado);

     // conversão de String para inteiro e atribuição

     i = (new Integer(x.trim())).intValue();

     // leitura de j

     System.out.println("\nEntre com o valor de j:");

     // leitura do dado do teclado

     System.in.read(dado);

     // conversão para String

     x = new String(dado);

     // conversão de String para inteiro e atribuição

     j = (new Integer(x.trim())).intValue();

     // calcula a soma

     k = i+j;

     // imprime o resultado

     System.out.println("\nValor de i:” + i “\nValor de j:” + j “\nValor da

    soma:" + k);

     }

    }

    1. Classes, Métodos e Atributos

aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

    aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio Classe constituida por Métodos e Atributos

    Métodos procedimentos e funções como no C e Pascal.

    Atributos variáveis declaradas dentro das classes

O objetivo é agrupar os métodos e atributos que estejam relacionados entre si.

    Por exemplo, seja uma classe de nome CLIENTE.

    Seus atributos podem ser:

    ? Nome_Cliente

    ? Endereco_Cliente Seus métodos podem ser:

    ? Consultar_Cliente

    ? Inserir_Cliente

    ? Excluir_Cliente

    ? Alterar_Cliente

Exemplo de uma classe em Java

     // declaração inicial da classe Cliente

    public class cliente

     {

     // atributos da classe Cliente

     String nome;

     String endereco;

     // métodos da classe Cliente

     public void setNome (String novo_nome)

     {

     nome = novo_nome;

     }

     public void setEndereco (String novo_endereco)

     {

     endereco = novo_endereco;

     }

     public String getNome()

     {

     return nome;

     }

     public String getEndereco()

     {

     return endereco;

     }

     } // fim da declaração da classe Cliente

2. Outras definições

Objeto

    A classe é um conceito estático, isto é, um texto que define seus métodos e atributos.

    Quando criamos um elemento desta classe, durante a execução do programa, dizemos que

    este é um objeto. Portanto objeto é cada uma das instâncias de uma classe.

Mensagem

    aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

    Em Java chamamos de mensagem, o ato de chamar ou requisitar a execução de um método. Um objeto pode enviar mensagens para outros objetos requisitando a execução de métodos.

Encapsulamento

    Podemos restringir o acesso a elementos de uma classe utilizando qualificadores. Um qualificador é uma palavra reservada, que define a visibilidade de determinado atributo ou método. Em Java são os seguintes os qualificadores:

    private - O método ou atributo pode ser acessado somente dentro da própria classe. public - O método ou atributo pode ser acessado externamente por outro código. protected - O método ou atributo pode ser acessado pela própria classe ou por classes-filhas (aquelas que herdam desta classe).

    sem modificador - O método ou atributo pode ser acessado pela própria classe ou por classes que participem do mesmo pacote (“package”).

Herança

    Uma subclasse pode herdar o comportameto da classe principal. Assim, pode-se definir um subclasse adicionando características e herdando as características da classe principal ou superclasse.

    Exemplo:

    Classe Funcionario (superclasse)

    ? Classe FuncionarioEfetivo

    ? Classe FuncionarioTemporario

Note que todo funcionário efetivo ou temporário é um funcionário

Exemplo errado:

    Classe Carro

    ? Classe Porta

    ? Classe Pneu

Porta e Pneu não são carros.

Um outro exemplo de Herança e a classe Object.

    public class Object

    Esta classe é a raiz da hierarquia de classes. Toda classe tem Object como uma superclasse. Todos os

    objetos, incluindo arrays, implementam os métodos desta classe.

Sobrecarga de Métodos e Operadores

    Pode-se definir métodos ou operadores com o mesmo nome dentro de uma classe, diferenciando-os pelo número e tipo dos parâmetros. Exemplos:

    1. setValor(float novo_x)

    2. setValor(float novo_y)

    3. setValor(float novo_x, float novo_y)

    4. setValor(float novo_x, int nova_variavel)

aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

    Os métodos 1 e 2 não podem coexistir numa classe.

    1 e 3 podem.

    2 e 3 podem.

    1 e 4 podem

    2 e 4 podem

    3 e 4 podem

Polimorfismos

    Subclasses e suas superclasses podem ter métodos com o mesmo nome. Exemplo:

    1) classe A tem métodos M1 e M2. M1 chama M2. 2) classe B que herda A tem método M2. 3) se um objeto da classe A chama M1, este chamará M2 de A

    4) se um objeto da classe B chama M1, este chamará M2 de B

Construtores e Destrutores

    Construtores são métodos especiais chamados no processo de instanciação de um objeto no

    sistema. Todo construtor tem o mesmo nome da classe. O exemplo a seguir apresenta dois

    construtores, um que não recebe parâmetro algum e outro que recebe o nome de um cliente:

// declaração inicial da classe cliente

    public class cliente

    {

     // atributos da classe cliente

     private String nome;

     private String endereco;

     // atributos da classe cliente acessíveis por códigos externos

     public String cidade;

     public int idade;

     // atributos da classe cliente acessíveis dentro do mesmo package

     float saldo;

     String rg;

     // construtores

     public cliente()

     {

     nome = "";

     endereco = "";

     }

     public cliente(String novo_nome)

     {

     nome = novo_nome;

     endereco = "";

     }

     // métodos da classe cliente

     public void setNome (String novo_nome)

     {

     nome = novo_nome;

     }

    aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

     public void setEndereco (String novo_endereco)

     {

     endereco = novo_endereco;

     }

     public String getNome()

     {

     return nome;

     }

     public String getEndereco()

     { O construtor é executado automaticamente a cada instanciação de um objeto. Por exemplo: return endereco; } cliente c1 = new cliente(); } // fim da declaração da classe Cliente

     ou

    cliente c2 = new cliente("o cliente");

Quando um objeto é instanciado, posições de memória são alocadas ao mesmo. Destrutores

    são métodos especiais para liberar essa memória alocada quando o objeto não mais vai ser

    usado.

// para instanciar

    cliente c1 = new cliente();

// para liberar a memória heap

    delete c1;

3. Compilação e execução de programas Java

Um programa fonte em Java tem sempre a extensão .java.

Para se compilar um programa em Java:

    javac nome-do-programa.java

Note que o programa fonte tem que ter a extensão .java.

    O nome do compilador java é javac. O programa gerado pelo compilador é nome-do-programa.class.

Para executar um programa em Java:

    java nome-do-programa

Não há necessidade de especificar a extensão .class para executar o programa.

    O nome do interpretador Java (JVM Java Virtual Machine) é java

4. Exemplos de programas em Java

    aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

Exemplo 0: A classe cliente acima com um program principal de teste

// cliente.java

    public class cliente extends Object

    {

     // atributos da classe cliente

     private String nome;

     private String endereco;

     // atributos da classe cliente acessíveis por códigos externos

     public String cidade;

     public int idade;

     // atributos da classe cliente acessíveis dentro do mesmo package

     float saldo;

     String rg;

     // construtores

     public cliente()

     {

     nome = "";

     endereco = "";

     }

     public cliente(String novo_nome)

     {

     nome = novo_nome;

     endereco = "";

     }

     public cliente(String novo_nome, String novo_endereco)

     {

     nome = novo_nome;

     endereco = novo_endereco;

     }

     // métodos da classe cliente

     public void setNome (String novo_nome)

     {

     nome = novo_nome;

     }

     public void setEndereco (String novo_endereco)

     {

     endereco = novo_endereco;

     }

     public String getNome()

     {

     return nome;

     }

     public String getEndereco()

     {

     return endereco;

     }

    public static void main(String args[]) throws Exception

     {System.out.println("iniciando a execucao de main");

     cliente c1 = new cliente();

     System.out.println("\nnome:"+c1.nome+"\nendereco:"+c1.endereco);

    aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

     c1 = new cliente("Alberto da Costa");

     System.out.println("\nnome:"+c1.nome+"\nendereco:"+c1.endereco);

     c1 = new cliente("Francisco dos Santos Almeida", "Rua da Mooca 342 - 03232 001 - Mooca");

     System.out.println("\nnome:"+c1.nome+"\nendereco:"+c1.endereco);

     // novo objeto

     cliente c2 = new cliente();

     c2.setEndereco("Rua dos Trilhos 54 - 03332 0000 - Mooca");

     c2.setNome("Carlos Alberto da Silva");

     System.out.println("\nnome:" + c2.getNome() + "\nendereco:" + c2.getEndereco());

     // mais um objeto

     cliente c3 = new cliente("Jose Rosa", "Avenida Celso Garcia 3456 - 03131 030 - Tatuape");

     c3.cidade = "S. Paulo - SP";

     c3.idade = 32;

     c3.saldo = 2345;

     c3.rg = "35478567 - SSP-SP";

     System.out.println("\nnome:" + c3.getNome() + "\nendereco:" + c3.getEndereco() + "\ncidade:" + c3.cidade + "\nidade:" + c3.idade +

     "\nsaldo:" + c3.saldo + "\nrg:" + c3.rg); }

    } // fim da declaração da classe cliente Exemplo 1:

// Tipos.java

    public class Tipos extends Object

    {

    // tipos inteiros com sinal

    private byte b;

    private short s;

    private int i;

    private long l;

    // tipos reais com sinal

    private float f;

    private double d;

    // tipos reais baseados em classes

    private Float fobj;

    private Double dobj;

    // outros tipos

    private char c;

    private boolean boo;

    public Tipos()

    {

    b = 127; // 8 bits

    s = 32767; // 16 bits

    i = 2147483647; // 32 bits

    l = 2147483647; // 64 bits

    f = 10;

    d = 23.233;

    fobj = new Float(23.3);

    dobj = new Double(34.4);

    aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

    c = 'a';

    boo = true;

    }

    public void imprime()

    {

    System.out.println("Valores de inteiros sinalizados..."); System.out.println("byte=>" + b+"-short=>"+s+" - int=>"+i+"-long=>"+l); System.out.println("Valores reais sinalizados..."); System.out.println("float => "+f+" - double => "+d); System.out.println("Valores reais sinalizados (Objetos)..."); System.out.println("Float => "+fobj+" - Double => "+dobj); System.out.println("Outros tipos...");

    System.out.println("caractere => "+c+" - Booleano => "+boo); }

    public static void main(String args[])

    {

    Tipos t = new Tipos();

    t.imprime(); Exemplo 2: } } // Escopo.java

    public class Escopo extends Object

    {

    private int atributo_classe = 10;

    public Escopo()

    {

    int variavel_metodo = 9;

    System.out.println("A variavel da classe fica acessivel na execucao do objeto");

    System.out.println(atributo_classe);

    System.out.println("\nA variavel de metodo morre apos a execucao do metodo");

    System.out.println(variavel_metodo);

    }

public void escopo1()

    {

    System.out.println("Nao foi declarada a variavel x portanto nao posso acessa-la");

    int x = 67;

    System.out.println("Agora a variavel x fica ativa ate o final do metodo => "+x);

    }

    public void escopo2()

    {

    // mesmo nome do atributo de classe

    int atributo_classe = 4;

    System.out.println("Se quiser acessar o atributo de classe deve-se utilizar");

    System.out.println(" this.atributo_classe => "+this.atributo_classe); System.out.println("Sem usar this acesso a variavel deste metodo"); System.out.println(atributo_classe);

    }

    aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

    aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

    public static void main(String args[])

    { Escopo e = new Escopo();

    Exemplo 3: e.escopo1();

    e.escopo2(); } // Calculo.java } class Calculo extends Object

    {

    public Calculo()

    {

    }

    public int soma(int x, int y)

    {

    return x + y;

    }

    public double soma(double x, double y)

    {

    return x + y;

    }

    public int subtrai(int x, int y)

    {

    return x - y;

    }

    public double subtrai(double x, double y)

    {

    return x - y;

    }

public void exemploRelaciona1(int x, int y)

    {

    // se x menor que y

    if (x < y)

    {

    System.out.println(x+" menor que "+y);

    }

    else

    if (x > y) // se x maior que y

    {

    System.out.println(x+" maior que "+y);

    }

    else

    if (x == y) // se x igual a y

    {

    System.out.println(x+" igual a "+y);

    }

    }

    public void exemploRelaciona2(double x, double y)

    {

    // se x maior ou igual a y

    if (x >= y)

    {

    aula23 java - conceitos e programas exemplo.doc mac2121s2004 - BMAC - Marcilio

Report this document

For any questions or suggestions please email
cust-service@docsford.com