Notas de Aula 01: Introdução à linguagem de programação...

of 13 /13
Disciplina: Linguagem de Programação Professores: José Gomes de Carvalho Júnior, D.Sc. Pablo Rangel, D.Sc. Notas de Aula 01: Introdução à linguagem de programação Java e ao ambiente de desenvolvimento NetBeans Objetivos da aula: Introduzir conceitos da linguagem Java Apresentar um histórico da linguagem Apresentar as principais características da linguagem Introduzir o ambiente NetBeans e a JDK Apresentar a estrutura e os comandos principais do Java Introdução A disciplina de Linguagem de Programação objetiva introduzir os conceitos da Programação Orientada a Objetos (POO). Para tanto, utiliza como ferramenta a linguagem Java, que é uma linguagem nativamente projetada para ser orientada a objetos e que possui ampla utilização no mercado. Ainda que a linguagem Java não seja o foco da disciplina, vamos utilizá-la como ferramenta. Então, torna-se necessário que nesta primeira aula nos dediquemos ao Java. Esta tarefa é simplificada e pode ser cumprida em uma aula pois a sintaxe e a semântica dos comandos Java é extremamente semelhante (praticamente igual) à sintaxe e semântica dos comandos C e C++ já utilizados nas disciplinas anteriores do curso. Histórico Primeira versão disponível ao público pela Sun Microsystems (1995); Green Group(1991); Oak; Green OS(GUI); *7 (PDA); Java (94); WebRunner(HotJava)(95);JDK: 1.0(95);1.1(97);1.2(J2SE);1…8. Edições Java SE (Standard Edition): principais artefatos da linguagem para versões desktop e web;

Embed Size (px)

Transcript of Notas de Aula 01: Introdução à linguagem de programação...

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Notas de Aula 01: Introduo linguagem de

    programao Java e ao ambiente de

    desenvolvimento NetBeans

    Objetivos da aula: Introduzir conceitos da linguagem Java

    Apresentar um histrico da linguagem

    Apresentar as principais caractersticas da linguagem

    Introduzir o ambiente NetBeans e a JDK

    Apresentar a estrutura e os comandos principais do Java

    Introduo A disciplina de Linguagem de Programao objetiva introduzir os conceitos da Programao Orientada a Objetos (POO). Para tanto, utiliza como ferramenta a linguagem Java, que uma linguagem nativamente projetada para ser orientada a objetos e que possui ampla utilizao no mercado.

    Ainda que a linguagem Java no seja o foco da disciplina, vamos utiliz-la como ferramenta. Ento, torna-se necessrio que nesta primeira aula nos dediquemos ao Java. Esta tarefa simplificada e pode ser cumprida em uma aula pois a sintaxe e a semntica dos comandos Java extremamente semelhante (praticamente igual) sintaxe e semntica dos comandos C e C++ j utilizados nas disciplinas anteriores do curso.

    Histrico Primeira verso disponvel ao pblico pela Sun Microsystems (1995);

    Green Group(1991); Oak; Green OS(GUI); *7 (PDA); Java (94);

    WebRunner(HotJava)(95);JDK: 1.0(95);1.1(97);1.2(J2SE);18.

    Edies Java SE (Standard Edition): principais artefatos da linguagem para verses

    desktop e web;

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Java EE (Enterprise Edition): mapeamento objeto-relacional, internet,

    servidores e outros ambientes distribudos;

    Java ME (Java 2 Platform, Micro Editions): mobiles e set-top boxes.

    Caractersticas Orientada a objetos

    Independente de plataforma

    Sem ponteiros

    Performance

    Segurana

    Multi-thread

    Recursos JDK (Java Development Kit)

    o Compilador

    o Mquina Virtual e JRE (Java Runtime Environment).

    o Visualizador de Applets

    o Bibliotecas de desenvolvimento

    o Programa para composio de documentao (javadoc)

    Ambientes visuais

    o Visual j++, J Builder, Visual Caf, VisualAge for Java, Jblue, Jedit,

    JCreator, NetBeans, Eclipse ...

    Arquivos bsicos

    o .java

    o .class

    Editando... Compilando... Executando...

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Implantao do ambiente de desenvolvimento Java Instalao da JDK (Java Development Kit)

    A JDK no um ambiente visual de programao. composto apenas de

    ferramentas que podem ser utilizadas atravs da linha de comando

    (terminal de comandos). Atualmente chamado de J2SE, Java 2 Standard

    Edition. Deve ser usado um editor de texto qualquer como o Notepad,

    mas existem alguns editores que incorporam funes de compilao e

    execuo como o Textpad, o JCreator, JBuilder, BlueJ, etc. (todos

    necessitam da JDK para estas funes).

    Existem ambientes de desenvolvimento mais integrados e visualmente

    projetados para facilitar a programao e a depurao. So exemplos

    destes ambientes o NetBeans e o Eclipse.

    Baixar e executar a verso mais atual que estiver disponvel em

    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-

    downloads-2133151.html?ssSourceSiteId=otnpt do arquivo .exe

    (Windows) ou .sh (Linux) com o Java SE. Sero instalados, no diretrio que

    voc escolher, o JAVA SDK, que contm o compilador e o interpretador

    JAVA, o JRE (JAVA Runtime Environment) que contm a JVM (JAVA Virtual

    Machine) e o plugin JAVA para navegadores.

    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html?ssSourceSiteId=otnpthttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html?ssSourceSiteId=otnpt

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Instalao do NetBeans: Esta ferramenta de desenvolvimento j possui mais recursos de

    depurao dos programas, comporta desenvolvimento paralelo em

    equipe, est integrada com aplicativos de controle de verses,

    gerenciamento de projetos, e ferramentas de projeto de arquitetura de

    software. Enfim, uma ferramenta mais completa e profissional para

    desenvolvimento de projetos e a ferramenta que utilizaremos nesta

    disciplina.

    Baixar e executar a verso mais atual do aplicativo que estiver disponvel

    em https://netbeans.org/downloads/index.html.

    Instalao do NetBeans + JDK A Oracle oferece a possibilidade do download combinado das verses

    mais recentes da JDK e do NetBeans. No entanto, por virtude de legados

    ou de compatibilidade com componentes de terceiros, muitas vezes

    optamos por fazer o download de forma separada.

    Quando o desenvolvimento parte do zero, a opo de instalao

    combinada a mais adequada e prtica. Para isso, faa o download do

    Netbeans mais a JDK em:

    http://www.oracle.com/technetwork/pt/java/javase/downloads/index.

    html.

    https://netbeans.org/downloads/index.htmlhttp://www.oracle.com/technetwork/pt/java/javase/downloads/index.htmlhttp://www.oracle.com/technetwork/pt/java/javase/downloads/index.html

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Sobre os Nomes de Arquivos Java Os nomes de arquivos fonte em Java devem ter a extenso .java" e o

    nome do arquivo deve ser o mesmo nome da classe.

    Java Case Sensitive, ou seja, diferencia maisculas e minsculas. Tome

    cuidado ao escrever o nome do arquivo e da classe Java.

    Existe uma conveno para escrita de cdigos em Java. Ao longo das

    aulas, essa conveno ser abordada. A conveno est disponvel em:

    http://www.oracle.com/technetwork/java/codeconventions-150003.pdf

    Primeiro programa em Java Abra o NetBeans. Crie um novo projeto (Arquivo -> Novo Projeto) e, na

    primeira tela, escolha a categoria Java e projeto como Aplicativo Java.

    http://www.oracle.com/technetwork/java/codeconventions-150003.pdf

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Na segunda tela, nomeie o projeto como Primeiro.

    A janela de edio que abre possui o seguinte aspecto:

    Substitua o comentrio dentro do main, por um programa que calcule a

    mdia de duas variveis. O cdigo o seguinte (em vermelho):

    package primeiro;

    public class Primeiro {

    public static void main(String[] args) {

    // TODO: Add your code here

    }

    }

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Compile o projeto e execute-o (tecla F6).

    Na janela Resultados do teste deve aparecer:

    A mdia de 2 e 3 = 2.0

    Sintaxe bsica Tipos de dados. O Java possui os seguintes tipos bsicos:

    GRUPO TIPO TAMANHO VALORES POSSVEIS

    INTEIROS byte 1 byte 128 at 127 (-27 a 27-1)

    short 2 bytes 32.768 at 32.767 (-215 a 215-1)

    int 4 bytes 2.147.483.648 at 2.147.483.647 (-231 a 231-1)

    long 8 bytes (-263 a 263-1)

    PONTO FLUTUANTE float 4 bytes 1,40 X 10-45 a 3,40 X 1038

    double 8 bytes 4,94 X 10-324 a 1,70 X 10308

    CARACTERES char 2 bytes (Unicode) \u0000 a \uFFFF (0 a 65535)

    LGICOS boolean 1 byte true ou false

    Comentrios (duas formas):

    // Esta linha um comentrio

    /* Estas duas linhas ...

    ... so um nico comentrio */

    Identificadores:

    o Case Sensitive (letras, dgitos, _, $).

    o No podem ser iniciados com dgitos.

    package primeiro;

    public class Primeiro {

    public static void main(String[] args) {

    int a, b;

    float media;

    a = 2;

    b = 3;

    media = (a + b) / 2;

    System.out.println ("A mdia de " + a + " e " + b + " = " + media);

    }

    }

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Conveno: iniciar variveis com minsculas. Usar maisculas entre os

    nomes, caso o identificador seja um nome composto. No usar _ em

    identificadores com nomes compostos. A mesma regra se aplica para

    objetos e nomes de mtodos (veremos essas definies mais adiante)

    Identificadores tambm no podem ser palavras reservadas da

    linguagem. A lista de palavras reservadas a seguinte:

    abstract continue finally interface public throw

    boolean default float long return throws

    break do for native short transiente

    byte double if new static true

    case else implements null super try

    catch extends import package switch void

    char false instanceof private synchronized while

    class final int protected this

    Exemplos de declarao de variveis:

    Operadores aritmticos:

    Operador Significado Exemplo

    + Adio a + b

    - Subtrao s - b

    * Multiplicao a * b

    / Diviso a / b

    % Resto da diviso inteira a % b

    - Sinal negativo (- unrio) -a

    + Sinal positivo (+ unrio) +a

    Casos especiais: operadores de Incremento e Decremento

    float soma, media, mediaPonderada;

    int i, j, contadorNotas;

    boolean terminou;

    char primeirOpcao = S;

    double valor = 97.36458; }

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Operador Significado Exemplo

    ++ Pr-incremento. Incrementa a varivel de 1 e depois utiliza o novo valor na expresso

    ++a

    ++ Ps-incremento. Utiliza o valor atual da expresso e depois incrementa de 1.

    a++

    -- Pr-decremento. Decrementa a varivel de 1 e depois utiliza o novo valor na expresso

    --a

    -- Ps-decremento. Utiliza o valor atual da expresso e depois decrementa de 1.

    a++

    Suponha c =5 e d = 5;

    Expresso Resultado

    System.out.println(c + " " + (c++) + " " + c ); 5 5 6

    System.out.println(d + " " + (++d) + " " + d ); 5 6 6

    Casos especiais: operadores compostos

    A linguagem Java possui vrios operadores compostos de atribuio para abreviar expresses de atribuio. Qualquer instruo na forma

    = ;

    onde o seja +, -, *, / ou %, pode ser escrita na forma:

    = ;

    Por exemplo, a instruo:

    c = c + 3;

    pode ser abreviada com o operador composto de atribuio de adio:

    c += 3;

    Suponha:

    int c = 3, d = 5, e = 4, f = 6, g = 12;

    Operao Forma abreviada Forma abreviada Resultado

    += c+=7 c = c + 7 10

    -= d-=4 d = d - 4 1

    *= e*=5 e = e * 5 20

    /= f/=3 f = f / 3 2

    %= g%=9 g = g % 9 3

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Operadores relacionais:

    Operador Significado Exemplo

    == Igual a == b != Diferente a != b

    > Maior que a > b >= Maior ou igual a a >= b

    < Menor que a < b

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Instrues de desvio: switch-case

    switch (expresso_ordinal) {

    case ordinal_1 : instruo_1;

    break;

    case ordinal_2 : instruo_2;

    break;

    default: instruo_N;

    }

    Instrues de repetio: for

    for (iniciao; condio_de_execuo; incremento)

    instruo;

    Instrues de repetio: while

    while (expresso lgica)

    instruo;

    switch (letra) {

    case a :

    case A : System.out.println (Letra a ou A);

    break;

    case z :

    case Z : System.out.println (Letra z ou Z);

    break;

    default : System.out.println (Outra letra);

    }

    int i;

    for (i=0; i

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Instrues de repetio: do-while

    do

    instruo;

    while (expresso_logica)

    int i = 0;

    while (i

  • Disciplina: Linguagem de Programao

    Professores: Jos Gomes de Carvalho Jnior, D.Sc. Pablo Rangel, D.Sc.

    Exerccios

    1) Utilizando a ferramenta NETBEANS, crie um projeto contendo um programa que defina duas variveis inteiras (x e y), que atribua a elas valores quaisquer (inicie as variveis com valores sua escolha) e que imprima o maior dos valores.

    2) Utilizando a ferramenta NETBEANS, crie um projeto contendo um programa que defina duas variveis inteiras (x e y), atribua a elas valores quaisquer (inicie as variveis com valores sua escolha) e que imprima diferentes mensagens caso os valores sejam ou no mltiplos um do outro.

    3) Utilizando a ferramenta NETBEANS, crie um projeto contendo um programa que defina duas variveis inteiras (x e y), que atribua a elas os valores 3 e 4 e que calcule o valor de xy.