Wagner Santos C. de Jesus

Slides:



Advertisements
Apresentações semelhantes
Estruturação de Linguagens (Pascal e C++)
Advertisements

Programação em Java Prof. Maurício Braga
Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Ferramenta de Desenvolvimento Material II-Bimestre Conceitos de lógica.
C/C++ para Sistemas Operacionais Professor: André Luis Meneses Silva /msn: Página:
Paulo Marques Hernâni Pedroso
Histórico do Java 1990 James Gosling (Sun Microsystems)
Introdução a Programação Renata Freire
PRDS - Programa de Residência em Desenvolvimento de Software Laboratório de Engenharia de Software (LES) da PUC-Rio Carlos Lucena
Orientação a Objetos: Encapsulamento e Classificação
Linguagens de Programação Orientadas a Objetos
Programação Básica em Java
Polimorfismo e Classes Abstratas Profa
Expressões, controle de fluxo, wrappers e strings Profa
Alexandre Parra Site: Linguagem Java Alexandre Parra Site:
Linguagem de Programação II
Wagner Santos C. de Jesus Alberson Wander Sá dos Santos
Wagner Santos C. de Jesus
Wagner Santos C. de Jesus
Wagner Santos C. de Jesus
1 Professor Rogério B. de Andrade - Aula 001- Dez/2008 Técnicas e Linguagem de Programação.
Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Ferramenta de Desenvolvimento Material I-Bimestre Introdução Programação.
Wagner Santos C. de Jesus
Laboratório de Programação de Computadores I
Herança e Polimorfismo
Paradigmas de Linguagens de Programação Paradima da Programação Orientada à Objetos Professor: Armando Hage Belém-2008.
JAVA: Conceitos Iniciais
Unidade I: “Dê um mergulho rápido”
Aula prática 8 Ponteiros Monitoria de Introdução à Programação
Conceitos básicos de orientação a objetos
JAVA Linguagem Ambiente de Desenvolvimento
1 A Tecnologia Java. 2 Introdução à linguagem Origens do JAVA Projecto Green, programação para a electrónica de Consumo (Dezembro 1990): Pouca memória.
Programação I Aula 2 (Métodos)
Seminário 1: Revisão de C
Fábio de Oliveira Borges
OPERADORESOPERADORES SCJP – Otimize-TI. Operadores Java Resultado: Maioria das operações é um booleano ou numérico. Não podem ser sobrecarregados (Existem.
Introdução à Linguagem Java
Cristiano Soares Rafael di Lego Roberto Nemirovsky Thiago Nascimento
Programação em C++ Compiladores
Java Bytecode Software Básico Mitsuo Takaki.
Professor: Márcio Amador
Aula 1 - Fundamentos Java SE Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros – Agosto/2009.
Programação Orientada a Objetos Curso de Engenharia da Computação Parte 03 – Conceitos Básicos III Prof. Fabricio Mota Oliveira
Aulas 2 e 3 – Java – Prof. Marcelo Heitor # O método main e argumentos na linha de comando; # Fluxo padrão de entrada e saída; # A classe JOptionPane;
Wagner Santos C. de Jesus
Aula prática 14 Orientação a Objetos – C++ Parte 2
Programação Orientada a Objetos - Java
UTFPR – Campus Curitiba - DAELN Cursos de Eng. Eletrônica/Eng
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Java Básico Instrutor: Davi Pires
Linguagens de Programação II
JAVA Sintaxe.
Certificação Marco Antonio. Introdução A compreensão desse capítulo é muito importante pois trata de um assunto essencial em qualquer linguagem de programação,
Aula Prática 1 Monitoria IP/CC (~if669) (A partir do slide elaborado por Luís Gabriel)
Introdução JAVA Faculdade Mauricio de Nassau
Paradigmas de Programação –Aula 7 Lab 2 Professores: Eduardo Mantovani Fábio Paula Santos.
Conceitos Básicos e Manipulação de Objetos
Fundamentos de linguagens de programação
Copyright 1998, Departamento de Informática da UFPE. Todos os direitos reservados sob a legislação em vigor. Variáveis e métodos estáticos, Passagem de.
Introdução a Programação Orientada a Objetos
Java Disciplina: Programação II Professora: Mai-Ly Vanessa.
Programação em Java Prof. Edvan Chaves.
Introdução Sintaxe Básica da Linguagem JAVA
Ferramentas para desenvolvimento Java
Raniere ferreira do prado
Prof. Cristian Rodrigo Dalcico. Linguagem de Programação Java Aula 1.
Estrutura de Dados Prof. André Cypriano M. Costa
1. 2 Prof. Maurício Rodrigues de Morais Programação Orientada a Objetos II.
Java é uma linguagem de programação e uma plataforma de computação lançada pela primeira vez pela Sun Microsystems em É a tecnologia que capacita.
Programação para Internet Rica– Aula 05 Prof. Me. Ronnison Reges Vidal.
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
Transcrição da apresentação:

Wagner Santos C. de Jesus Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Programação Orientada a Objetos - III Material I-Bimestre Fundamentos da linguagem Java (Programação Orientada a Objetos) Site : http://www1.univap.br/~wagner Prof. Responsável Wagner Santos C. de Jesus

Introdução a Linguagem Java Linguagem Java tem origem com nome Inspirado em uma xícara de café quente por durante as fases de projeto da linguagem os programadores tomavam muito café. Mascote Símbolo

Aplicações Genéricas (comercial ou científica) Criação de servidores (redes) Criação de Interfaces para jogos Criação de Framewoks Criação de softwares para área de Biociências. Criação de softwares para celulares Criação de softwares embarcados

Programador Canadense A Linguagem Java Desenvolvida na década de 90 por uma equipe de programadores chefiada por James Gosling, na empresa Sun Microsystems. Os mentores do projeto eram Patrick Naughton, Mike Sheridan, e James Gosling. Programador Canadense Foto 2005

Histórico sobre (Java) A linguagem Java se tornou oficial a todo o mundo em 1995, depois que a Netscape a licenciou para o uso do navegador Navigator. Atualmente existem outras opções para a Web mais quando a linguagem Java foi criada ela revolucionou a natureza de páginas na web. Os (Applets) Java. Essa linguagem e um produto criado pela empresa norte americana Sun Microsystem.

As ferramentas de programação Rad (Desenvolvimento Rápido de Aplicações) para Java. Jbuilder empresa (Borland) Forte empresa (Sun) FreeWare SunSoft (Sun) Java WorkShop (sun) JDK, JSDK (Sun) FreeWare (*) Visual Café (Symantec) VisualAge for Java (IBM) LJ-Java (Colégio Técnico A.T.F.) Univap - 2002

Principais Características da Linguagem Java A linguagem Java foi projetada tendo em vista os seguintes objetivos: Orientação a objeto - Baseado no modelo de Smalltalk e Simula67; Portabilidade - Independência de plataforma - "write once run anywhere"; Recursos de Rede - Possui extensa biblioteca de rotinas que facilitam a cooperação com protocolos TCP/IP, como HTTP e FTP; Segurança - Pode executar programas via rede com restrições de execução; Além disso, podem-se destacar outras vantagens apresentadas pela linguagem: Sintaxe similar a Linguagem C/C++ e principalmente, a C#. Facilidades de Internacionalização - Suporta nativamente caracteres Unicode; Simplicidade na especificação, tanto da linguagem como do "ambiente" de execução (JVM); É distribuída com um vasto conjunto de bibliotecas (ou APIs); Possui facilidades para criação de programas distribuídos e multitarefa (múltiplas linhas de execução num mesmo programa); Desalocação de memória automática por processo de coletor de lixo (garbage collector); Carga Dinâmica de Código - Programas em Java são formados por uma coleção de classes armazenadas independentemente e que podem ser carregadas no momento de utilização.

Exemplo : Um programa tradicional Compilado.(Delphi) Um programa Java atinge essa independência através de um recurso denominado como Máquina Virtual Java(JVM). Exemplo : Um programa tradicional Compilado.(Delphi)

O que (JVM) O termo em Java para representar um processo parecido com o de cima mais de forma que qualquer plataforma consiga entender e executar suas instruções é chamado de ByteCode. (Que vem a ser a máquina virtual Java). Que é conhecida como interpretador Java ou runtime Java.

Funcionamento da JVM Compile Runtime SO Class Loader Byte Code Verifier Javac hello.java interpretador Code Generator Hello.class RunTime hardware

O que é o ByteCode Obs : O bytecode é semelhante ao código de máquina produzido por outras linguagens, mas ele não é específico de nenhum processador. Ele acrescenta um nível entre o código-fonte e o código de Máquina.

Programa Multiplataforma da Linguagem Java.

A linguagem Java é Orientada a Objetos. A programação Orientada a Objetos - Também chamada(OOP) é um modo de conceituar um programa de computador como um conjunto de objetos que se interagem. Para alguns, ela é apenas um modo de organizar programas em qualquer linguagem pode ser usada para criar programas orientados a objetos.

Introdução ao Conceito de Orientação à Objetos

Classe Vem a ser uma estrutura de dados criada para dar origem ou modelar um objeto. Carro Propriedades Marcha Freio Embreagem Motor

Método : Método vem a ser um grupo de instruções em uma classe que define como os objetos da classe se comportarão. Os métodos são análogos às funções em outras linguagens.

Método da classe carro Devem ser descritos com uma ação (verbo) que podem controlar o estado do objeto. Exemplo : Mudar_Marcha(estado_marcha) Marcha = estado_marcha{0,1,2,3,4....} Freiar_carro(estado_freio) Freio = estado_freio{true,false}

Estrutura de uma classe Carro Propriedades Marcha Freio Embreagem Motor Métodos Mudar_Marcha(..) Freiar_Carro(..)

Objetos É uma instância de uma classe. Um objeto é capaz de armazenar estados através de seus atributos e reagir a mensagens enviadas a ele, assim como se relacionar e enviar mensagens a outros objetos.

Exemplo de objeto Carro obj_carro1 = Carro () obj_carro1.Freiar_carro(true) obj_carro1.Mudar_Marcha(3) obj_carro2.Freiar_carro(false)

Herança Herança (ou generalização) é o mecanismo pelo qual uma classe (sub-classe) pode estender outra classe (super-classe), aproveitando seus comportamentos (métodos) e variáveis possíveis (atributos). Há Herança múltipla quando uma sub-classe possui mais de uma super-classe. Essa relação é normalmente chamada de relação "é um". Um exemplo de herança: Mamífero é super-classe de Humano. Ou seja, um Humano é um mamífero.

Estrutura de Herança Veiculo Propriedades Marcha Freio Métodos Mudar_Marcha(..) Freiar_Carro(..)

Exemplo: Herança Veiculo Moto Carro Bicicleta

Polimorfismo Polimorfismo é o princípio pelo qual duas ou mais classes derivadas de uma mesma superclasse podem invocar métodos que têm a mesma assinatura (lista de parâmetros e retorno) mas comportamentos distintos, especializados para cada classe derivada, usando para tanto uma referência a um objeto do tipo da superclasse. A decisão sobre qual o método que deve ser selecionado, de acordo com o tipo da classe derivada, é tomada em tempo de execução, através do mecanismo de ligação tardia. No caso de polimorfismo, é necessário que os métodos tenham exatamente a mesma identificação, sendo utilizado o mecanismo de redefinição de métodos. Esse mecanismo de redefinição não deve ser confundido com o mecanismo de sobrecarga de métodos.

Exemplo: Polimorfismo Herda Carro Veiculo Métodos Mudar_Marcha(..) Freiar_Carro(..)

Polimorfismo Podem haver implementações diferentes para o mesmo método. Animal Barulho() Gato Cachorro Cavalo Barulho() Miar Barulho() Latir Barulho() Relinchar

Polimorfismo ou sobrecarga parâmetros : Mudar_Marcha(bool estado_marcha) Mudar_Marcha(char estado_marcha)

Introdução a Programação em Java

Definindo um programa em Java Classes : Todo programa na linguagem Java é uma classe que permite nela atribuir métodos e objetos pertencentes a ela. Uma classe vem a ser um modelo para o objeto que contém variáveis para descrevê-los e métodos para descrever como eles se comportam. As Classes podem herdar variáveis e métodos de outras classes.

Tipos Básicos Os tipos básicos de dados em Java são String, (Alfanuméricos), int (números Inteiros) e double (números com casas decimais) boolean(Operadores true, false).

Exemplo de declaração de tipos em Java. String a = "null"; (Cria a variável a para receber uma String) int x = 0; (Cria a variável x para receber um inteiro). boolean teste = true; (Cria a variável teste para receber um boolean). double lista = 2.3; (Cria a variável lista para receber um número fracionário). Obs : poderá ser criada a variável sem atribuir valores para a mesma em alguns casos. Exemplo: String x;

Operadores Aritméticos do Java. (+) - soma (-) - Subtração (*) - Multiplicação (/) - Divisão (%) - Módulo (Resto da Divisão)

Exemplo de Operações : int a=3; a *= 5; // multiplica o valor da variável a por 5 o resultado será 15. int k = 3; int j = 2; int m = k % j; // O resto da divisão de três por 2 é igual 1 portanto o resultado será 1.

Operadores Relacionais. >- Maior que < - Menor que = = - Igual a ( somente para números) != - Diferente de >= - Maior ou Igual <= - Menor ou Igual

Operadores Lógicos. && - and || - or ! - not ? : - Abreviação do if/then/else

Exemplo de Operador ?: int a = 5; int b = 7; boolean valor = b > a ? true : false;

Operadores de Incremento e Decremento. ++ => Equivalente à x++ / x = x + 1 _ _ => Equivalente à y-- / y = y - 1

Estruturas de Controle da linguagem Java. Em Java como em qualquer linguagem temos as três estruturas básicas de programação são elas. a) Condição b) Atribuição c) Repetição

Se a for igual a 3. Exemplo. b = a++ (O valor da variável b será 3 e da variável a = 4). b = ++a ( O valor da variával b será 4 e da variável a = 4). Obs : Idem para operação de subtração

if( ) - Analisa se uma condição é verdadeira ou falsa. Sintaxe : if (<condição>) { <Bloco de Instruções-1> } else { <Bloco de Instruções-2> } Obs : Em Java o símbolo ( { )- Representa Begin e ( } ) -Representa end

Exemplo : if() int a = 1; if( a == 5) System.out.println("Valor de (a) esta Correto"); else System.out.println("Valor de (a) esta Invalido !!!!"); Obs : A classe System.out.Println() permite imprimir uma informação no video.(saida padrão)

while( ) - Cria uma repetição condicional. Sintaxe : while( <condição> ) { <Instrução> }

Exemplo: while() int a = 1; while( a <= 5) { System.out.println(a); }

for ( ) - Cria uma repetição sequêncial mediante a uma condição. Sintaxe : for (<variável de inicialização>;< condição >;<variável de incremento>) { <Bloco de Instruções> }

for(int i=1;i<=5;i++) { System.out.println(i); } Exemplo : for() for(int i=1;i<=5;i++) { System.out.println(i); }

Observação Importante : Todos os comandos da linguagem Java devem estar escritos em letras minúsculas. Comandos break e continue. Exemplo do comando break: int a=1; while(a <= 5) { if(a == 3) break; System.out.println(a); a++; }

Exemplo do comando continue: int a=1; while(a <= 5) { if(a = = 3) { a=1; continue; } System.out.println(a); a++;

Usar a estrutura switch(), que corresponde ao case do delphi o select case VB. Exemplo: switch(<Varm>) { case valor1 : ..................... break; case valor2 : ........................ case valor3 : default : }

Exemplo. switch switch(opcao) { case 1 : System.out.println("UM"); break; case 2 : System.out.println("DOIS"); case 3 : System.out.println("TRÊS"); default : System.out.println("Nenhum desses números foi teclado !!!!"); }

Estrutura de um programa em Java class : Declara uma classe em Java. Como todo programa em Java vem a ser uma classe então toda a vez que formos escrever um programa Java devemos usar o comando class que declara uma classe.

Exemplo : class teste { : <Bloco de Instruções> }

Método Por sua vez toda as classe são composta de métodos que realizam tarefas como no exemplo abaixo. public static void main(String args[]) { : }

public - Onde a palavra chave public significa que esse método será reconhecido por todas as outras classes e métodos. (objetos) static - Significa que esse método não será nunca instânciado. void - Significa que o método não irá retornar nenhum valor.

main - Vem a ser o próprio método que é onde toda a aplicação escrita irá funcionar. args[] - Vem a ser um vetor criado pelo Java automaticamente com parâmetros passados pela linha de comandos esse vetor será sempre do tipo String.

Exemplo de um programa Java para ser compilado em laboratório. class exemplo2 { public static void main(String args[]) { System.out.println("Alo Mundo!!!!"); }

Estudando o Vetor de parâmetros da Linguagem Java Em Java o método main() aceita um parâmetro que permite com que informações sejam passadas da linha de comandos direto para o programa esse argumento(Parâmetro) tem o nome simbólico de args[] mais pode ser alterado para qualquer outro nome como qualquer outra variável. Obs : Esse argumento que deve ser passado para o método main() deve ser sempre uma String. Como já foi visto.

Exemplo Prático: public static void main(String args[]) { System.out.println(args[0]) }

Exemplo de execução de um programa Java com passagem de parâmetros C:\java\aula\>java exemplo2 Maria Pedro

Na posição 0 como foi ilustrado na figura acima existe a string maria e na posição 1 do vetor a string pedro. Exemplo : args[0] = "Maria" args[1] = "Pedro"

Método : parseInt() - Converte uma string em número inteiro. Exemplo : String a = "123"; int x = Integer.parseInt(a); Converte o valor da String a = "123" para um número inteiro.

Método : parseDouble() - Converte uma string em número ponto flutuante. Exemplo : String a = "123.75"; double x = Double.parseDouble(a); Converte o valor da String a = "123" para um número de ponto flutuante.

Formatando saídas: printf ( ) – Método que realiza a formatação dos valores na saída padrão; Por intermédio do símbolo de porcentagem. Sintaxe : System.out.printf(“%<formato>”,<Varm>);

Formatos válidos Formato Tipo do Valor %d Valor inteiro decimal %f Valor em ponto flutuante %c Caracter em formato ASCII %s String de caracteres %u Inteiro decimal sem sinal %i %o Valor inteiro octal %x Valor inteiro hexadecimal %% Caracter % \n Pula uma linha após impressão

Exemplo : double a = 2.2; System.out.printf("%2.3f\n",); Resultado : 2,200 int b = 255; System.out.printf("%4d\n",b); Resultado : b255 b = Espaço em branco

int b = 255; System.out.printf("%X\n",b); Resultado : FF System.out.printf("%o\n",b); Resultado : 377 int ch = 97; System.out.printf("%c\n",ch); Resultado : a

double a = 2.2; System.out.printf("%e\n",a); Resultado : 2.20000e+00 System.out.printf("%d %2d %3d\n",3,5,7); Resultado : 3bb5bbb7

String str1 = “ana”; System.out.printf("%s\n",str1); Resultado : ana System.out.printf("%S\n",str1); Resultado : ANA double a = 2.2; String st = “ana”; System.out.printf("%S %1.1f\n",st,a); Resultado : ANA 2,2

Escopo com variáveis Quando um variável em java é declarada no interior de uma estrutura seus valores e referências serão mantidos durante o momento em que a estrutura estiver sendo executada, depois disso essa variável não mais terá finalidade para o programa devendo ser destruída, caso o programador tente usar essa variável logo após a execução dessa estrutura o compilador irá detectar erro.

Variável : Permanência de valor Estrutura de repetição Permanece o valor da variável caso a mesma esteja declarada fora de uma estrutura. Estrutura de Condição Variável

Variável : Não Permanência de valor Estrutura de repetição Não Permanece o valor da variável caso a mesma esteja declarada fora de uma estrutura. Variável Estrutura de Condição Não Existe essa variável Variável

Exemplo : Variável Global int a = 1; for( int i=1;i<=10;i++) { System.out.println(i); } System.out.println(a); Neste exemplo o compilador irá enviar um erro de sintaxe dizendo não reconhecer o símbolo (i), mas para a variável (a) estaria tudo correto.

Exemplo : Variável Global class teste{ public static void main(String args[]){ int i=1; for(;i<=10;i++) { int a = 1; System.out.println(i); } System.out.println(a); }} Neste exemplo o tratamento com a variável (i) estaria correto, o funcionamento do programa estaria comprometido pela variável (a).

Criando Entrada de dados (padrão) Importar o pacote util, indicando as classe Scanner; Apartir da versão (5.0) Exemplo : import java.util.Scanner;

Diagrama UML (associação Scanner)

Exemplo Cria um objeto da classe Scanner. Exemplo: Scanner scan = new Scanner( System.in );

Usando os métodos da classe Scanner. Resultado next() Realiza a leitura de uma string pelo teclado. nextInt() Realiza a leitura de um inteiro pelo teclado. nextDouble() Realiza a leitura de um ponto flutuante precisão dupla pelo teclado. nextBoolean() Realiza a leitura de um boolean pelo teclado. nextFloat() Realiza a leitura de um float pelo teclado.

Exemplo programa : import java.util.Scanner; public class scan { public static void main( String [] args ) Scanner scan = new Scanner( System.in ); System.out.print("Qual seu nome: "); String seuNome = scan.next( ); }