introdução a javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. ·...

25
1 Introdução a Java Alberto Costa Neto DComp - UFS

Upload: others

Post on 16-Nov-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

1

Introdução a Java

Alberto Costa Neto

DComp - UFS

Page 2: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

2

Roteiro

O que é Java?

Como tudo começou...

Quem usa?

Como funciona?

Entendendo as Versões

Por que Java?

Primeiro programa

Page 3: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

3

O que é Java?

Linguagem, Plataforma, Tecnologia...

Paradigma Orientado a Objetos

Biblioteca de Classes

Page 4: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

4

Como tudo começou...

Em 1991, a Sun estabelece grupo de pesquisa Liderado por James Gosling

Criar um interpretador para pequenos dispositivos

Com o advento da Web Pequenas aplicações que rodassem em

qualquer browser ou SO

Lançamento do Java 1.02

Atualmente o Java ganhou destaque no lado servidor

Page 5: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

5

Quem usa Java?

Page 6: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

Quem usa Java?

6

Page 7: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

7

Quem usa Java?

Page 8: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

8

Quem usa Java?

Page 9: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

9

Quem usa Java?

Page 10: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

Quem usa Java?

10

Page 11: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

Java é muito usado?

11

Page 12: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

12

Como funciona?

Compilação no Pascal

Código Fonte

Código Binário

para um SO

Código Fonte

Código Fonte

Código Binário

compilador

Código Fonte

Muitas vezes utilizamos bibliotecas do próprio Sistema Operacional

SO Específico

Page 13: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

13

Como funciona?

Com Java...

Código Fonte

Código Fonte

Código Fonte

Bytecode Java

compilador

Código Fonte

Dispositivo Windows

Dispositivo Linux

Dispositivo ...

JVM

Máquina Virtual Java = Java Virtual Machine (JVM)

JVM

JVM

Independente de plataforma

Page 14: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

14

Como funciona?

usando a Máquina Virtual...

O código fonte é compilado para bytecode

O bytecode é interpretado à medida que é necessário.

Page 15: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

15

Como funciona?

usando a Máquina Virtual...

Dependente de plataforma

Page 16: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

16

Como funciona?

Interpretação lentidão???

JVM 2ª. Compilação

JIT Compiler (Just in Time Compiler)

Hotspot (código bastante executado)

A JVM otimiza a compilação durante a execução

Page 17: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

17

Entendendo as versões

Java 1.02

Java 1.2

Java 1.3

Java 1.4

Java 1.5

Java 1.6

Java 2

Java 5 (Tiger)

Java 6 (Mustang)

Lançamento (23/01/1996)

Java 1.7 Java 7 (Dolphin)

Page 18: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

18

Entendendo as versões

Fazer download de??

JRE: Java Runtime Environment

JDK: Java Development Kit

Compilador + JVM

JVM

Page 19: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

19

Entendendo as versões

Plataformas...

JSE: Java Standard Edition

JEE: Java Enterprise Edition

JME: Java Micro Edition

Page 20: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

20

Por que Java?

Melhor Gerenciamento de memória

Java não possui ponteiros

Coleta de Lixo (Garbage Collector)

Inúmeras bibliotecas

Gratuita

Portabilidade entre SOs

“Write once, run anywhere”

Page 21: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

21

Primeiro programa

// Programa para impressão de texto public class PrimeiroPrograma { // Método principal inicia a execução da aplicação Java public static void main (String[] args){ System.out.println("Seja bem vindo a programação" + " em Java"); } //finaliza o método } //finaliza a classe

Page 22: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

22

Primeiro programa

Na linha de comando

Compilando o programa

javac PrimeiroPrograma.java

Executando

java PrimeiroPrograma

Page 23: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

23

Primeiro programa

Configuração das variáveis de ambiente

JAVA_HOME= C:\Arquivos de programas\Java\jdk7

PATH=%PATH%;%JAVA_HOME%\\bin

CLASSPATH=.;%JAVA_HOME%

Page 24: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

24

Exercícios

1) Alterar o programa para imprimir duas linhas de texto usando duas linhas de System.out.

2) Sabendo que o caractere “\n” representa quebra de linha, imprima duas linhas usando apenas uma linha de System.out

Page 25: Introdução a Javaalbertocn.sytes.net/2014-2/poo/slides/03 - introducao_a... · 2015. 7. 18. · Compilação no Pascal Código Fonte Código Binário para um SO Código Binário

25

Referências

Java How to Program

Capítulo – 2

Slides Introdução a Linguagem Java. Prof. Marcos Dósea. UFS. 2010.

Slides “Introdução à Java”, Profa. Débora. UFS. 2010.