SlideShare uma empresa Scribd logo
LINGUAGEM DE PROGRAMAÇÃO JAVA
Prof. Thomás da Costa
thomascosta@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órico
Origens:
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.
JVM
Java 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/
Eclipse
IDE:
Vamos conhecer alguns componentes do Eclipse.
LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa
ECLIPSE
Eclipse
Selecionando 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
Eclipse
Tela inicial:
ECLIPSE
LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa
Eclipse
Perspectiva Java:
ECLIPSE
LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa
Eclipse
Criando um Projeto:
ECLIPSE
LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa
Eclipse
Criando um Projeto:
ECLIPSE
LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa
Eclipse
Criando um Projeto:
ECLIPSE
LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa
Eclipse
Criando um Projeto:
ECLIPSE
LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa
Eclipse
Criando um pacote:
ECLIPSE
LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa
Eclipse
Criando um pacote:
ECLIPSE
LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa
Eclipse
Criando uma classe:
ECLIPSE
LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa
Eclipse
Criando uma classe:
ECLIPSE
LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa
Eclipse
Criando 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.
Java
O 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 varargs
System.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
Conceitos
Detalhes:
• 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
Conceitos
Exemplos:
• 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
Conceitos
Detalhes:
• 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
Atributos
Detalhes:
• 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
Atributos
Detalhes:
• 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
Atributos
Detalhes:
• 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étodos
Detalhes:
• É 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ça
Detalhes:
• 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ça
Detalhes:
• 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ça
Detalhes:
• 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ça
Detalhes:
• 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 {
...
@Override
public 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ça
Saí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
Interfaces
Detalhes:
• 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
Interfaces
Detalhes:
• 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 !!!

Mais conteúdo relacionado

PPTX
Programação Concorrente - Aula 03
PPTX
Programação Concorrente - Aula 02
PDF
Programação Estruturada 2 - Curso Completo
PPTX
Algoritmos e Técnicas de Programação - Curso Completo
PPTX
Lógica e Matemática Computacional - Aula 04
PPTX
Algoritmos e Técnicas de Programação - Aula 01
PPTX
Programação Estruturada 2 - Aula 06
PPTX
Programação Concorrente - Aula 04
Programação Concorrente - Aula 03
Programação Concorrente - Aula 02
Programação Estruturada 2 - Curso Completo
Algoritmos e Técnicas de Programação - Curso Completo
Lógica e Matemática Computacional - Aula 04
Algoritmos e Técnicas de Programação - Aula 01
Programação Estruturada 2 - Aula 06
Programação Concorrente - Aula 04

Mais procurados (20)

PPTX
Algoritmos e Técnicas de Programação - Aula 03
PPTX
Programação Estruturada 2 - Aula 01
PPTX
Algoritmos e Estrutura de Dados - Aula 02
PPTX
Estrutura de Dados - Aula 01
PPTX
Algoritmos e Estrutura de Dados - Aula 01
PPT
Conceitos Fundamentais de Programacao
PPTX
Algoritmos e Técnicas de Programação - Aula 02
PPTX
Programação Concorrente - Aula 05
PPTX
Programação Concorrente - Curso Completo
PPTX
Algoritmos e Técnicas de Programação - Aula 05
PDF
Conceitos e técnicas de programação aula 2
PPTX
Algoritmos e Técnicas de Programação - Aula 04
PPTX
Programação Concorrente - Aula 01
PPTX
Algoritmos e Estrutura de Dados - Aula 04
PPTX
LAB 01 - Programação Estruturada 2
PPTX
Programação Estruturada 2 - Aula 02
PPTX
Programação de Sistemas Distribuídos - Aula 01
PDF
Conceitos e técnicas de programação apresentação
PDF
Conceitos e técnicas de programação introdução
PDF
Conceitos e técnicas de programação aula 1
Algoritmos e Técnicas de Programação - Aula 03
Programação Estruturada 2 - Aula 01
Algoritmos e Estrutura de Dados - Aula 02
Estrutura de Dados - Aula 01
Algoritmos e Estrutura de Dados - Aula 01
Conceitos Fundamentais de Programacao
Algoritmos e Técnicas de Programação - Aula 02
Programação Concorrente - Aula 05
Programação Concorrente - Curso Completo
Algoritmos e Técnicas de Programação - Aula 05
Conceitos e técnicas de programação aula 2
Algoritmos e Técnicas de Programação - Aula 04
Programação Concorrente - Aula 01
Algoritmos e Estrutura de Dados - Aula 04
LAB 01 - Programação Estruturada 2
Programação Estruturada 2 - Aula 02
Programação de Sistemas Distribuídos - Aula 01
Conceitos e técnicas de programação apresentação
Conceitos e técnicas de programação introdução
Conceitos e técnicas de programação aula 1
Anúncio

Destaque (14)

PDF
Java primeiros-passos
PPTX
Programação Concorrente - Aula 07
PPTX
Programação Orientada a Objetos parte 3
PPTX
Redes de Computadores - Aula 05
ODP
Java - Básico
PPTX
Programação de Sistemas Distribuídos - Aula 02
PPTX
Programação de Sistemas Distribuídos - Aula 03
ODP
Aula01 - POO
PPTX
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
PDF
Logica de programação. introdução[AULA-1]
PDF
Aula de Introdução - JAVA
PPT
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
PPT
Apostila de Fundamentos Java
PPT
Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...
Java primeiros-passos
Programação Concorrente - Aula 07
Programação Orientada a Objetos parte 3
Redes de Computadores - Aula 05
Java - Básico
Programação de Sistemas Distribuídos - Aula 02
Programação de Sistemas Distribuídos - Aula 03
Aula01 - POO
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Logica de programação. introdução[AULA-1]
Aula de Introdução - JAVA
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
Apostila de Fundamentos Java
Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...
Anúncio

Semelhante a Linguagem de Programação Java (20)

PDF
Java introdução ao java
PPTX
JAVA: Muito mais que uma linguagem
PDF
Spring framework 2.5
PPT
Introdução a conceitos e a Praticas de Programação
PPTX
Linguagem Java, fundamentos da linguagem Java
PDF
Aula 02 Primeiro Cod Java
PPTX
Java e orientação a objetos
PPTX
Estrutura de Dados em Java (Introdução)
PDF
Apostila - Linguagem de Programação I
PPTX
Curso java 01 - molhando os pés com java
PDF
Curso de Java (Parte 2)
PPT
Módulo 3 - Estrutura sequencial.ppt
PDF
Java - Introdução a banco de dados
PPT
Aula1
PPTX
Linguagem Java- Iniciação à programação Java
PPTX
Desenvolvendo para WEB com JAVA
PDF
Conceitos Básicos de OO e Java
PPTX
01 introducao ao java
PDF
Ecosistema spring a_plataforma_enterprise_jav
Java introdução ao java
JAVA: Muito mais que uma linguagem
Spring framework 2.5
Introdução a conceitos e a Praticas de Programação
Linguagem Java, fundamentos da linguagem Java
Aula 02 Primeiro Cod Java
Java e orientação a objetos
Estrutura de Dados em Java (Introdução)
Apostila - Linguagem de Programação I
Curso java 01 - molhando os pés com java
Curso de Java (Parte 2)
Módulo 3 - Estrutura sequencial.ppt
Java - Introdução a banco de dados
Aula1
Linguagem Java- Iniciação à programação Java
Desenvolvendo para WEB com JAVA
Conceitos Básicos de OO e Java
01 introducao ao java
Ecosistema spring a_plataforma_enterprise_jav

Mais de thomasdacosta (16)

PPTX
Azure Functions e Java: Do Desenvolvimento a Produção
PPTX
Organização de Computadores - Aula 02
PPTX
Organização de Computadores - Aula 03
PPTX
Organização de Computadores - Aula 01
PPTX
Redes de Computadores - Exercícios 06
PPTX
Redes de Computadores - Exercícios 05
PPTX
Programação Concorrente - Aula 06
PPTX
Redes de Computadores - Exercícios 04
PPTX
Redes de Computadores - Exercícios 03
PPTX
Redes de Computadores - Aula 04
PPTX
Algoritmos e Estrutura de Dados - Aula 05
PPTX
Algoritmos e Estrutura de Dados - Aula 03
PPTX
Redes de Computadores - Aula 03
PPTX
Redes de Computadores - Aula 02
PPTX
Programação Concorrente - LAB 01
PPTX
Redes de Computadores - Aula 01
Azure Functions e Java: Do Desenvolvimento a Produção
Organização de Computadores - Aula 02
Organização de Computadores - Aula 03
Organização de Computadores - Aula 01
Redes de Computadores - Exercícios 06
Redes de Computadores - Exercícios 05
Programação Concorrente - Aula 06
Redes de Computadores - Exercícios 04
Redes de Computadores - Exercícios 03
Redes de Computadores - Aula 04
Algoritmos e Estrutura de Dados - Aula 05
Algoritmos e Estrutura de Dados - Aula 03
Redes de Computadores - Aula 03
Redes de Computadores - Aula 02
Programação Concorrente - LAB 01
Redes de Computadores - Aula 01

Último (20)

PPTX
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PPTX
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PPTX
Aula sobre desenvolvimento de aplicativos
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PPTX
Aula sobre banco de dados com firebase db
PPTX
Émile Durkheim slide elaborado muito bom
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PDF
Processos na gestão de transportes, TM100 Col18
PPTX
Curso de Java 14 - (Explicações Adicionais (Classes Abstrata e Interface)).pptx
PPTX
Aula 18 - Manipulacao De Arquivos python
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PDF
Apple Pippin Uma breve introdução. - David Glotz
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PPTX
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Aula sobre desenvolvimento de aplicativos
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Aula sobre banco de dados com firebase db
Émile Durkheim slide elaborado muito bom
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Custos e liquidação no SAP Transportation Management, TM130 Col18
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Processos na gestão de transportes, TM100 Col18
Curso de Java 14 - (Explicações Adicionais (Classes Abstrata e Interface)).pptx
Aula 18 - Manipulacao De Arquivos python
COBITxITIL-Entenda as diferença em uso governança TI
Apple Pippin Uma breve introdução. - David Glotz
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx

Linguagem de Programação Java

  • 1. LINGUAGEM DE PROGRAMAÇÃO JAVA Prof. Thomás da Costa thomascosta@aedu.com
  • 2. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa A TECNOLOGIA JAVA A TECNOLOGIA JAVA
  • 3. 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órico Origens: A TECNOLOGIA JAVA
  • 4. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa A TECNOLOGIA JAVA Fonte: http://viralpatel.net/blogs/java-virtual-machine-an-inside-story/
  • 5. 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. JVM Java Virtual Machine: A TECNOLOGIA JAVA
  • 6. 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
  • 7. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa ECLIPSE ECLIPSE
  • 8. 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/ Eclipse IDE: Vamos conhecer alguns componentes do Eclipse.
  • 9. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa ECLIPSE Eclipse Selecionando uma workspace: Local onde iremos colocar os nossos códigos fontes e projetos. Diretório dos fontes
  • 10. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Eclipse Tela inicial: ECLIPSE
  • 11. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Eclipse Perspectiva Java: ECLIPSE
  • 12. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Eclipse Criando um Projeto: ECLIPSE
  • 13. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Eclipse Criando um Projeto: ECLIPSE
  • 14. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Eclipse Criando um Projeto: ECLIPSE
  • 15. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Eclipse Criando um Projeto: ECLIPSE
  • 16. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Eclipse Criando um pacote: ECLIPSE
  • 17. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Eclipse Criando um pacote: ECLIPSE
  • 18. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Eclipse Criando uma classe: ECLIPSE
  • 19. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Eclipse Criando uma classe: ECLIPSE
  • 20. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Eclipse Criando uma classe: ECLIPSE
  • 21. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa • Funcionamento de um programa Java. • Variáveis. • Condicionais. • Laços. • Vetores. • String. • Classes. • Interfaces. Java O que vamos estudar: A TECNOLOGIA JAVA Vamos começar !!!
  • 22. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa BÁSICO DA LINGUAGEM BÁSICO DA LINGUAGEM
  • 23. 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?"); } }
  • 24. 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 varargs System.out.format("%s formatada %s vários %s", new String("Saida"), new String("com"), new String("paramêtros")); } }
  • 25. 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); } }
  • 26. 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"); } }
  • 27. 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); } } }
  • 28. 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); } }
  • 29. 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); } }
  • 30. 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); } }
  • 31. 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(); } }
  • 32. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS
  • 33. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS Conceitos Detalhes: • 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.
  • 34. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS Conceitos Exemplos: • 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.
  • 35. 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
  • 36. 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
  • 37. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS Conceitos Detalhes: • 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.
  • 38. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS Atributos Detalhes: • Linda !!! • Maravilhosa !!! • Jedi !!! • Nome • Idade • Peso • Altura Atributos normalmente são características
  • 39. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS Atributos Detalhes: • Lindo !!! • Maravilhoso !!! • Batman !!! • Nome • Idade • Peso • Altura Atributos normalmente são características
  • 40. 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; } }
  • 41. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS Atributos Detalhes: • 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.
  • 42. 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()); } }
  • 43. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa CLASSES, OBJETOS, ATRIBUTOS E MÉTODOS Métodos Detalhes: • É 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.
  • 44. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa package br.com.aula.java; public class Pessoa { ... public int andar() { passos++; return passos; } }
  • 45. 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()); } }
  • 46. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa HERANÇA HERANÇA
  • 47. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa HERANÇA Herança Detalhes: • 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.
  • 48. 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; } }
  • 49. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa HERANÇA Herança Detalhes: • 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.
  • 50. 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()); } }
  • 51. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa HERANÇA Herança Detalhes: • Isso funciona? Pessoa funcionario = new Funcionario(); Sim !!! A classe Funcionario é do tipo Pessoa.
  • 52. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa HERANÇA Herança Detalhes: • 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.
  • 53. 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); } ... }
  • 54. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa package br.com.aula.java; public class Funcionario extends Pessoa { ... @Override public void falar(String frase) { System.out.println("Funcionário:" + frase); } }
  • 55. 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"); } }
  • 56. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa HERANÇA Herança Saída do Programa:
  • 57. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa INTERFACES INTERFACES
  • 58. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa INTERFACES Interfaces Detalhes: • 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.
  • 59. 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(); }
  • 60. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa package br.com.aula.java; public class Pessoa implements Humano { ... }
  • 61. LINGUAGEM DE PROGRAMAÇÃO JAVA – Prof. Thomás da Costa Interfaces Detalhes: • Para implementar uma interface utilizamos a palavra reservada implements seguida do nome da interface. • Podemos implementar mais de uma interface separados por virgula. INTERFACES
  • 62. 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"); } }