linguagem de programação java

Post on 27-Jan-2017

397 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

LINGUAGEM DE PROGRAMAÇÃO JAVA

Prof. Thomás da Costathomascosta@aedu.com

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

A TECNOLOGIA JAVA

A TECNOLOGIA JAVA

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

• Originalmente criado para dispositivos embarcados.• Iniciou a partir Projeto Green em Junho de 1991 por James Gosling, Mike

Sheridan and Patrick Naughton.• Denominada inicialmente de Oak.• Desenvolvido por James Gosling na Sun Microsystems em 1995.• Em 1996 foi lançado a primeira versão do JDK 1.0.

• Premissas da Linguagem:• Sem ponteiros (todos ficamos felizes).• Independente de plataforma.• Recurso de garbage collector.• Alta confiabilidade.• Bytecodes.

HistóricoOrigens:

A TECNOLOGIA JAVA

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

A TECNOLOGIA JAVA

Fonte: http://viralpatel.net/blogs/java-virtual-machine-an-inside-story/

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

Tem como principal funcionalidade executar os bytecodes gerado a partir dos códigos Java, tornando a linguagem independente de plataforma. Além disso a JVM possui outras responsabilidades:

• Gerenciamento de memória.• Controle de threads.• Comunicação com o Sistema Operacional e acessar métodos nativos.• Pode executar outras linguagens além do Java como Groovy, Jython e JRuby.

JVMJava Virtual Machine:

A TECNOLOGIA JAVA

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

A TECNOLOGIA JAVA

Java Platform Standard Edition 7

Fonte: http://docs.oracle.com/javase/7/docs/index.html

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

ECLIPSE

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

ECLIPSE

• Desenvolvido inicialmente pela IBM.• Foi doado como software open-source.• Totalmente gratuita.• Ferramenta de desenvolvimento Java.• Também utilizada em outras linguagens de programação.• Baseada em Perspectivas.• Efetua a compilação, depuração e execução de um programa em Java.• Pode ser baixado do site:

• https://eclipse.org/

EclipseIDE:

Vamos conhecer alguns componentes do Eclipse.

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

ECLIPSE

EclipseSelecionando uma workspace:Local onde iremos colocar os nossos códigos fontes e projetos.

Diretório dos fontes

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

EclipseTela inicial:

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

EclipsePerspectiva Java:

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

EclipseCriando um Projeto:

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

EclipseCriando um Projeto:

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

EclipseCriando um Projeto:

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

EclipseCriando um Projeto:

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

EclipseCriando um pacote:

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

EclipseCriando um pacote:

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

EclipseCriando uma classe:

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

EclipseCriando uma classe:

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

EclipseCriando uma classe:

ECLIPSE

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

• Funcionamento de um programa Java.• Variáveis.• Condicionais.• Laços.• Vetores.• String.• Classes.• Interfaces.

JavaO que vamos estudar:

A TECNOLOGIA JAVA

Vamos começar !!!

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

BÁSICO DA LINGUAGEM

BÁSICO DA LINGUAGEM

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package edu.anhanguera.poo.aula03; public class Exemplo01 {

public static void main(String[] args) {System.out.println("Olá Pessoal.

Tudo Bem?");}

 }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package edu.anhanguera.poo.aula03; public class Exemplo02 {

public static void main(String[] args) {// É uma forma de criar comentários em linha.

System.out.println("Imprimindo na saida do console");System.err.println("Imprimindo na saida de erro do

console");System.out.print("Está forma não pula linha");System.err.format("Saida %s formatada", new

String("é"));System.out.format("Esta %s também é formatada", new

String("saida"));

// O método abaixo possui o conceito de varargsSystem.out.format("%s formatada %s vários %s",

new String("Saida"),

new String("com"),

new String("paramêtros"));

} }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package edu.anhanguera.poo.aula03; public class Exemplo03 {

public static void main(String[] args) {int varInt;double varDouble;float varFloat;long varLong;boolean varBoolean;byte varByte;short varShort;

varInt = 2015;varDouble = 768.35;varFloat = 3.14159265f;varLong = 250000000l;varBoolean = true;varByte = 8;varShort = 3;

 System.out.println("int: " + varInt);System.out.println("double: " + varDouble);System.out.println("float: " + varFloat);System.out.println("long: " + varLong);System.out.println("boolean: " + varBoolean);System.out.println("byte: " + varByte);System.out.println("short: " + varShort);

} }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package edu.anhanguera.poo.aula03; public class Exemplo04 {

public static void main(String[] args) {double media = 0;double notaB1 = 5;double notaB2 = 6;

media = (notaB1 * 0.4) + (notaB2 * 0.6);

if (media >= 6) {System.out.println("Aprovado");

} else {System.out.println("Reprovado");

}

System.out.println(media >= 6 ? "Aprovado" : "Reprovado");

} }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package edu.anhanguera.poo.aula03; public class Exemplo05 {

public static void main(String[] args) {boolean ligar = true;if (ligar)

System.out.println("Ligado");

if (!ligar)System.out.println("Desligado");

float soma;float operador1 = 788.00f;float operador2 = 3.58f;

soma = operador1 + operador2;if (soma == 791.58f) {

System.out.println("Resultado da soma é " + soma);

}}

 }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package edu.anhanguera.poo.aula03; public class Exemplo06 {

public static void main(String[] args) {String nomeGuerreiro = "Blackwall";String nomeMago = new String("Solas");

System.out.println("Guerreiro:" + nomeGuerreiro);System.out.println("Mago:" + nomeMago);System.out.println("Tamanho:" +

nomeGuerreiro.length());System.out.println("Tamanho:" + nomeMago.length());

if (!nomeGuerreiro.equals(nomeMago)) {System.out.println("Os nomes são

diferentes.");} else {

System.out.println("Os nomes são iguais.");}

nomeGuerreiro = nomeGuerreiro.toUpperCase();nomeMago = nomeMago.toLowerCase();

System.out.println("Guerreiro:" + nomeGuerreiro);System.out.println("Mago:" + nomeMago);

} }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package edu.anhanguera.poo.aula03; public class Exemplo07 { 

public static void main(String[] args) {char linguagem[] = { 'J', 'a', 'v', 'a' };String java = "";

for (int i=0;i<=linguagem.length-1;i++) {java += linguagem[i];

}System.out.println("Linguagem " + java);

int notas[] = new int[2];notas[0] = 6;notas[1] = 7;

int i=0;while (i <= notas.length-1) {

System.out.println("Nota " + (i + 1) + ":" + notas[i]);

i++;}

boolean ligado = true;do {

System.out.println("Ligado");ligado = false;

} while (ligado);}

}

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package edu.anhanguera.poo.aula03; public class Exemplo08 { 

public static void main(String[] args) {Integer varInt = 2015;Double varDouble = 768.35;Float varFloat = 3.14159265f;Long varLong = 250000000l;Boolean varBoolean = true;Byte varByte = 8;Short varShort = 3;

System.out.println("int: " + varInt);System.out.println("double: " + varDouble);System.out.println("float: " + varFloat);System.out.println("long: " + varLong);System.out.println("boolean: " + varBoolean);System.out.println("byte: " + varByte);System.out.println("short: " + varShort);

String valor = "100";varInt = Integer.parseInt(valor);

System.out.println("Valor convertido:" + valor);

}

}

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package edu.anhanguera.poo.aula03; import java.util.Scanner; public class Exemplo09 { 

public static void main(String[] args) {double notaB1;double notaB2;double media;Scanner scanner = new Scanner(System.in);

System.out.println("Digite a nota da B1:");notaB1 = scanner.nextDouble();

System.out.println("Digite a média:");media = scanner.nextDouble();

notaB2 = (media - (notaB1*0.4)) / 0.6;System.out.println("Nota necessária para

aprovação:" + notaB2);

scanner.close();}

}

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS

CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS

ConceitosDetalhes:• Classe: é um tipo que possui uma representação. Contém atributos e

métodos.• Objeto: é a instância de uma classe e a concretização real e funcional de

suas funcionalidades.• Instância: alocando um objeto na memória.

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS

ConceitosExemplos:• Herói seria uma classe, pois é um tipo.• Capitão América é o objeto pois ele é um Herói.• Instância é o próprio objeto Capitão América.

• Pessoa também é um tipo.• Steve Rogers é o objeto pois ele é uma Pessoa.• Instância é o próprio objeto Steve Rogers.

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class Pessoa {

public Pessoa() {}

 }

Classe pública Pessoa

Construtor da Classe

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class ExemploPessoa { 

public static void main(String[] args) {Pessoa pessoa = new Pessoa();System.out.println(pessoa);

}

}

Objeto pessoa

Instanciando o objeto pessoa

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS

ConceitosDetalhes:• Toda classe possui um construtor padrão.• Construtor padrão tem como principal objetivo, colocar o objeto na

memória e criar uma instância para ser utilizada.• O construtor padrão é formado pelo nome da classe, sem um retorno e sem

parâmetros.• Na classe pode existir vários construtores com parâmetros diferentes.• Para instanciar uma classe utilizamos o operador new.

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS

AtributosDetalhes:• Linda !!!• Maravilhosa !!!• Jedi !!!

• Nome• Idade• Peso • Altura

Atributos normalmente são características

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS

AtributosDetalhes:• Lindo !!!• Maravilhoso !!!• Batman !!!

• Nome• Idade• Peso • Altura

Atributos normalmente são características

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class Pessoa {

private String nome;private int idade;private double altura;private double peso;

public Pessoa() {}

 public String getNome() {

return nome;}

 public void setNome(String nome) {

this.nome = nome;}

 public int getIdade() {

return idade;}

 public void setIdade(int idade) {

this.idade = idade;}

 public double getAltura() {

return altura;}

 

public void setAltura(double altura) {

this.altura = altura;}

 public double getPeso() {

return peso;}

 public void setPeso(double peso)

{this.peso = peso;

} }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS

AtributosDetalhes:• Atributos são variáveis com escopo private criadas dentro de uma classe.• Normalmente, utilizamos métodos para obter um valor de uma variável.• Por enquanto métodos são semelhantes a funções em comparação com

outras linguagens de programação.• Métodos de atributos são conhecidos como getter e setter.• Getter obtém um valor de um atributo.• Setter atribui um valor para um atributo.

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class ExemploPessoa { 

public static void main(String[] args) {Pessoa pessoa = new Pessoa();pessoa.setNome("Daisy Jazz Isobel Ridley");pessoa.setIdade(24);pessoa.setAltura(1.75);pessoa.setPeso(60.0);

System.out.println(pessoa.getNome());System.out.println(pessoa.getIdade());System.out.println(pessoa.getAltura());System.out.println(pessoa.getPeso());

}

}

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS

MétodosDetalhes:• É uma ação que um objeto pode executar.• Um método possui um escopo, retorno, nome e parâmetros.• Semelhantes a funções em outras linguagens de programação.• Normalmente são verbos. Por exemplo: andar, correr, sacar, comprar,

debitarConta, depositarConta.

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class Pessoa {

... 

public int andar() {passos++;return passos;

} }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class ExemploPessoa { 

public static void main(String[] args) {Pessoa pessoa = new Pessoa();pessoa.setNome("Daisy Jazz Isobel Ridley");pessoa.setIdade(24);pessoa.setAltura(1.75);pessoa.setPeso(60.0);

System.out.println(pessoa.getNome());System.out.println(pessoa.getIdade());System.out.println(pessoa.getAltura());System.out.println(pessoa.getPeso());

System.out.println(pessoa.andar());}

}

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

HERANÇA

HERANÇA

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

HERANÇA

HerançaDetalhes:• Um dos benefícios de uma linguagem orientada a objetos é o

reaproveitamento constante de código fonte.• Classes são desenvolvidas para serem utilizadas em qualquer local da

aplicação e em outros projetos.• Algumas classes possuem caracterização diferentes uma das outras, mas

podem possuir alguns métodos e atributos comuns.• Por exemplo: todas as Pessoas, possuem um nome, idade, peso e altura,

mas podem existir tipo diferentes como Funcionário, Aluno e Professor.• Essas três classes compartilham os mesmo atributos e métodos da classe

Pessoa.

Herança é herdar todos os atributos e métodos de uma classe.

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class Funcionario extends Pessoa { 

private double salario;private String cargo;

public Funcionario() {}

 public double getSalario() {

return salario;}

 public void setSalario(double salario) {

this.salario = salario;}

 public String getCargo() {

return cargo;}

 public void setCargo(String cargo) {

this.cargo = cargo;}

}

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

HERANÇA

HerançaDetalhes:• A palavra reservada extends seguida do nome da classe define uma

herança.• Uma classe Java herda somente de uma outra classe.• Não existe herança múltipla em Java.

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class ExemploFuncionario {

public static void main(String[] args) {Funcionario funcionario = new Funcionario();funcionario.setNome("Daisy Jazz Isobel Ridley");funcionario.setIdade(24);funcionario.setAltura(1.75);funcionario.setPeso(60.0);funcionario.setSalario(100000.00);

System.out.println(funcionario.getNome());System.out.println(funcionario.getIdade());System.out.println(funcionario.getAltura());System.out.println(funcionario.getPeso());

System.out.println(funcionario.andar());}

}

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

HERANÇA

HerançaDetalhes:• Isso funciona?

Pessoa funcionario = new Funcionario();

Sim !!! A classe Funcionario é do tipo Pessoa.

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

HERANÇA

HerançaDetalhes:• Em nossos exemplos, a classe Funcionario é filha da classe Pessoa.• Pessoa é a classe pai de Funcionario.• Podemos sobrescrever métodos da classe pai na classe filha para alterar seu

comportamento. • Neste exemplo vamos alterar o comportamento do método falar.

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class Pessoa {

...

public void falar(String frase) {System.out.println(frase);

}

... }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class Funcionario extends Pessoa { 

...

@Overridepublic void falar(String frase) {

System.out.println("Funcionário:" + frase);}

}

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class ExemploSobrescrever {

public static void main(String[] args) {Funcionario funcionario = new Funcionario();funcionario.falar("Eu trabalho na empresa ABX");

Pessoa pessoa = new Funcionario();pessoa.falar("Eu trabalho na empresa TXBUI");

Pessoa pessoa2 = new Pessoa();pessoa2.falar("Eu sou uma pessoa");

} }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

HERANÇA

HerançaSaída do Programa:

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

INTERFACES

INTERFACES

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

INTERFACES

InterfacesDetalhes:• Interfaces são semelhantes a classes, mas seus métodos não possuem

nenhum tipo de implementação.• Os métodos são implementados obrigatoriamente na classe filha.• Podemos implementar mais de uma interface em uma classe.• Normalmente as interfaces são utilizadas para efetuar dinamismo em uma

aplicação.

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public interface Humano { 

String getNome();void setNome(String nome);int getIdade();void setIdade(int idade);double getAltura();void setAltura(double altura);double getPeso();void setPeso(double peso);void falar(String frase);int andar();

 }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class Pessoa implements Humano {

... }

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

InterfacesDetalhes:• Para implementar uma interface utilizamos a palavra reservada implements

seguida do nome da interface.• Podemos implementar mais de uma interface separados por virgula.

INTERFACES

LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa

package br.com.aula.java; public class ExemploInterface { 

public static void main(String[] args) {Humano pessoa = new Pessoa();pessoa.falar("Sou uma pessoa");

Humano funcionario = new Funcionario();funcionario.falar("Sou um funcionário

feliz");}

}

Obrigado !!!

top related