Introdução Sintaxe Básica da Linguagem JAVA Faculdade Mauricio de Nassau Linguagem de...

Preview:

Citation preview

Introdução Introdução Sintaxe Básica da Sintaxe Básica da

LinguagemLinguagemJAVAJAVA

Faculdade Mauricio de NassauLinguagem de Programação II

Curso de Engenharia de Telecomunicações

• Revisão• Estrutura Básica• Identificadores• Tipos Primitivos• Operadores

SumárioSumário

O que é Programação O que é Programação Orientada a Objetos ?Orientada a Objetos ?

• É um paradigma de programação de computadores onde se usam classes e objetos, criados a partir de modelos.

ClassesClasses

• São estruturas das linguagens de programação orientadas a objetos para representar determinado modelo.

• Cada classe deve ter um nome que seja facilmente associável ao modelo que a classe representa.

Objetos

• Um objeto ou instância é uma materialização da classe, e assim pode ser usado para representar dados e executar operações.

Principais CaracterísticasPrincipais Características

• Orientada a objetos– Java é uma linguagem puramente

orientada a objetos.• Sem Ponteiros

– Java não possui ponteiros, isto é, não permite a manipulação direta de endereços de memória.

Principais CaracterísticasPrincipais Características

• Coletor de lixo (Garbage Collector)– Possui um mecanismo automático de

gerenciamento de memória.

• Permite Multithreading– Múltiplas rotinas concorrentemente.

Principais CaracterísticasPrincipais Características

• Independente de plataforma– Programas Java são compilados para uma

forma intermediária (bytecodes).

• Tratamento de exceções– Permite o tratamento de situações

excepcionais. – Possui exceções embutidas e permite a

criação de novas exceções.

Principais CaracterísticasPrincipais Características

• Máquina Virtual Java– Utiliza o conceito de máquina virtual;– Camada responsável por interpretar os

bytecodes.

Fases de um programa Fases de um programa JavaJava

Fases de um programa Fases de um programa JavaJava

• Os programas Java normalmente passam por cinco fases para serem executados:– Fase 1 (Edição): Consiste em editar um

arquivo com código em Java e salvá-lo com a extensão .java;

– Fase 2 (Compilação): Comando javac compila o programa. O compilador Java traduz (.java => .class);

Fases de um programa Fases de um programa JavaJava

– Fase 3 (Carga): Carrega o programa na memória antes de ser executado. Carregador de classe, pega o arquivo(s) .class que contém os bytecodes.

– Fase 4 (Verificação): O verificador assegura que os bytecodes são válidos e não violam as restrições de segurança de Java.

Fases de um programa Fases de um programa JavaJava

– Fase 5 (Execução): A JVM máquina virtual Java (Interpretador) interpreta (em tempo de execução) o programa, realizando assim a ação especificada pelo programa.

Estrutura BásicaEstrutura Básica

• Quatro elementos básicos:– Pacotes;– Classes;– Métodos;– Variáveis.

Estrutura BásicaEstrutura BásicaPacotesPacotes

• Classes que compõem o núcleo de funcionalidades Java.

• Package Java é um mecanismo para agrupar classes de finalidades afins ou de uma mesma aplicação.

Estrutura BásicaEstrutura BásicaPacotesPacotes

• Além de facilitar a organização conceitual das classes, permite localizar cada classe necessária durante a execução da aplicação.

• A principal funcionalidade de um pacote Java é evitar a explosão do espaço de nome.

Estrutura BásicaEstrutura BásicaPacotesPacotes

• Entre os principais pacotes oferecidos estão:– java.lang;– java.util;– java.io;– java.net.

Estrutura BásicaEstrutura BásicaPacotesPacotes

• Package é uma coleção de classes e interfaces relacionadas fornecendo proteção de acesso e gerenciamento de nomes de diretórios.

• Usamos a declaração import para acessar essas classes.

import java.lang.*;

Estrutura BásicaEstrutura BásicaPacotesPacotes

• Para colocarmos uma classe em um pacote, deve-se inserir a diretiva package com o nome do pacote no início da classe.

package br.com.cap.pdf.profiler;

Estrutura BásicaEstrutura BásicaCódigo JavaCódigo Java

• Java possui um formato básico para a escrita de códigos. Tal formato é demonstrado abaixo:

Estrutura BásicaEstrutura Básica Código Java Código Java

• linhas 1 e 2: representam comentários. Pode conter qualquer informação relevante;

• linha 3: está em branco, pois Java permite linhas em branco entre os comandos;

Estrutura BásicaEstrutura Básica Código Java Código Java

• linha 4: é a declaração do "nome do programa", case-sensitive (existe diferença entre maiúsculas e minúsculas).

• O arquivo deve ser salvo com o nome (NomeDoPrograma.java).

Estrutura BásicaEstrutura Básica Código Java Código Java

• linhas 5 e 8: a abertura de chave { indica início de bloco;

• linha 8: essa linha indica à Java Virtual Machine que o programa será executado. Os demais programas não conterão o método main();

"Quando um programa Java é executado, o interpretador da JVM executa os comandos que estiverem dentro do bloco indicado pelo

método "static public void main(String)".

Estrutura BásicaEstrutura Básica Código Java Código Java

• linha 9: aqui seria escrito o código propriamente dito;

• linhas 10 e 11: o fechamento de chave } indica fim de bloco.

Estrutura BásicaEstrutura Básica Comentários

• Informação entre os caracteres de comentário será ignorada;– Linha:

//isto é um comentário e inicia com duas barras.int valor; // e pode estar no final da linha

– Bloco:/* Comentário em bloco

Aceita múltiplas linhas Não utilize comentários aninhados */

Estrutura BásicaEstrutura Básica Comentários

• As regras que tratam dos comentários em Java são:– comentários não podem ser aninhados;– não podem ocorrer dentro de strings ou

literais;– as notações /* e */ não tem significado

dentro dos comentários //; – a notação // não tem significado dentro dos

comentários /* e /**.

Estrutura BásicaEstrutura Básica Comentários

• javadoc:– É tipo especial de comentário, utilizado

para gerar documentação da API do código Java.

/** isto é um comentário para geração de javadoc */

Estrutura BásicaEstrutura Básica Identificadores

• São usados para determinar nomes de variáveis, atributos de classe ou instância, parâmetros e métodos;

• Os identificadores em Java iniciam com:– uma letra;– um sublinhado (_);– ou um sinal de dólar "$";

Estrutura BásicaEstrutura Básica Identificadores

• Podem possuir números após o primeiro caractere da palavra;

• Case-sensitive existe uma diferenciação entre letras maiúsculas e minúsculas.– private String Nome;– private String nome;

Estrutura BásicaEstrutura Básica Identificadores

• Convenções:– Constantes com todas as letras em

maiúsculo: CONSTANTE

– Variáveis e métodos começam com letra minúscula: variável

– Classes e interfaces começam com letra maiúscula: Classe

Estrutura BásicaEstrutura Básica Identificadores

• Convenções:– Se o identificador for um nome composto

por mais de uma palavra, cada nova palavra começa com letra maiúscula:

variávelComNomeCompostoenderecoResidencial

ClasseComNomeCompostoBancoBrasil

Estrutura BásicaEstrutura Básica Tipos Primitivos

• Existem 8 tipos primitivos em Java :– Seis deles são numéricos;– Os outros dois são caractere e booleano.

• Os tipos Array e String não são tipos primitivos, são Classes e serão em outra oportunidade.

Estrutura BásicaEstrutura Básica Tipos Primitivos

• Tipos Numéricos Inteiros:

– Java é portável, esses valores são os mesmos para qualquer plataforma de hardware.

Tipo Tamanho Faixa de Valoresint 4 bytes -2.147.483.648 até

2.147.483.647short 2 bytes -32.768 até 32.767byte 1 byte -128 até 127long 8 bytes -9.223.372.036.854.775.808 até

9.223.373.036.854.775.807

Estrutura BásicaEstrutura Básica Tipos Primitivos

• Tipos Numéricos Flutuantes:– Valores numéricos com ponto flutuante:

– números do tipo float aparecem com um sufixo F. (2.04F2.04F).

Tipo Tamanho Faixa de Valoresfloat 4 bytes +/- 3.40282347E+38F

(aproximandamente 7 dígitossignificativos)

double 8 bytes +/- 1.79769313486231570E+308(15 dígitos significativos)

Estrutura BásicaEstrutura Básica Tipos Primitivos

• Tipos Numéricos de Ponto Flutuante:

– números do tipo float aparecem com um sufixo F. (2.04F2.04F).

Tipo Tamanho Faixa de Valoresfloat 4 bytes +/- 3.40282347E+38F

(aproximandamente 7 dígitossignificativos)

double 8 bytes +/- 1.79769313486231570E+308(15 dígitos significativos)

Estrutura BásicaEstrutura Básica Tipos Primitivos

• Tipo caractere:– Representa apenas uma letra ou número;

– Esse tipo serve para representar caracteres usando a tabela Unicode;

Tipo Tamanho Faixa de Valoreschar 2 bytes 0 até 65536

Estrutura BásicaEstrutura Básica Tipos Primitivos

• Tipo caractere:– Dessa tabela faz parte a tabela ASCII e

mais alguns caracteres especiais;

– O tipo char é sempre representado por aspas simples (‘h’);

– Caracteres representados por aspas duplas (“h”) na verdade são Strings.

Estrutura BásicaEstrutura Básica Tipos Primitivos

• Tipo booleano:– Possui apenas dois valores, true ou false;

– É usado apenas para testes lógicos.

Tipo Tamanho Faixa de ValoresBoolean 1 bit true ou false

Estrutura BásicaEstrutura Básica Tipos Primitivos

• Valores Padrão:Tipo Valorbyte 0short 0int 0long 0float 0.0double 0.0boolean falsechar \u0000

Estrutura BásicaEstrutura Básica Operadores

• Atribuição:– Feita através do operador “=”: <identificador> = <valor>;

– Declaração da variável: float umFloat = 0.5; char caracter = ‘i’;– Após declaração da variável: idade = 18; existe = true;

Estrutura BásicaEstrutura Básica Operadores

• Aritméticos:– Efetuam operações aritméticas em um ou

mais tipos primitivos.

Operador Nome Exemplo+ Adição 7+10- Subtração 8-2* Multiplicação 0.27*3/ Divisão 100/40% Módulo 57%5

Estrutura BásicaEstrutura Básica Operadores

• Relacionais:– Testes e condições de entrada em um

fluxo do programa.

Operador Nome Exemplo== Igual 10==10!= Diferente 8!=2< Menor 4<6> Maior 10>9<= Menor ou Igual 3<=3>= Maior ou Igual 5>=3

Estrutura BásicaEstrutura Básica Operadores

• Lógicos:– Testes e condições de entrada em um

fluxo do programa.

Operador Nome Exemplo&& AND (0 < 2) && ( 10 > 5)|| OR ( 10 >11 ) || (10 < 12 )! NOT !( 1= = 4 )^ XOR ( 1!= 0) ^ ( 3< 2 )?: Condicional 3>2? (comando):

(comando)

Estrutura BásicaEstrutura Básica Operadores

• Atribuição Composta:– Formada com operadores aritméticos ou

lógicos; a += b; // Equivalente a: a = a + b; a *= 3; // Equivalente a: a = a * 3;

Estrutura BásicaEstrutura Básica Operadores

• Incremento e Decremento:– Incremento é dado pelo operador ++ e o

decremento pelo operador --;

– Pode ser feito antes ou depois da utilização da variável;

Estrutura BásicaEstrutura Básica Operadores

• Incremento e Decremento:– Colocando–se antes (++var ou --var), será

realizado o incremento ou decremento e depois o valor da variável será utilizado;

– Depois (var++ ou var--), faz com que o valor da variável seja utilizado primeiro e o incremento ou decremento seja feito depois.

Estrutura BásicaEstrutura Básica Operadores

• Precedência:– Operadores em ordem decrescente de

precedência, isto é, o que está mais acima ocorre antes: ++ - - !

* / %+ -

<> <= >=== !=

^&&||

= *= /= %= += -=

Recommended