Aula1 Java

34
Faculdade IBTA Orientação a Objeto - JAVA Prof(a) Ms. Angela Perez Barcellos

Transcript of Aula1 Java

Page 1: Aula1 Java

Faculdade IBTA

Orientação a Objeto - JAVA

Prof(a) Ms. Angela Perez Barcellos

Page 2: Aula1 Java

Aula 1:Paradigma Orientado a Objetos

Paradigma é a filosofia adotada na construção de software.

Diminui a distância entre a modelagem computacional e o mundo real.

Surgiu na tentativa de solucionar problemas complexos existentes através do desenvolvimento de softwares menos complexos, confiáveis e com baixo custo de desenvolvimento e manutenção.

Page 3: Aula1 Java

Introdução aos Aplicativos Java

O termo Java é utilizado, geralmente, quandonos referimos a:Linguagem de programação orientada a

objetos;Ambiente de desenvolvimento composto

pelo compilador, interpretador, gerador de documentação e etc.;

Ambiente de execução que pode ser praticamente qualquer máquina que possua Java Runtime Environment (JRE) instalado;

Page 4: Aula1 Java

Introdução aos Aplicativos Java

A linguagem de programação Java é uma

linguagem de alto-nível com as seguintes

características:Simples: O aprendizado da

linguagem de programação Java pode ser feito em um curto período de tempo;

Orientada a objetos: Desde o início do seu desenvolvimento esta linguagem foi projetada para ser orientada a objetos;

Page 5: Aula1 Java

Introdução aos Aplicativos Java

Familiar: A linguagem Java é muito familiar para os programadores C/C++.

Robusta: Ela foi pensada para o desenvolvimento de softwares confiáveis, provendo verificações tanto em tempo de execução quanto compilação, o coletor de lixo responsabiliza-se pela limpeza da memória quando houver necessidade;

Page 6: Aula1 Java

Introdução aos Aplicativos Java

Segura: Aplicações Java são executadas em ambiente próprio (JRE) o que inviabiliza a intrusão de código malicioso;

Portável: Programas desenvolvidos nesta linguagem podem ser executados em praticamente qualquer máquina desde que esta possua o JRE instalado;

Page 7: Aula1 Java

Máquina Virtual Java - JVMA máquina virtual java (JVM) é uma

máquina imaginária que emula uma aplicação em uma máquina real.É a JVM que permite a portabilidade

do código Java, isto ocorre porque todo código Java é compilado para um formato intermediário, bytecode, este formato é então interpretado pela JVM.

Page 8: Aula1 Java

Máquina Virtual Java - JVMExistem diversas JVMs cada uma

delas destinada a um tipo de sistema operacional (Windows, Linux e etc.), desta forma sendo o código da aplicação Java, bytecode, um código interpretado pela JVM, podemos desenvolver uma aplicação sem nos preocuparmos onde ela será executada pois sabemos que existindo a JVM instalada nosso código será executável.

Page 9: Aula1 Java

Coletor de LixoLinguagens de programação nos

permitem alocar espaço na memória em tempo de execução, uma vez encerrado o programa deve haver uma maneira de liberar este espaço para que outras aplicações possam utilizá-lo.

Page 10: Aula1 Java

Coletor de LixoC e C++ a responsabilidade de

liberação de memória é do programador;

Na linguagem de programação java a responsabilidade pela gerência da memória é do coletor de lixo.

O Coletor de lixo é um processo que roda em segundo plano e é responsável pela liberação de memória alocada por variáveis que não mais serão utilizadas pela aplicação.

Page 11: Aula1 Java

Fase de um Programa Java

1. Criação do código fonte (Programa.java);2. Compilação do código fonte e geração do bytecode (Programa.class);3. Interpretação do bytecode pela máquina virtual;4. Conversão do bytecode em linguagem de máquina

Page 12: Aula1 Java

JRE e JDKJRE: O Java Runtime Environment

contém tudo aquilo que um usuário comum precisa para executar uma aplicação Java (JVM e bibliotecas), como o próprio nome diz é o “Ambiente de execução Java”.

JDK: O Java Development Kit é composto pelo JRE e um conjunto de ferramentas úteis ao desenvolvedor Java.

Page 13: Aula1 Java

Ferramentas do JDKjavac: Compilador da linguagem Java;java: Interpretador Java;jdb: Debugador Java;java -prof: Interpretador com opção para gerar

estatísticas sobre o uso dos métodos;javadoc: Gerador de documentação;jar: Ferramenta que comprime, lista e expande;appletviewer: Permite a execução e debug de

applets sem browser;javap: Permite ler a interface pública das

classes;extcheck: Detecta conflitos em arquivos Jar

Page 14: Aula1 Java

Introdução aos Aplicativos Java – Definições.

Classe: É a estrutura que, quando construída,

produzirá um objeto, dizemos “todo objeto é

instância de alguma classe”.

Objeto: Em tempo de execução, quando a

JVM encontra a palavra reservada new é

criada uma instância da classe apropriada;

Page 15: Aula1 Java

Introdução aos Aplicativos Java – Definições.

Estado: É definido pelo conjunto de atributos de uma classe, isto é, cada instância da classe possuirá um estado independente dos demais objetos.

Comportamento: São os métodos da classe, comportamento é aquilo que uma classe faz (algoritmos), muitas vezes, um determinado comportamento (método) muda o estado do objeto, isto é, após a execução do método um ou mais atributos mudaram de valor;

Page 16: Aula1 Java

Introdução aos Aplicativos Java

//Programa de Impressão de Texto

public class Welcome{ //método principal inicia a execução do aplicativo

Javapublic static void main( String[ ] args ){ System.out.println(“ Primeiro Aplicativo

Java”); //Instrução} // fim do método main} //fim da classe Welcome

Page 17: Aula1 Java

Tipos de ComentáriosOs comentários são ignorados

pelo compilador;Um comentário que começa

com // é chamado de comentário de fim de linha, ele termina no fim da linha em que aparece.

Comentários tradicionais podem se estender por várias linhas e são delimitados por /* e */.

Page 18: Aula1 Java

Tipos de Comentários

Os comentários da Javadoc, delimitados por /** e */, permite o programa utilitário javadoc gerar páginas em HTML com base nesses comentários.

Espaços em branco são ignorados pelo compilador.

Page 19: Aula1 Java

Erro de SintaxeOcorre quando o compilador encontra

um código que viola das regras da linguagem do Java.

OBS: O java faz distinção entre letras maiúsculas e minúsculas.

Ex: a1 e A1 são identificadores diferentes,porém válidos.

Page 20: Aula1 Java

Declarando uma Classe public class Welcome Todo programa consiste em pelo menosuma classe definida pelo programador; A palavra-chave(palavra reservada) classintroduz uma declaração de classe eescritas em letras minúsculas; Por convenção, nomes de classes iniciamcom a primeira letra maiúscula; - Nome de Classe = Identificador (não iniciacom dígito e não contêm espaços); Uma classe public deve ser salva em um

arquivocom o mesmo nome da classe. Ex: Para a classe

acimao arquivo chamará Welcome.java

Page 21: Aula1 Java

Palavras-Chave e Palavras Reservadas

abstract void continue case assert for default catch int do final new implements long return protected public short… boolean char extends double if finally interface class private else static float this byte

Page 22: Aula1 Java

public static void main( String[ ] args ) Ponto de partida de cada aplicativo java; Void: indica que um método realizará umatarefa, mas não retornará nenhuma Informação; Método Estático: Faz uso dos recursos de uma

classepara realizar sua tarefa sem estar associado a umObjeto. (String [ ] args): matriz de argumentos de linha

de comando fornecidas para o programa do tipo string.

System.out.println(“Primeiro Aplicativo Java”); Objeto System.out: objeto de saída padrão Imprime na tela e muda de linha o cursor.

Page 23: Aula1 Java

Exibindo múltiplas instruções

//Programa de Impressão de Texto

public class Welcome2{ //método principal inicia a execução do aplicativo

Javapublic static void main( String[ ] args ){ System.out.print(“ Olá, ”); //Instrução System.out.println(“ Primeiro Aplicativo Java”); } // fim do método main} //fim da classe Welcome

Saída: Olá, Primeiro Aplicativo Java.

Page 24: Aula1 Java

Caractere de Escape - \npublic class Welcome3{ //método principal inicia a execução do

aplicativo Javapublic static void main( String[ ] args ){System.out.println(“ Primeiro\n Aplicativo\

nJava”); } // fim do método main}Saída: Primeiro Aplicativo Java

Page 25: Aula1 Java

Caractere de Escape\n : Nova linha;\t : Tabulação horizontal;\r : Posiciona o cursor da tela no

início da linha atual;\\ : Utilizada para imprimir um

caractere de barra invertida; \” : Imprime caractere de aspas

duplas. Ex: (“\ “teste\””); Saída: “teste”

Page 26: Aula1 Java

Exibindo texto com printfSystem.out.printf ( f significa formatted), ou

seja, exibe os dados formatados.

public class Welcome4{ public static void main( String[ ] args ){System.out.printf(“%s\n%s\n”, “Olá”, “Primeiro

Aplicativo Java”); }}Saída: Olá Primeiro Aplicativo Java

Page 27: Aula1 Java

Exibindo texto com printfEspecificador de formato iniciam

com sinal de % e são seguidos por um caractere que representa o tipo de dados;

Os especificadores de formato %s é um marcador de lugar para uma string.

O método printf tem a forma:printf(string-de-formato, lista-de-

argumentos)

Page 28: Aula1 Java

Somando Inteiros import java.util.Scanner; public class Adicao {

public static void main(String[] args) { Scanner input = new Scanner(System.in); //declaração de

variável que especifica o nome(input) e o tipo (Scanner – permite o programa ler os dados).

int numero1; int numero2; int adicao; System.out.println("Entre com o número 1"); numero1 = input.nextInt(); System.out.println("Entre com o número 2"); numero2 = input.nextInt(); adicao = numero1+numero2; System.out.printf("A soma é: %d\n", adicao); } }

Page 29: Aula1 Java

AritméticaOs operadores aritméticos são: +,

-, *, / e %;A divisão de inteiros produz um

quociente inteiro;O operador, %, fornece o resto

depois da divisão;Se uma expressão contiver

parênteses aninhados, o conjunto mais interno será avaliado primeiro;

Page 30: Aula1 Java

Operadores Aritméticos, Relacionais e de Igualdade.

Operadores Associatividade

* / % da esquerda para a direita

+ - da esquerda para a direita

== != da esquerda para a direita

= da direita para a esquerda

Operadores de Igualdade Exemplo

== X == Y

!= X != Y

Operadores Relacionais Exemplo

> X > Y

< X < Y

>= X >= Y

<= X <= Y

Page 31: Aula1 Java

import java.util.Scanner; public class Comparar { public static void main(String[] args) { Scanner input = new Scanner(System.in); int numero1; int numero2; System.out.println("Entre com o número 1"); numero1 = input.nextInt(); System.out.println("Entre com o número 2"); numero2 = input.nextInt(); if(numero1==numero2) System.out.printf("%d = %d\n", numero1,numero2); if(numero1!=numero2) System.out.printf("%d != %d\n", numero1,numero2); if(numero1<numero2) System.out.printf("%d < %d\n", numero1,numero2); if(numero1>numero2) System.out.printf("%d > %d\n", numero1,numero2); if(numero1<=numero2) System.out.printf("%d <= %d\n", numero1,numero2); if(numero1>=numero2) System.out.printf("%d >= %d\n", numero1,numero2); } }

Page 32: Aula1 Java

Exercícios de Revisão1)Preencha as lacunas em cada uma das seguintes afirmações:

a) Um(a)_____no corpo de cada método e um(a)______termina o corpo

de cada método.

b) A instrução____é utilizada para tomar decisões.

c) _______em um comentário de fim de linha.

d)_______são reservados para uso pelo Java.

e) Aplicativos Java iniciam a execução no método_______.

f) Os métodos_______,________e_________exibem informações em

uma janela de comando.

2) Escreva instruções para realizar cada uma das tarefas a seguir:

a) Declare que as variáveis numero, idade e soma serão do tipo int

b) Solicite que o usuário insira um inteiro

c) Insira um inteiro e atribua o resultado à variável int value. Suponha que

variável Scanner input possa ser utilizada para ler um valor digitado pelo usuário.

d) Se a variável numero não for igual a 7, exiba “Valor inválido”.

Page 33: Aula1 Java

Exercícios de Revisão3) Identifique e corrija os erros em cada uma das seguintes instruções:

a) if ( c < 7 );

System.out.println (“ c é menor do que 7”);

b) if ( c =>7 )

System.out.println (“ c maior ou igual a 7”);

4) Escreva declarações, instruções ou comentários que realizam cada uma

das tarefas a seguir:

a) Comente que um programa calculará o produto de três inteiros.

b) Crie um Scanner chamado input que lê valores a partir da entrada padrão

c) Declare as variáveis x, y, z e result como tipo int.

d) Solicite que o usuário insira o primeiro inteiro.

e) Leia o primeiro inteiro digitado e armazene-o na variável x.

f) Solicite que o usuário insira o segundo inteiro.

g) Leia o segundo inteiro digitado e armazene-o na variável y.

h) Solicite que o usuário insira o terceiro inteiro.

i) Leia o terceiro inteiro digitado e armazene-o na variável z.

j) Compute o produto dos três e atribua o resultado a variável result.

k) Exiba a mensagem: “O produto é: “ seguida pelo valor da variável result.

Page 34: Aula1 Java

Exercícios de Revisão5) Escreva um aplicativo que solicita ao usuário

inserir dois inteiros, obtém do usuário esses números e imprime sua soma, produto, diferença e quociente (divisão).

6) Escreva um aplicativo que solicita ao usuário inserir dois inteiros, obtém do usuário esses números e exiba o número maior seguido pelas palavras “é maior”. Se os números forem iguais, imprime a mensagem “Estes números são iguais”.

7) Escreva um aplicativo que insere três inteiros digitados pelo usuário e exibe a soma, média, produto e os números menores e maiores.

8) Escreva um aplicativo que lê um inteiro, determina e imprime se ele é ímpar ou par.