Notas de Aula 01: Introdução à linguagem de programação...
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.