Java: Sintaxe. Estrutura de uma aplicação. Estrutura de uma aplicação. Estrutura de uma aplicação. Estrutura de uma aplicação
|
|
- João Guilherme Casqueira Álvares
- 8 Há anos
- Visualizações:
Transcrição
1 Java: Sintaxe slides: jfsintaxe Tipos, variáveis, operadores e comandos Métodos e classes Arranjos, Strings e outras classes Frederico Costa Guedes Pereira 2000 Em Java: Desenvolver uma aplicação consiste em escrever classes de objetos As classes podem representar objetos reais do domínio da aplicação ou estruturas abstratas Uma aplicação em execução consiste num conjunto de objetos, criados a partir das classes, trocando mensagens entre si Saber como fatorar a solução do problema em classes requer experiência e prática Fred (C) 2003 Java: Sintaxe 2 Uma classe em Java é uma coleção identificada de variáveis (estado) e métodos (comportamento) que operam sobre essas variáveis. Unidade fundamental de programação em Java! Uma aplicação Java pode possuir dezenas, centenas ou até milhares de classes Fred (C) 2003 Java: Sintaxe 3 A classe é a menor unidade de código Java não é possível escrever um programa Java sem construir uma classe! O compilador não reconhece fragmentos de código menores que uma classe A classe também é a unidade básica de execução de Java A aplicação inicia a execução a partir de um método especial chamado main existente numa das classes (classe de aplicação) Fred (C) 2003 Java: Sintaxe 4 Estrutura de uma classe Java: class NomeDaClasse { declarações de variáveis membro; declarações de métodos() { declarações de variáveis locais; comandos; Fred (C) 2003 Java: Sintaxe 5 Classe que define um cliente num sistema de loja: public class Cliente { estado comportamento Métodos private String nome; private String endereco; private char sexo; Variáveis membro public Cliente(String nome, String endereco) { this.nome = nome; this.endereco = endereco; Operadores public void mudenome(string novonome) { this.nome = novonome; Fred (C) 2003 Java: Sintaxe 6 1
2 Continuação da classe Cliente... public String informenome(){ return nome; Métodos public String imprima() { String c = "Cliente "; c += "\n - Nome: " + nome; c += "\n - Endereco: " + endereco; c += "\n - Sexo: " + sexo; System.out.println(c); Variável local a um método A classe Cliente é salva no arquivo Cliente.java A classe é compilada para produzir o arquivo de bytecodes chamado Cliente.class C:\ javac Cliente.java ( Cliente.class) Em geral, cada arquivo.java contém a definição de uma classe pública Como podemos usar a classe Cliente (isto é, onde podemos criar objetos desta classe)? Fred (C) 2003 Java: Sintaxe 7 Fred (C) 2003 Java: Sintaxe 8 Classe de aplicação: public class AplicacaoCliente { variáveis locais ao método main public static void main (String[] args){ Cliente a, b; a = new Cliente("Bart", "Springfield"); b = new Cliente("Cartman", "South Park"); System.out.println("Nome do cliente a ="+ a.informenome()); b.imprima(); Fred (C) 2003 Java: Sintaxe 9 A classe AplicacaoCliente é salva no arquivo AplicacaoCliente.java A classe é compilada para produzir o arquivo de bytecodes chamado AplicacaoCliente.class C:\ javac AplicacaoCliente.java A classe é executada com o interpretador Java: C:\ java AplicacaoCliente Nome da classe, sem a extensão.class! Fred (C) 2003 Java: Sintaxe 10 Exemplo de execução em linha de comando: Y:\projetos> javac AplicacaoCliente.java Y:\projetos> java AplicacaoCliente Nome do cliente a =Bart Cliente - Nome: Cartman - Endereço: South Park -Sexo: Y:\projetos> _ Exemplo de execução no BlueJ: Terminal Fred (C) 2003 Java: Sintaxe 11 Fred (C) 2003 Java: Sintaxe 12 2
3 Classes de aplicação: São aquelas por onde a execução do sistema inicia Possuem um método main com a seguinte assinatura: public static void main(string[] args) O interpretador Java só aceita executar classes que possuam o método main definido conforme acima Qualquer classe pode possuir um método main e ser classe de aplicação (embora não seja usual) Em geral, o main destas classes serve para testes Fred (C) 2003 Java: Sintaxe 13 Elementos da linguagem, em ordem crescente de complexidade: COMPLEXIDADE Caracteres Tipos de dados, valores literais, identificadores Operadores e expressões Comandos Métodos Classes Pacotes Fred (C) 2003 Java: Sintaxe 14 Caracteres Uso do padrão Unicode: conjunto de caracteres de 16 bits caracteres distintos! Caracteres Unicode são gravados em arquivos usando um formato chamado UTF-8 Inserção de caracteres Unicode no código fonte: \uxxxx \u3c00 = π Fred (C) 2003 Java: Sintaxe 15 Comentários Três tipos de comentários: // comentário de linha /* */ comentário de bloco /** Classe <b>cliente</b> Comentário de bloco para o Frederico Costa */ Fred (C) 2003 Java: Sintaxe 16 Identificadores Identificadores nomeiam variáveis (membro, locais, parâmetros, etc), métodos e classes Apenas os caracteres especiais "_" e "$" são permitidos, além de letras e números unicode Devem iniciar por uma letra ou pelos símbolos _ ou $ (evite-os, pois o compilador os utiliza) MAIÚSCULAS minúsculas Fred (C) 2003 Java: Sintaxe 17 Identificadores (estilo a ser adotado) Classes: Primeira letra de cada palavra maiúscula Ex: MinhaClasse, Pilha Membros de uma classe e variáveis locais: Primeira letra minúscula Ex: idade, marcamodelo, getcor(), getsalariofinal(), i, cont, somatotal Constantes de classe (staticfinal): Todas as letras maiúsculas Ex: PI, MAX_ALUNOS, MEDIA Fred (C) 2003 Java: Sintaxe 18 3
4 Palavras reservadas abstract boolean break byte case catch char class const continue default do double else extends false final finally float for goto assert if implements import instanceof int interface long native new null package private protected public return short static strictfp super switch synchronized this throw throws transient true try void volatile while Fred (C) 2003 Java: Sintaxe 19 Tipos de Dados em Java Java possui duas categorias de tipos de dados: Tipos primitivos: possuem representações definidas em termos de bytes As variáveis destes tipos guardam valores dentro da faixa definida pelo tipo Tipos referenciáveis: contêm uma referência para os dados na memória, cujas representações são definidas pela classe do objeto As variáveis destes tipos contém um ponteiro p/ objeto Fred (C) 2003 Java: Sintaxe 20 Tipos primitivos Tipo Default Tamanho Domínio boolean false 1bit NA char \u bits \u0000 a \uffff byte 0 8bits -128 a 127 short 0 16bits a int 0 32bits a long 0 64bits a float 0.0f 32bits ±1.4E-45 a ± E+38 double bits ± 4.9E-324 a ± E+308 Fred (C) 2003 Java: Sintaxe 21 Tipos primitivos Tipo boolean Dois valores: true e false Tipo char Valores delimitados por apóstrofos: char c = 'c' Uso de literais unicode: char c = \u0041 Caracteres especiais: \b (backspace) \t (tabulação) \n (nova linha) \r (return) \' (apóstrofos) \" (aspas) Fred (C) 2003 Java: Sintaxe 22 Tipos primitivos Tipos inteiros (byte, short,int, long) Literais na base decimal: 0, 1, 123, Literais nas bases hexadecimal e octal: 0xcafe //51966 em hexa 0377 //255 em octal Inteiros(32 bits) x inteiros longos (64bits) L 0xF34L //long //long em hexa Fred (C) 2003 Java: Sintaxe 23 Tipos primitivos Tipos de ponto flutuante (float e double) Literais: 0.0, 1.0,.01, -3.5 Notação científica: E02 // x e-6 //1 x 10-6 Literais ponto-flutuante são sempre double! f 6.02e23F //double //float //float Fred (C) 2003 Java: Sintaxe 24 4
5 Conversão de tipos Java permite conversões entre inteiros (byte, short,int, long), caractere (char) e pontos flutuantes (float e double) O tipo boolean é o único primitivo que não é convertido em nenhum outro Tipos de conversão Conversões ampliadoras (widening conversions) Conversões redutoras (narrowing conversions) Conversões ampliadoras Um valor de um tipo é convertido para um tipo maior, isto é, um representado por mais bits São realizadas automaticamente int i = 20; float f = i; //20 convertido para float int i = A ; //65 convertido para int Math.sqrt(4); //4 convertido para double Fred (C) 2003 Java: Sintaxe 25 Fred (C) 2003 Java: Sintaxe 26 Conversões redutoras Um valor é convertido para um tipo com menos bits Não são realizadas automaticamente O programador deve confirmar a redução com um cast, do contrário o código não é compilado cast int i = 13; byte b = i; //Erro de compilação! b = (byte) i; //Ok! i = (int) ; //i recebe 32 Fred (C) 2003 Java: Sintaxe 27 Tipos de referência As variáveis são referências para objetos em memória Uma classe define um tipo referenciado Os arranjos também são tipos referenciados Referência (variável) Tipos referenciados serão abordados mais adiante Objeto em memória Fred (C) 2003 Java: Sintaxe 28 Operadores Operadores aritméticos Resultam num valor numérico (inteiro ou ponto flutuante) Operadores de incremento e decremento Resultam num valor numérico (inteiro ou ponto flutuante) Operadores relacionais: comparam expressões Resultam num valor booleano (true ou false) OPeradores lógicos: compõem expressões lógicas Produzem um valor booleano Fred (C) 2003 Java: Sintaxe 29 Operadores Operadores de atribuição Executam uma operação seguida de uma atribuição Operador condicional Condiciona seu valor de retorno a uma expressão lógica Operador instaceof: verifica se um objeto é instância de uma classe Resulta num valor boolean Operador new: instancia uma classe Produz um objeto da classe Fred (C) 2003 Java: Sintaxe 30 5
6 Operadores aritméticos Símbolos: Adição: + Subtração: - Multiplicação: * Divisão: / Resto da divisão inteira: % c = 7 % 3; //c receberá 1 x = / 2; //x receberá 10 Fred (C) 2003 Java: Sintaxe 31 Operadores incremento/decremento Símbolos: Incremento: ++ Decremento: -- O comportamento deste operador depende da posição relativa ao operando c = 10; c++; //c 11 y=1; x=0; z=0; x = y++; //x 1 e y 2 z = ++x; //z 2 e x 2 Fred (C) 2003 Java: Sintaxe 32 Operadores relacionais Símbolos: Maior que, maior ou igual a: >, >= Menor que, menor ou igual a: <, <= Igual a: == Diferente de:!= if ( c == 10 )... return x!= null; Fred (C) 2003 Java: Sintaxe 33 Operadores lógicos ou booleanos Símbolos: AND: && (curto circuito) ou & OR: (curto circuito) ou NOT:! XOR: ^ (c!= 0) && (a > (x/c)) //ok (c!= 0) & (a > (x/c)) //erro se c==0!(a > b) Fred (C) 2003 Java: Sintaxe 34 Operadores de atribuição Símbolos: Aritméticos+atribuição: +=, -=, *-, /= e %= Equivalem a uma soma entre o operando da direita e o operando da esquerda seguida por uma atribuição Forma geral: var op= valor var = var op valor c += 5; //c = c + 5 a -= b; //a = a b f %= (c+a); //f = f % (c+a) e += 1; // e++ ou e = e + 1 Fred (C) 2003 Java: Sintaxe 35 Operador condicional Símbolo: Operador ternário:?: Equivale a um comando de decisão que resulta num valor Sintaxe: expr_booleana? expressaov : expressãof j = (a>b)?a:b; a = (a!= null)? a : "<vazio>"; v = r>0? 10 : 10.5; //erro! a = (x<y)&&(z<y)? y : ((x<z)? z : x); Fred (C) 2003 Java: Sintaxe 36 6
7 Operador instanceof Sintaxe: (objeto ou array) instanceof nome_da_classe Retorna true se o objeto for instância da classe "string" instanceof String //true "" instanceof Object //true (H) null instanceof Object //false Operador new Sintaxe: new construtor_da_classe Cria um objeto da classe especificada no construtor c = new Cliente("Bart", "Springfield"); linguagem = new String("Java"); venda.adicioneproduto(new Produto()); faixa = new int[] {1,2,3,4,5; Fred (C) 2003 Java: Sintaxe 37 Fred (C) 2003 Java: Sintaxe 38 Operadores (P)recedência e (A)ssociatividade P A Operador 15 E. [ ] ( params ) D + -! 13 D new ( tipo ) 12 E * / % 11 E (concatenação de strings) 10 E << >> <<< 9 E < <= > >= instanceof Fred (C) 2003 Java: Sintaxe 39 Operadores P A Operador 8 E p == p p!= p r == r r!= r (p=primitivo, r=referência) 7 E & (bitwise) & (lógico) 6 E ^ (bitwise) ^ (lógico) 5 E (bitwise) (lógico) 4 E && 3 E 2 D?: 1 D = *= /= %= += -= <<= >>= >>>= &= ^= = Fred (C) 2003 Java: Sintaxe 40 Elementos da linguagem, em ordem crescente de complexidade: COMPLEXIDADE Caracteres Tipos de dados, valores literais, identificadores Operadores e expressões Comandos Métodos Classes Pacotes Fred (C) 2003 Java: Sintaxe 41 Comandos Estruturas de decisão: if-else e switch-case Estruturas de repetição: for, while e do-while Tratamento de exceções: throw e try-catch-finally Desvio de fluxo: break, continue e return Fred (C) 2003 Java: Sintaxe 42 7
8 Comando simples x bloco de comandos Um comando em Java pode ser um comando simples ou um bloco de comandos Um comando simples pode ser: uma expressão, um dos comandos anteriores ou uma ativação de método; Um bloco de comandos é um conjunto de um ou mais comandos simples delimitados por "{" e "" e separados entre si por ";". Comando if-else Sintaxe: if ( expr_booleana ) comando simples ou bloco; else comando simples ou bloco; Exemplo: if (a>b) maior = a; else maior = b; if (n!= 0){ c += n; n = 0; else c++; Fred (C) 2003 Java: Sintaxe 43 Fred (C) 2003 Java: Sintaxe 44 Comando switch-case Sintaxe: switch ( var_inteira ) { [case val: comando ou bloco; break;] 1-n [default: comando ou bloco; break;] 0-1 Exemplo: (char byte short int) switch (mes) { case 1: nome = "Janeiro"; break; case 2: nome = "Fevereiro"; break; case 3: nome = "Março"; break; case 4: nome = "Abril"; break; default: nome = "Mês inválido"; break; Fred (C) 2003 Java: Sintaxe 45 Comando for Sintaxe: for ( inic; teste; inc ) comando simples ou bloco; Onde: inic: inicialização da variável contadora. A variável também pode ser declarada aqui. teste: expressão booleana que determina a parada ou continuação do laço inc: incremento da variável contadora Interessante todas as três cláusulas são opcionais! Fred (C) 2003 Java: Sintaxe 46 Comando for int i; for (i=0 ; i<10 ; i++) x += 5; //outra forma for (int i=0 ; i<10 ; i++) x += a[i]; //laço infinito for( ;; ) { if (x!= null) break; else {... i só pode ser usada no corpo do laço for Fred (C) 2003 Java: Sintaxe 47 Comando for //mais de uma variável declaradas for (int i=0, j=10 ; i<10 ; i++, j--) soma += i*j; ; //não precisa ser uma contagem for (Node n = cabeca ; n!=null ; n=n.next()) System.out.println(n); //laço vazio (e possível erro de compilação) for (int i=0 ; i<10 ; i++); soma += i; Fred (C) 2003 Java: Sintaxe 48 8
9 Comando while Sintaxe: while ( expressão ) comando ou bloco; Onde: expressão: expressão que retorne um booleano Se o valor for true, o corpo do laço é executado Se for false, o laço é encerrado Pode ser análogo a um for, desde que se acrescente uma operação de inicialização antes do comando Comando while int c=0; while (c < 10) { System.out.println(c); c++; //equivale a for (int c=0; c<10 ;c++) System.out.println(c); i só pode ser usada no corpo do laço for Fred (C) 2003 Java: Sintaxe 49 Fred (C) 2003 Java: Sintaxe 50 Comando do-while Sintaxe: do comando ou bloco; while (expressão); Onde: expressão: expressão que retorne um booleano O laço do-while é executado pelo menos uma vez Só pára se a expressão for false (cuidado para não confundi-lo como repeat-until do Pascal) Comando do-while //equivalente ao laço while do exemplo int c=0; do { System.out.println(c); c++; while (c < 10); Fred (C) 2003 Java: Sintaxe 51 Fred (C) 2003 Java: Sintaxe 52 Comando throw Sintaxe: throw exceção; Observações: Lançar uma exceção que indique um erro ou condição que impossibilite o prosseguimento da execução O método que possui este comando deve indicar na sua assinatura que pode lançar tal exceção, isto é feito com a cláusula throws Uma exceção é um objeto cuja classe herda de Throwable Comando throw Exemplo: /** Método que adiciona um produto à venda atualmente aberta de um caixa */ public void adicioneproduto(produto item) throws VendaNaoAbertaException { //há venda aberta no caixa? if (vendaatual == null) throw new VendaNaoAbertaException(this); vendaatual.insereitem(item); Fred (C) 2003 Java: Sintaxe 53 Fred (C) 2003 Java: Sintaxe 54 9
10 Comando try-catch-finally Comando try-catch-finally Sintaxe: try { [comando;] 1-n catch (Exceção e1) { [comando;] 1-n catch (OutraExceção e2) { [comando;] 1-n finally { [comando;] 1-n zero ou mais um ou zero Mecanismo de tratamento de exceções de Java A cláusula try define o trecho de código protegido A cláusula catch (0 ou mais) trata um determinado tipo de exceção que possa ocorrer no try Os comandos só serão executados se a exceção ocorrer Apenas um catch, dentre todos, é executado A cláusula finally é opcional e é sempre executada O uso de chaves faz parte do comando e não é opcional Fred (C) 2003 Java: Sintaxe 55 Fred (C) 2003 Java: Sintaxe 56 Comando try-catch-finally Exemplo: public static void main(string[] args) { Caixa c = new Caixa(); Produto p; try { p = = new Produto("Celular", 600); c.adicioneproduto(p); catch (VendaNaoAbertaException e) { //trata erro aqui... Fred (C) 2003 Java: Sintaxe 57 Comando break Sintaxe: break; Objetivo: Faz a execução saltar para o final de um dos comandos: while, do-while, for ou switchcase No comando switch-case seu uso é necessário para evitar que a execução de uma cláusula case continue na seguinte Fred (C) 2003 Java: Sintaxe 58 Comando break Exemplo:... for (int i=0; i<dados.length ;i++) { if (dados[i] == procurado) { posicao = i; break; //a execução continua daqui... Fred (C) 2003 Java: Sintaxe 59 Comando continue Sintaxe: continue; Objetivo: Interrompe a iteração atual do laço e inicia a próxima Só pode ser usado dentro de laços while, dowhile e for while: volta para o início do laço e testa a condição de parada para decidir se entra no laço ou não do-while: vai para o final do laço, onde a condição de parada é testada para decidir se entra no laço ou não for: volta para o início, executa o incremento e depois o teste Fred (C) 2003 Java: Sintaxe 60 10
11 Comando continue Exemplo:... for (int i=0; i<dados.length ;i++) { if (dados[i] == VAZIO) continue; processe(dados[i]);... Comando return Sintaxe: return; ou return expressão; Objetivo: Pára a execução do método corrente Métodos com tipo de retornovoid pedem a primeira sintaxe doreturn Métodos que retornam dados pedem a segunda Fred (C) 2003 Java: Sintaxe 61 Fred (C) 2003 Java: Sintaxe 62 Comando return String informenome() { return this.nome; public void insereproduto(produto item) { if (item == null) return; itens.add(item); Fred (C) 2003 Java: Sintaxe 63 Métodos Coleção de comandos Java encapsulados por um nome: Em linguagens imperativas: funções, subrotinas e procedimentos Métodos podem possuir zero ou mais parâmetros e podem conter declarações locais de variáveis A invocação de um método é uma expressão Java Exceção: métodos com retorno void não são expressões Fred (C) 2003 Java: Sintaxe 64 Métodos Assinatura de um método: Nome do método Tipo e nome de cada parâmetro Tipo do valor retornado Lista de exceções Modificadores Sintaticamente: modif tipo nome (params)[throws exceções]{ corpo_do_método Fred (C) 2003 Java: Sintaxe 65 Métodos Nome do método: mesmas regras dos identificadores de variáveis Tipo de retorno: um tipo primitivo, um tipo referenciável, um array ou void. Parâmetros são separados por vírgulas e, quando não existirem, o nome do método vem seguido por '()' A cláusula throws informa as exceções (erros) que o método pode lançar. Fred (C) 2003 Java: Sintaxe 66 11
12 Métodos Exemplos de assinaturas de métodos: public static void main(string[] args) {... public final int indexof(object e, int s) {... double distanciadaorigem() {... static double raiz(double e) throws IllegalArgumentException {... protected abstract String readtext(file f) throws FileNotFoundException, UnsupportedEncondingException{... Pacotes Coleção de classes e interfaces relacionadas com um espaço de proteção e de nomes comuns. Identificar classes com características comuns. Facilidade para encontrar classes desejadas. Nomes de classes num pacote não entram em conflito com nomes de classes de outros pacotes. Facilitar o acesso entre classes no mesmo pacote. Fred (C) 2003 Java: Sintaxe 67 Fred (C) 2003 Java: Sintaxe 68 Pacotes Pacotes em Java possuem nomes compostos separados por "." (ponto) Nomes de pacotes da plataforma começam por java, javax ou sun Exemplos de pacotes: java.lang: pacote com várias classes fundamentais da linguagem Java, tais como, String, Math, etc. java.util: pacote com classes utilitárias e estruturas de dados Fred (C) 2003 Java: Sintaxe 69 Importação de pacotes e classes Dentro de um pacote pacote1, uma classe A pode se referir a uma outra classe B apenas por seu nome simples Classes de outro pacote pacote2 devem adicionar o nome do pacote pacote1 para utilizarem as classes A e B Exemplo: pacote1.a a = new pacote1.a(); Exemplo: java.io.file f; f = new java.io.file("abc.txt"); Fred (C) 2003 Java: Sintaxe 70 Importação de pacotes e classes A diretiva import dispensa o uso do nome qualificado de uma classe de outro pacote Deve ser colocada depois da diretiva package Pode ser usada mais de uma vez Disponível em duas formas: Importação de uma classe de um pacote Importação de todas as classes de um pacote O pacote java.lang é sempre importado automaticamente! Fred (C) 2003 Java: Sintaxe 71 Importação de pacotes e classes import java.util.arraylist; import java.util.iterator; import java.io.*; //importa tudo import java.lang.*; //dispensável public class Cliente {... Fred (C) 2003 Java: Sintaxe 72 12
13 Definição de pacotes A diretiva package define o pacote ao qual a classe pertence Deve ser a primeira palavra reservada Java a aparecer em um arquivo Sintaxe: package nome_do_pacote; Pacotes devem ser rotulados com o nome de domínio invertido, para garantir unicidade global Exemplo: package br.nti.ufpb.contacad; Definição de pacotes Cada arquivo fonte deve estar num diretório que reflita o nome do pacote package v3; public class Cliente {... package v3; public class Produto {... v3 Cliente.java Produto.java v3.produto v3\produto.java Fred (C) 2003 Java: Sintaxe 73 Fred (C) 2003 Java: Sintaxe 74 Definição de pacotes Os bytecodes também exigem a mesma hierarquia: package v3; public class Cliente {... package v3; public class Produto {... Compilador Java Fred (C) 2003 Java: Sintaxe 75 v3 Cliente.class Produto.class Definição de pacotes O diretório base do pacote pode estar em qualquer ponto do sistema de arquivos. Exemplo: package v3; public class Produto {... C:\ loja Produto.java Fred (C) 2003 Java: Sintaxe 76 v3 pacote Definição de pacotes Sugestão para organização do código: C:\ fontes v3 loja Cliente.java classes v3 Cliente.class Definição de pacotes O compilador e o interpretador devem estar informados onde encontrar os arquivos fontes e de classes. Definindo um CLASSPATH: Conjunto de diretórios que contêm pacotes onde o compilador e o interpretador devem procurar por arquivos fontes e bytecodes Produto.java Produto.class Fred (C) 2003 Java: Sintaxe 77 Fred (C) 2003 Java: Sintaxe 78 13
14 Definição de pacotes Definição de pacotes Apenas diretórios que contêm diretórios base de pacotes devem ser listados. Exemplo: c:\loja\fontes deve estar no classpath c:\loja\fontes\v3 não deve! Definindo um classpath: SET CLASSPATH=c:\loja\fontes;c:\loja\classes Inserido no arquivo AUTOEXEC.BAT Diretiva -classpath do compilador/interpretador Fred (C) 2003 Java: Sintaxe 79 Compilando o código em linha de comando: C:\> javac classpath c:\loja\fontes Cliente.java C:\> _ Executando uma classe: C:\> java classpath c:\loja\classes Cliente C:\> _ Fred (C) 2003 Java: Sintaxe 80 Estrutura de um código fonte Java Arquivo: menor unidade compilável de Java Estrutura: Uma diretiva package (opcional) Zero ou mais diretivas import Uma ou mais definições de classe Todo comando Java deve estar contido dentro dos métodos das classes Todo método deve aparecer dentro de alguma classe. Estrutura de um código fonte Java Todo arquivo Java deve conter no máximo uma classe com acesso public. O nome do arquivo deve ser o mesmo de sua classe public com a extensão.java. É boa prática de programação declarar apenas uma classe por arquivo, mesmo quando estas pertencerem a um mesmo pacote. Fred (C) 2003 Java: Sintaxe 81 Fred (C) 2003 Java: Sintaxe 82 Estrutura de um código fonte Java Estrutura de um código fonte Java Sintaticamente: [package NomeDoPacote] {[import * ou Classe] public class NomeDaClasse [extends Superclasse]{ Corpo da classe CLASSE ARQUIVO MÉTODO COMANDO PACOTE class OutraClasse [extends Superclasse]{ Corpo da classe Fred (C) 2003 Java: Sintaxe 83 Fred (C) 2003 Java: Sintaxe 84 14
15 Estrutura de um código fonte Java Classes de um mesmo pacote: package figuras; class Circulo { package figuras; class Retangulo { package figuras; class Poligono { Arranjos e Strings corpo da classe... corpo da classe... corpo da classe... Circulo.java Retangulo.java Poligono.java Fred (C) 2003 Java: Sintaxe 85 Fred (C) 2003 Java: Sintaxe 86 Arranjos Arranjos são objetos em Java! Arranjos devem ser declarados e depois instanciados. Exemplo: int[] inteiros; //declaração inteiros = new int[20]; //instanciação Ou: int[] inteiros = new int[20]; //2 em 1 Fred (C) 2003 Java: Sintaxe 87 Arranjos Sintaxe geral: tipo[ ] referência =new tipo[tamanho] O tipo base de um arranjo pode ser primitivo ou de referência (objetos) Uma vez criados, não podem mudar de tamanho São indexados a partir do índice 0 (zero) Possuem uma propriedade pública length que contém o tamanho do arranjo Fred (C) 2003 Java: Sintaxe 88 Arranjos Arranjos Tipo primitivo: int[] arraydeinteiros = new int[10]; int arraydeinteiros[] = new int[10]; Tipo referência: String[][] nomes = new String[2][3]; Produto[] vendas = new Produto[3]; Object coisas[] = new Object[10]; A declaração acima só cria os arranjos, os objetos devem ser criados depois! vendas Cada caixinha é uma referência para um objeto Produto a ser criado! = null Fred (C) 2003 Java: Sintaxe 89 Fred (C) 2003 Java: Sintaxe 90 15
16 Arranjos Arranjos literais: Na declaração de uma referência: int[] inteiros = {1, 2, 3, 4, 5; Na passagem de um valor literal: String r = abrirdialogo("deseja sair?", new String[] {"Sim", "Não"); A inicialização é feita em tempo de execução! Arranjos Povoando um arranjo de referências: Produto[] vendas = new Produto[3]; vendas[0] = new Produto("Celular", 600); vendas[1] = new Produto("DVD", 700); vendas[2] = new Produto("Mesa", 100); System.out.println(vendas.length); Cada posição do arranjo é uma referência para um objeto da classe Produto Fred (C) 2003 Java: Sintaxe 91 Fred (C) 2003 Java: Sintaxe 92 Arranjos Strings vendas Strings também são objetos em Java. Devem ser declarados e instanciados. String linguagem; //declara... linguagem = new String( Java ); //...instancia linguagem = Java ; //mais prático! "Celular" "DVD" "Mesa" Concatenação: Java + é a melhor 2+2= + 4 Produto = + p //p é um Produto Fred (C) 2003 Java: Sintaxe 93 Fred (C) 2003 Java: Sintaxe 94 Strings Interface da classe String char charat(int pos) int compareto(string s) int comparetoignorecase(string s) boolean endswith(string s) boolean equals(string s) boolean equalsignorecase(string s) int length() String substring(int ini) String substring(int ini, int fim) Fred (C) 2003 Java: Sintaxe 95 Strings String s = new String("Java é a melhor"); s.charat(3); // 'a' s.compareto("java é"); // 9 "Java é".compareto(s); // 9 s.comparetoignorecase("java é a melhor"); // 0 s.equalsignorecase("java É a melhor"); // true s.length(); // 15 "Isto é um string".length(); // 16 s.substring(7); // "a melhor" s.substring(0,4); // "Java" Fred (C) 2003 Java: Sintaxe 96 16
17 Strings Interface da classe String int indexof(string s) int indexof(string s, int ini) int indexof(int ch) int indexof(int ch, int ini) int lastindexof(string s) int lastindexof(string s, int ini) int lastindexof(int ch) int lastindexof(int ch, int ini) Strings String s = new String("Java é a melhor"); s.indexof("a "); // 3 s.indexof("a ", 4); // 7 s.indexof('e'); // 10 s.indexof('é', 2); // 5 s.lastindexof("a "); // 7 s.lastindexof("a ", 6); // 3 "Nabucodonosor".lastIndexOf('o'); // 11 "Nabucodonosor".lastIndexOf('o', 7); // 7 Fred (C) 2003 Java: Sintaxe 97 Fred (C) 2003 Java: Sintaxe 98 Strings Interface da classe String String tolowercase() String touppercase() String trim() String replace(char c1, char c2) boolean startswith(string s) boolean startswith(string s, int desloc) char[ ] tochararray() boolean regionmatches(int d1, String s, int d2, int tam) Strings String s = new String("Java é a melhor"); s.tolowercase(); // "java é a melhor" s.touppercase(); // "JAVA É A MELHOR" " Joao Pessoa ".trim(); // "Joao Pessoa" s.replace('a','o'); // "Jovo é o melhor" s.startswith("java"); // false s.startswith("java", 2); // false s.tochararray(); // {'J'','a','v',.. s.regionmatches(9,"melhor",0,6); // true Fred (C) 2003 Java: Sintaxe 99 Fred (C) 2003 Java: Sintaxe 100 String Exemplo mais completo String Exemplo mais completo Construir uma classe que facilite a manipulação de nomes de arquivos no Windows/DOS ou Unix A classe deve guardar um nome completo de arquivo e permitir o acesso a cada uma de suas partes: nome caminho extensão do arquivo Esquematicamente: caminho()? nomecompleto separador extensão()? nome! nome()? Fred (C) 2003 Java: Sintaxe 101 Fred (C) 2003 Java: Sintaxe
18 String Exemplo mais completo String Exemplo mais completo public class NomeArquivo { private String nomecompleto; private char separador; // construtor da classe public NomeArquivo(String nome, char sep) { nomecompleto = nome; separador = sep; // método para retornar a extensão do arquivo public String extensao () { int ponto = nomecompleto.lastindexof(. ); return nomecompleto.substring(ponto + 1); Fred (C) 2003 Java: Sintaxe 103 //Retorna o nome do arquivo public String nome() { int ponto = nomecompleto.lastindexof(. ); int sep = nomecompleto.lastindexof(separador); return nomecompleto.substring(sep + 1, ponto); // Retorna o caminho (path) do arquivo public String caminho() { int sep = nomecompleto.lastindexof(separador); return nomecompleto.substring(0, sep); // fim da classe NomeArquivo Fred (C) 2003 Java: Sintaxe 104 String Exemplo mais completo public class AplicacaoNomes { public static void main(string[] args) { NomeArquivo arq; arq = new NomeArquivo("c:\\temp\\teste.doc", '\\'); System.out.println("Extensao: " + arq.extensao()); System.out.println("Caminho:" + arq.caminho()); System.out.println("Nome:" + arq.nome()); Operações de entrada e saída // fim da classe AplicacaoNomes Fred (C) 2003 Java: Sintaxe 105 Fred (C) 2003 Java: Sintaxe 106 Entrada e saída Entrada e saída Encontram-se na classe System (java.lang) System.in e System.out in é uma variável de classe do tipo InputStream Ela referencia um objeto InputStream que representa a entrada padrão do sistema um objeto InputStream System in out um objeto PrintStream out é uma variável de classe do tipo PrintStream Ela referencia um objeto PrintStream que representa a saída padrão do sistema Fred (C) 2003 Java: Sintaxe 107 Fred (C) 2003 Java: Sintaxe
19 Entrada e saída Entrada e saída Lendo da entrada padrão: System.in.read() Escrevendo na saída padrão: System.out.println(...) System.in read() System in out System.out println("...") Ambos são métodos enviados para os objetos referenciados por in e out. As classes InputStream e PrintStream implementam estes métodos. Fred (C) 2003 Java: Sintaxe 109 Fred (C) 2003 Java: Sintaxe 110 Entrada e saída Como Java não foi projetada para produzir aplicações com interfaces baseadas em texto, a entrada (principalmente) e saída de dados é muito pouco prática (para não dizer inexistente!) Utilizaremos uma classe não padrão chamada EasyIn para facilitar a entrada de dados das primeiras aplicações Fred (C) 2003 Java: Sintaxe 111 Entrada e saída Interface da classe EasyIn boolean readboolean() byte readbyte() short readshort() int readint() boolean readlong() float readfloat() double readdouble() char readchar() String readstring() Fred (C) 2003 Java: Sintaxe 112 Exemplo Exemplo de uso de EasyIn: public static void main(string args[]){ NomeArquivo meuarquivo; EasyIn in = new EasyIn(); PrintStream out = System.out; String nome; char sep; out.print("forneca um nome de arquivo completo:"); nome = in.readstring(); out.print("forneca o separador utilizado:"); sep = in.readchar(); nomearquivo = new NomeArquivo(nome, sep); Fred (C) 2003 Java: Sintaxe 113 Classes da API de Java java.lang.stringbuffer Strings que podem ser alterados dinamicamente (mais eficientes que String) Alguns métodos StringBuffer append(tipo dado) StringBuffer insert(int por, tipo dado) String tostring() void setcharat(int pos, char c) Fred (C) 2003 Java: Sintaxe
20 Classes da API de Java java.util.calendar Guarda e manipula datas e horas Alguns métodos Calendar getinstance() boolean after(object data) boolean before(object data) int add(int campo, int qtde) void get(int campo) void set(int campo, int valor) Fred (C) 2003 Java: Sintaxe 115 Classes da API de Java java.util.calendar Guarda e manipula datas e horas Constantes (para usar em campo) Calendar.DAY_OF_MONTH Calendar.DAY_OF_WEEK Calendar.HOUR Calendar.MINUTE Calendar.MONTH etc. (veja API da classe Calendar) Fred (C) 2003 Java: Sintaxe 116 Calendar Exemplo import java.util.calendar; public class UsandoCalendar { public static void main(string[] args) { Calendar cal = Calendar.getInstance(); //data atual cal.add(calendar.day_of_week, 2); System.out.println("Dia da semana: " + cal.get(calendar.day_of_week)); System.out.println("Dia do mes: " + cal.get(calendar.day_of_month)); System.out.println("Hora: " + cal.get(calendar.hour)); Fred (C) 2003 Java: Sintaxe 117 Classes encapsuladoras Classes encapsuladoras Byte, Integer, Long, Float, Double e Boolean Pacote java.lang Principais utilidades: Encapsular um valor primitivo na forma de um objeto Utilização de tipos primitivos em escopos exclusivos de tipos de referência Conversões: String tipos primitivos Fred (C) 2003 Java: Sintaxe 118 Classes empacotadoras Utilização de tipos primitivos em escopos exclusivos de tipos de referência Object[] coisas = new Object[3]; coisas[0] = new NomeArquivo("teste.doc", '\\'); coisas[1] = new String("java"); coisas[2] = 3; NÃO PODE!!! 3 é um literal do tipo primitivo int Os elementos do arranjo só podem ser objetos da classe Object ou de quaisquer subclasses desta. Classes empacotadoras Utilização de tipos primitivos em escopos exclusivos de tipos de referência Object[] coisas = new Object[3]; coisas[0] = new NomeArquivo("teste.doc", '\\'); coisas[1] = new String("java"); coisas[2] = new Integer(3); //Ok! ANTES Literal primitivo 3 3 DEPOIS Objeto de Integer Fred (C) 2003 Java: Sintaxe 119 Fred (C) 2003 Java: Sintaxe
Histórico Et Estrutura t de um programa Java Sintaxe básica de Java. Reinaldo Gomes reinaldo@cefet-al.br. O que é a linguagem Java?
Programação Orientada a Objetos Elementos Básicos da Linguagem Java Histórico Et Estrutura t de um programa Java Sintaxe básica de Java Reinaldo Gomes reinaldo@cefet-al.br Definição O que é a linguagem
Leia maisProgramação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem
Leia maisA Linguagem Java. Alberto Costa Neto DComp - UFS
A Linguagem Java Alberto Costa Neto DComp - UFS 1 Roteiro Comentários Variáveis Tipos Primitivos de Dados Casting Comandos de Entrada e Saída Operadores Constantes 2 Comentários /** Classe para impressão
Leia maisLinguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery
Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em
Leia maisUniversidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática
Folha 1-1 Introdução à Linguagem de Programação JAVA 1 Usando o editor do ambiente de desenvolvimento JBUILDER pretende-se construir e executar o programa abaixo. class Primeiro { public static void main(string[]
Leia maisSintaxe Básica de Java Parte 1
Sintaxe Básica de Java Parte 1 Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marcioubeno.com Fonte: Material da Profª Karina Oliveira Estrutura de Programa Um programa
Leia mais2 Orientação a objetos na prática
2 Orientação a objetos na prática Aula 04 Sumário Capítulo 1 Introdução e conceitos básicos 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2 Objetos 1.4.3 Métodos e atributos 1.4.4 Encapsulamento 1.4.5 Métodos
Leia maisSintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.
Sintaxe Geral Tipos de Dados Comentários Comentários: De linha: // comentário 1 // comentário 2 De bloco: /* linha 1 linha 2 linha n */ De documentação: /** linha1 * linha2 */ Programa Exemplo: ExemploComentario.java
Leia maisAula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.
Aula 2 Objetivos Encapsulamento na linguagem Java; Utilizando a referência this. Encapsulamento, data hiding é um conceito bastante importante em orientação a objetos. É utilizado para restringir o acesso
Leia maisNoções sobre Objetos e Classes
Noções sobre Objetos e Classes Prof. Marcelo Cohen 1. Elementos de programação Revisão de programação variáveis, tipos de dados expressões e operadores cadeias de caracteres escopo de variáveis Revisão
Leia maisJava. Marcio de Carvalho Victorino www.dominandoti.eng.br
Java Marcio de Carvalho Victorino www.dominandoti.eng.br 3. Considere as instruções Java abaixo: int cont1 = 3; int cont2 = 2; int cont3 = 1; cont1 += cont3++; cont1 -= --cont2; cont3 = cont2++; Após a
Leia maisAlgoritmia e Programação APROG. Linguagem JAVA. Básico. Nelson Freire (ISEP DEI-APROG 2012/13) 1/31
APROG Algoritmia e Programação Linguagem JAVA Básico Nelson Freire (ISEP DEI-APROG 2012/13) 1/31 Linguagem Java Estrutura de um Programa Geral Básica Estruturas de Dados Variáveis Constantes Tipos de Dados
Leia maisCriar a classe Aula.java com o seguinte código: Compilar e Executar
Introdução à Java Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Código Exemplo da Aula Criar a classe Aula.java com o seguinte código: public class Aula { public static void
Leia maisAlgoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões
Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões Professor: Max Pereira http://paginas.unisul.br/max.pereira Ciência da Computação Primeiro Programa em Java public class OlaPessoal
Leia maisCONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa
CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS João Gabriel Ganem Barbosa Sumário Motivação História Linha do Tempo Divisão Conceitos Paradigmas Geração Tipos de Dados Operadores Estruturada vs
Leia maisAula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/
Aula 09 Introdução à Java Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Java: Sintaxe; Tipos de Dados; Variáveis; Impressão de Dados.
Leia maisCurso Adonai QUESTÕES Disciplina Linguagem JAVA
1) Qual será o valor da string c, caso o programa rode com a seguinte linha de comando? > java Teste um dois tres public class Teste { public static void main(string[] args) { String a = args[0]; String
Leia maisinsfcanceof new public switch transient while byte continue extends for int null
Palavras -chave de JAV A abstract catch do final implements long private static throw void boolean char double finally import native protected super throws volatile break class float insfcanceof new public
Leia mais3 Classes e instanciação de objectos (em Java)
3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem
Leia maisESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento NetBeans Introdução à Linguagem de Programação JAVA
P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento NetBeans Introdução à Linguagem de Programação JAVA 0 Iniciar o ambiente de desenvolvimento integrado
Leia maisLinguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br
Linguagens de Programação III Aula 02 Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação Técnica de comunicação padronizada para enviar instruções a um computador. Assim
Leia maisOrientação a Objetos em Java. Leonardo Gresta Paulino Murta leomurta@ic.uff.br
Orientação a Objetos em Java Leonardo Gresta Paulino Murta leomurta@ic.uff.br Agenda Introdução; Orientação a Objetos; Orientação a Objetos em Java; Leonardo Murta Orientação a Objetos em Java 2 Agosto/2007
Leia maisUniversidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java
Guia da Sintaxe do Java TIPOS PRIMITIVOS DE DADOS DO JAVA São os tipos nativos de dados do Java, que podem ser usados na declaração de atributos, variáveis, parâmetros. Tipo primitivo Tamanho Valor padrão
Leia maisAlgoritmos e Programação
Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Algoritmos e Programação Parte 05 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti
Leia maisINF 1005 Programação I
INF 1005 Programação I Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Estrutura de um Programa C Inclusão de bibliotecas auxiliares: #include Definição de constantes:
Leia maisDefinição. Histórico. Histórico. Estrutura do código fonte Java. Histórico. Programação Orientada a Objetos. O que é a linguagem Java?
Elementos Básicos da Linguagem Java Programação Orientada a Objetos Histórico Estrutura de um programa Java Sintaxe básica de Java Definição O que é a linguagem Java? Linguagem de programação orientada
Leia maisBSI UFRPE Prof. Gustavo Callou gcallou@gmail.com
BSI UFRPE Prof. Gustavo Callou gcallou@gmail.com HelloWorld.java: public class HelloWorld { public static void main (String[] args) { System.out.println( Hello, World ); } } Identificadores são usados
Leia maisESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA
P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA 0 Inicie o ambiente de desenvolvimento integrado
Leia maisJavaScript 2.0X 1.0 3.0X 1.1 4.0 4.05 1.2 4.06 4.61 1.3 5.0 1.4 6.0 1.5
JavaScript Diego R. Frank, Leonardo Seibt FIT Faculdades de Informática de Taquara Fundação Educacional Encosta Inferior do Nordeste Av. Oscar Martins Rangel, 4500 Taquara RS Brasil difrank@terra.com.br,
Leia maisIntrodução à Programação
Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5
Leia maisCapítulo 2: Introdução à Linguagem C
Capítulo 2: Introdução à Linguagem C INF1005 Programação 1 Pontifícia Universidade Católica Departamento de Informática Programa Programa é um algoritmo escrito em uma linguagem de programação. No nosso
Leia maisLista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição
Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:
Leia maisMsC. João Maria MsC. Liviane Melo
Disciplina: Programação Orientada à Objetos AULA 02 Corpo docente: MsC. Alexandro Vladno Edmilson Campos MsC. Fábio Procópio Esp. Felipe Dantas MsC. João Maria MsC. Liviane Melo 2 Tipo Tamanho Alcance
Leia maisAULA 02. 1. Uma linguagem de programação orientada a objetos
AULA 02 TECNOLOGIA JAVA O nome "Java" é usado para referir-se a 1. Uma linguagem de programação orientada a objetos 2. Uma coleção de APIs (classes, componentes, frameworks) para o desenvolvimento de aplicações
Leia maisComandos de repetição For (inicialização; condição de execução; incremento/decremento) { //Código }
Este documento tem o objetivo de demonstrar os comandos e sintaxes básicas da linguagem Java. 1. Alguns passos para criar programas em Java As primeiras coisas que devem ser abordadas para começar a desenvolver
Leia maisIntrodução à linguagem
A Tecnologia Java 1 Introdução à linguagem Origens do JAVA Projecto Green, programação para a electrónica de Consumo (Dezembro 1990): Pouca memória disponível Processadores fracos Arquitecturas muito diferentes
Leia maisMódulo 06 Desenho de Classes
Módulo 06 Desenho de Classes Última Atualização: 13/06/2010 1 Objetivos Definir os conceitos de herança, polimorfismo, sobrecarga (overloading), sobreescrita(overriding) e invocação virtual de métodos.
Leia maisPROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br
PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 5. Tratamento de Exceções Introdução e conceitos Capturando exceção usando
Leia maisPOO Programação Orientada a Objetos. Classes em Java
+ POO Programação Orientada a Objetos Classes em Java + Classes 2 Para que a JVM crie objetos: Ela precisa saber qual classe o objeto pertence Na classe estão definidos os atributos e métodos Programamos
Leia maisCURSO DE PROGRAMAÇÃO EM JAVA
CURSO DE PROGRAMAÇÃO EM JAVA Introdução para Iniciantes Prof. M.Sc. Daniel Calife Índice 1 - A programação e a Linguagem Java. 1.1 1.2 1.3 1.4 Linguagens de Programação Java JDK IDE 2 - Criando o primeiro
Leia maisUNIVERSIDADE FEDERAL DO PARANÁ
CURSO: Ciência da Computação DATA: / / 2013 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 02 APRESENTAÇÃO: Apresentação; conceitos básicos da linguagem java; estrutura
Leia maisProgramação Orientada a Objetos em Java
Programação Orientada a Objetos em Java Rone Ilídio da Silva Universidade Federal de São João del-rei Campus Alto Paraopeba 1:14 1 Objetivo Apresentar os principais conceitos de Programção Orientada a
Leia maisCONVENÇÃO DE CÓDIGO JAVA
CONVENÇÃO DE CÓDIGO JAVA Eligiane Ceron - Abril de 2012 Versão 1.0 Conteúdo Considerações iniciais... 2 Introdução... 2 Extensão de arquivos... 2 Arquivos de código Java... 2 Comentários iniciais... 2
Leia maisUnidade IV: Ponteiros, Referências e Arrays
Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática
Leia maisProgramação por Objectos. Java
Programação por Objectos Java Parte 3: Métodos LEEC@IST Java 1/45 Métodos (1) Sintaxe Qualif Tipo Ident ( [ TipoP IdentP [, TipoP IdentP]* ] ) { [ Variável_local Instrução ]* Qualif: qualificador (visibilidade,
Leia maisJava 1 visão geral. Vitor Vaz da Silva
Java 1 visão geral Vitor Vaz da Silva Introdução 1991 Um grupo de projectistas da Sun Green Team tenta criar uma nova geração de computadores portáteis inteligentes e com grande capacidade de comunicação.
Leia maisComponentes da linguagem C++
Componentes da linguagem C++ C++ é uma linguagem de programação orientada a objetos (OO) que oferece suporte às características OO, além de permitir você realizar outras tarefas, similarmente a outras
Leia maisINTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO
INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO Tópicos Estrutura Básica B de Programas C e C++ Tipos de Dados Variáveis Strings Entrada e Saída de Dados no C e C++ INTRODUÇÃO O C++ aceita
Leia maisJava - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br
Java - Introdução Professor: Vilson Heck Junior vilson.junior@ifsc.edu.br Agenda O que é Java? Sun / Oracle. IDE - NetBeans. Linguagem Java; Maquina Virtual; Atividade Prática. Identificando Elementos
Leia maisProgramação Orientada a Objetos! Java - Fundamentos. Prof. Sérgio Almagro! e-mail: sergio.ricardo.almagro@gmail.com
Programação Orientada a Objetos! Java - Fundamentos Prof. Sérgio Almagro! e-mail: sergio.ricardo.almagro@gmail.com Estrutura de Programação Bibliografia HORSTMANN, Cay S., CORNELL, Gray. Core Java 2 Volume
Leia maisExercícios de Revisão Java Básico
Exercícios de Revisão Java Básico (i) Programação básica (estruturada) 1) Faça um programa para calcular o valor das seguintes expressões: S 1 = 1 1 3 2 5 3 7 99... 4 50 S 2 = 21 50 22 49 23 48...250 1
Leia maisJAVA. Fabrício de Sousa fabbricio7@yahoo.com.br
JAVA Fabrício de Sousa fabbricio7@yahoo.com.br Agenda 2 Características Ambientes de Desenvolvimento Sintaxe Comentários Tipos de dados primitivos Caracteres especiais Variáveis Operadores Aritméticos
Leia maisUNIVERSIDADE FEDERAL DO PARANÁ
CURSO: Ciência da Computação DATA: / / 2013 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 05 APRESENTAÇÃO: Nesta aula vamos ver como se faz a criação de Métodos
Leia maisRoteiro 1: Dados, variáveis, operadores e precedência
1. Introdução Universidade Federal do ABC Disciplina: Processamento da Informação (BC-0505) Assunto: Dados, variáveis, operadores e precedência Roteiro 1: Dados, variáveis, operadores e precedência Nesta
Leia maisProgramação Básica em Arduino Aula 2
Programação Básica em Arduino Aula 2 Execução: Laboratório de Automação e Robótica Móvel Variáveis são lugares (posições) na memória principal que servem para armazenar dados. As variáveis são acessadas
Leia maisUtilizem a classe Aula.java da aula passada:
Introdução à Java Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Código Exemplo da Aula Utilizem a classe Aula.java da aula passada: public class Aula { public static void main(string[]
Leia maisJAVA. Introdução. Marcio de Carvalho Victorino. Page 1 1/40 2/40
JAVA Marcio de Carvalho Victorino 1/40 Introdução 2/40 Page 1 Programação OO Elementos do modelo OO: Abstração: é o processo de abstrair as características essenciais de um objeto real. O conjunto de características
Leia maisProjeto de Software Orientado a Objeto
Projeto de Software Orientado a Objeto Ciclo de Vida de Produto de Software (PLC) Analisando um problema e modelando uma solução Prof. Gilberto B. Oliveira Estágios do Ciclo de Vida de Produto de Software
Leia maisEspecialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares
Especialização em desenvolvimento para web com interfaces ricas Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares Objetivos Conceito de exceções Tratar exceções pelo uso de try, catch e
Leia maisAnálise de Programação
Análise de Programação Conceitos Avançados da Linguagem de Programação Java Prof Gilberto B Oliveira Encapsulamento Proteger o dado dentro de uma classe (capsula segura) Facilita o uso da classe por outros
Leia maisLinguagem Java - Introdução
Linguagem Java - Introdução Identificadores válidos resultado teste01 _numeroclientes $fortuna Identificadores Identificadores inválidos 101dalmatas 34 #x Palavras reservadas abstract assert*** boolean
Leia maisUNIVERSIDADE FEDERAL DO PARANÁ
CURSO: Ciência da Computação DATA: / / 2013 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 03 APRESENTAÇÃO: Hoje vamos conhecer o comando switch, o bloco try catch;
Leia maisJava 2 Standard Edition Como criar classes e objetos
Java 2 Standard Edition Como criar classes e objetos Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora detalhes da construção de classes e objetos Construtores Implicações da
Leia maisJSP - ORIENTADO A OBJETOS
JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...
Leia maisOrientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
Leia maisBacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java
Linguagem Java Objetivos Compreender como desenvolver algoritmos básicos em JAVA Aprender como escrever programas na Linguagem JAVA baseando-se na Linguagem Portugol aprender as sintaxes equivalentes entre
Leia maisProgramação por Objectos. Java
Programação por Objectos Java Parte 2: Classes e objectos LEEC@IST Java 1/24 Classes (1) Sintaxe Qualif* class Ident [ extends IdentC] [ implements IdentI [,IdentI]* ] { [ Atributos Métodos ]* Qualif:
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisOPERADORES E ESTRUTURAS DE CONTROLE
OPERADORES E ESTRUTURAS DE CONTROLE 3.1 Operadores Os operadores indicam o tipo de operação matemática que será executada gerando novos valores a partir de um ou mais operadores. São muito utilizados em
Leia maisESTRUTURA BÁSICA DE UM PROGRAMA JAVA
ESTRUTURA BÁSICA DE UM PROGRAMA JAVA Prof. Angelo Augusto Frozza, M.Sc. // Primeiro programa em Java public class PrimeiroPrograma { public static void main(string [] args) { System.out.println("Programação
Leia mais2. OPERADORES... 6 3. ALGORITMOS, FLUXOGRAMAS E PROGRAMAS... 8 4. FUNÇÕES... 10
1. TIPOS DE DADOS... 3 1.1 DEFINIÇÃO DE DADOS... 3 1.2 - DEFINIÇÃO DE VARIÁVEIS... 3 1.3 - VARIÁVEIS EM C... 3 1.3.1. NOME DAS VARIÁVEIS... 3 1.3.2 - TIPOS BÁSICOS... 3 1.3.3 DECLARAÇÃO DE VARIÁVEIS...
Leia maisResumo da Matéria de Linguagem de Programação. Linguagem C
Resumo da Matéria de Linguagem de Programação Linguagem C Vitor H. Migoto de Gouvêa 2011 Sumário Como instalar um programa para executar o C...3 Sintaxe inicial da Linguagem de Programação C...4 Variáveis
Leia maisAlgoritmos e Programação Estruturada
Algoritmos e Programação Estruturada Virgínia M. Cardoso Linguagem C Criada por Dennis M. Ritchie e Ken Thompson no Laboratório Bell em 1972. A Linguagem C foi baseada na Linguagem B criada por Thompson.
Leia maisMC102 Algoritmos e programação de computadores Aula 3: Variáveis
MC102 Algoritmos e programação de computadores Aula 3: Variáveis Variáveis Variáveis são locais onde armazenamos valores na memória. Toda variável é caracterizada por um nome, que a identifica em um programa,
Leia maisReuso com Herança a e Composiçã
Java 2 Standard Edition Reuso com Herança a e Composiçã ção Helder da Rocha www.argonavis.com.br 1 Como aumentar as chances de reuso Separar as partes que podem mudar das partes que não mudam. Exemplo:
Leia maisGuia de Fatores de Qualidade de OO e Java
Qualiti Software Processes Guia de Fatores de Qualidade de OO e Java Versã o 1.0 Este documento só pode ser utilizado para fins educacionais, no Centro de Informática da Universidade Federal de Pernambuco.
Leia maisProgramação Na Web. Linguagem Java Parte II. break com o nome do bloco. Sintaxe. Nome do bloco. Termina o bloco. António Gonçalves ...
Programação Na Web Linguagem Java Parte II Sintaxe António Gonçalves break com o nome do bloco Nome do bloco Termina o bloco class class Matrix Matrix { private private int[][] int[][] mat; mat; public
Leia maisAULA 12 CLASSES DA API JAVA. Disciplina: Programação Orientada a Objetos Professora: Alba Lopes alba.lopes@ifrn.edu.br
AULA 12 CLASSES DA API JAVA Disciplina: Programação Orientada a Objetos Professora: Alba Lopes alba.lopes@ifrn.edu.br CLASSES DA API JAVA A maioria dos programas de computador que resolvem problemas do
Leia maisDocumentação Usando o Javadoc
Documentação Usando o Javadoc Prof. MSc. João Carlos Pinheiro jcpinheiro@cefet-ma.br Versão 2.1 Última Atualização: 04/2005 1 Comentários e Documentação Comentários em Java Existem três tipos de comentários
Leia maisCapítulo 4. Packages e interfaces
Capítulo 4. Packages e interfaces 1/17 Índice Indice 4.1 - Package 4.2 - Interface 2/17 Índice 4.1 Package 4.1 - Package 4.2 -- Interface 3/17 4.1 Package Package ou pacote está para o Java como as directorias
Leia maisAula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include <iostream>
Aula 1 C é uma linguagem de programação estruturada desenvolvida por Dennis Ritchie nos laboratórios Bell entre 1969 e 1972; Algumas características: É case-sensitive, ou seja, o compilador difere letras
Leia maisAPOSTILA PHP PARTE 1
APOSTILA PHP PARTE 1 1. Introdução O que é PHP? PHP significa: PHP Hypertext Preprocessor. Realmente, o produto foi originalmente chamado de Personal Home Page Tools ; mas como se expandiu em escopo, um
Leia maisOrganização de programas em Java. Vanessa Braganholo vanessa@ic.uff.br
Organização de programas em Java Vanessa Braganholo vanessa@ic.uff.br Vamos programar em Java! Mas... } Como um programa é organizado? } Quais são os tipos de dados disponíveis? } Como variáveis podem
Leia maisJava Como Programar, 8/E
Capítulo 2 Introdução aos aplicativos Java Java Como Programar, 8/E (C) 2010 Pearson Education, Inc. Todos os 2.1 Introdução Programação de aplicativo Java. Utilize as ferramentas do JDK para compilar
Leia maisCurso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura
UFPI CCN DIE Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura O projeto Desenvolver um compilador de um subconjunto básico da linguagem PORTUGOL.
Leia maisKeeper of Knowledge. Capítulo 1 Conceitos Básicos do Java
Capítulo 1 Conceitos Básicos do Java INTRODUÇÃO O objectivo deste tutorial é ensinar as regras básicas de programação em Java e facilitar a aprendizagem dos capítulos que se seguem. Qualquer dúvida sobre
Leia maisObjetivos: Sun recomenda que utilize o nome de domínio da Internet da empresa, para garantir um nome de pacote único
Pacotes e Encapsulamento Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Introdução Permite o agrupamento de classes em uma coleção chamada pacote Um pacote é uma coleção de classes
Leia maisDesenvolvimento OO com Java Orientação a objetos básica
Desenvolvimento OO com Java Orientação a objetos básica Vítor E. Silva Souza (vitor.souza@ufes.br) http://www.inf.ufes.br/~vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal
Leia maisUniversidade Federal de Uberlândia
Universidade Federal de Uberlândia Programação Orientada a Objetos I Introdução a Java Sintaxe básica OO Prof. Fabiano Azevedo Dorça Em Java, cada classe dá origem a um arquivo.java contendo o código fonte.
Leia maisLinguagem C: Estruturas de Controle. Prof. Leonardo Barreto Campos 1
Linguagem C: Estruturas de Controle Prof. Leonardo Barreto Campos 1 Sumário Estrutura de Controle e de Fluxo Comandos de Seleção: O comando if; Ifs Aninhados; A escada if-else-if; A expressão condicional;
Leia maisIntrodução à Programação. Interface, Polimorfismo e Dynamic Binding
Introdução à Programação Interface, Polimorfismo e Dynamic Binding Interface Programador Java PLENO Possuir sólida experiência em programação Desenvolvimento na linguagem JAVA Webservice, Struts ou JSF(desejável)
Leia maisAlgoritmos e Programação II. Sobrecarga
Algoritmos e Programação II Baseado no Material do Prof. Júlio Machado Sobrecarga Em várias linguagens é comum encontrarmos rotinas que fazem basicamente a mesma coisa, porém, têm nomes distintos porque
Leia maisCurso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais
Curso de Java Orientação a objetos e a Linguagem JAVA Roteiro A linguagem Java e a máquina virtual Objetos e Classes Encapsulamento, Herança e Polimorfismo Primeiro Exemplo A Linguagem JAVA Principais
Leia maispublic Agenda() { compromissos = null; } public int getnumerodecompromissos() { if (compromissos==null) return 0; else return compromissos.
import java.util.scanner; class Data... class Compromisso... public class Agenda private Compromisso[] compromissos; private Compromisso[] realoquecompromissos (Compromisso[] vetor, int tamanhodesejado)
Leia mais