You are on page 1of 31

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.

com 1
Constelação
Desenvolvimento de Sistemas

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 2
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 28]
Em relação à linguagem de programação orientada a objetos Java, assinale
a alternativa correta.
● [A] Uma subclasse pode acessar os membros de dados privados
(protected) de sua superclasse.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 3
Comentários
● Modificadores de níveis de acesso em Java

Classe
Classe Pacote
Pacote Subclasse
Subclasse Todos
Todos

public
public 
 
 
 

protected
protected 
 
 

default
default 
 

private
private 

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 4
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 28]
Em relação à linguagem de programação orientada a objetos Java, assinale
a alternativa correta.
● [A] Uma subclasse não pode acessar os membros de dados privados
(protected private) de sua superclasse.
● Gabarito: ERRADO.
● Uma subclasse pode acessar os membros de dados protegidos (protected)
de sua superclasse

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 5
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 28]
Em relação à linguagem de programação orientada a objetos Java, assinale
a alternativa correta.
● [B] Embora as interfaces não sejam instanciadas com new, elas têm
certas propriedades similares às das classes comuns. Por exemplo,
uma vez definida uma interface, pode-se declarar que um objeto
variável será desse tipo de interface.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 6
Comentários
● Interfaces
● Não são classes
– São um conjunto de requisitos para que classes possam se adequar a ela
● “Se a classe estiver em conformidade com uma interface, então um determinado
serviço será realizado”
● São como um contrato ou padrão
– Descrevem o que as classes devem fazer
● Sem especificar como devem fazer
● Não possuem:
– Atributos de instância
– Métodos implementados

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 7
Comentários
● Interfaces
● Não podem ser instanciadas
– Apenas podem ser:
● Implementadas por classes
● Estendidas por outras insterfaces
● Não fazem parte de nenhuma hierarquia de classes
– Embora as interfaces trabalhem em combinação com elas
● Os objetos podem ter vários tipos:
– Tipo de sua própria classe
– Tipos das suas classes ancestrais
– Tipos de todas as interfaces que elas implementam

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 8
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 28]
Em relação à linguagem de programação orientada a objetos Java, assinale
a alternativa correta.
● [B] Embora as interfaces não sejam instanciadas com new, elas têm
certas propriedades similares às das classes comuns. Por exemplo,
uma vez definida uma interface, pode-se declarar que um objeto
variável será desse tipo de interface.
● Gabarito: CERTO.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 9
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 28]
Em relação à linguagem de programação orientada a objetos Java, assinale
a alternativa correta.
● [C] Static binding (ou early binding) é a propriedade de algumas
linguagens de programação em que a resolução de endereços (objetos
e métodos) é feita em tempo de execução.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 10
Comentários
● Formas de invocação de métodos
● Ligação ou acoplamento prematuro
– Early binding
– Acontece quando o método a ser invocado é em tempo de compilação do
programa
● Ligação ou acoplamento tardio
– Late binding
– Também é conhecido pelos termos:
● Dynamic binding
● Run-time binding
● Virtual Method Invocation
– Utiliza o conceito de polimorfismo
– Acontece quando o método a ser invocado é em tempo de execução do
programa
rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 11
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 28]
Em relação à linguagem de programação orientada a objetos Java, assinale
a alternativa correta.
● [C] Static binding (ou early binding) é a propriedade de algumas
linguagens de programação em que a resolução de endereços (objetos
e métodos) é feita em tempo de execução compilação.
● Gabarito: ERRADO.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 12
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 28]
Em relação à linguagem de programação orientada a objetos Java, assinale
a alternativa correta.
● [D] As classes abstratas não podem ter dados e métodos concretos.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 13
Comentários
● Classes abstratas
● Podem ou não incluir métodos abstratos
● Não podem ser instanciadas
– Mas podem ter subclasses
● Podem ter:
– Atributos estáticos
– Métodos estáticos
● Na linguagem Java, é uma classe declarada com o modificador abstract

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 14
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 28]
Em relação à linguagem de programação orientada a objetos Java, assinale
a alternativa correta.
● [D] As classes abstratas não podem ter dados e métodos concretos.
● Gabarito: ERRADO.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 15
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 28]
Em relação à linguagem de programação orientada a objetos Java, assinale
a alternativa correta.
● [E] De acordo com o princípio da herança, as superclasses herdam
métodos e atributos das subclasses.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 16
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 28]
Em relação à linguagem de programação orientada a objetos Java, assinale
a alternativa correta.
● [E] De acordo com o princípio da herança, as superclasses subclasses
herdam métodos e atributos das subclasses superclasses.
● Gabarito: ERRADO.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 17
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 29] A
propriedade da orientação a objetos que permite o envio de uma mesma
mensagem a diferentes objetos, de forma que cada objeto responda de
maneira mais apropriada para a sua classe, é a (o)
● [A] herança.
● [B] encapsulamento.
● [C] polimorfismo.
● [D] informatin hiding.
● [E] dynamic binding.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 18
Comentários
● Polimorfismo
● Conceito mais utilizado:
– É a propriedade de duas ou mais classes derivadas de uma mesma
superclasse responderem a mesma mensagem
● Cada uma de uma forma diferente
– Ocorre quando uma subclasse redefine um método existente na superclasse
● Métodos sobrescritos (overriding)

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 19
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 29] A
propriedade da orientação a objetos que permite o envio de uma mesma
mensagem a diferentes objetos, de forma que cada objeto responda de
maneira mais apropriada para a sua classe, é a (o)
● [A] herança.
● [B] encapsulamento.
● [C] polimorfismo.
● [D] informatin hiding.
● [E] dynamic binding.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 20
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 30]
Observe o trecho de código abaixo, escrito na linguagem de programação
Java.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 21
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 30] A
execução desse programa produzirá como resultado a seguinte saída:
● [A] 12345
● [B] 123456
● [C] 543210
● [D] 54321
● [E] 654321

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 22
Comentários
i Imprimir

5 -

5 6

4 65

3 654

2 6543

1 65432

0 654321

-1 654321

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 23
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 30] A
execução desse programa produzirá como resultado a seguinte saída:
● [A] 12345
● [B] 123456
● [C] 543210
● [D] 54321
● [E] 654321

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 24
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 31]
Observe o trecho de código abaixo, escrito na linguagem de programação
Java

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 25
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 31] A
execução desse programa produzirá como resultado a seguinte saída:
● [A] Java SE 7.
● [B] Java SE 8.
● [C] Java 7.
● [D] Java.
● [E] Java 8.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 26
Comentários
● Criando um objeto string
● Usando a forma mais direta:
– String nome = “Kal-El Gildo Araújo”;
● “Kal-El Gildo Araújo” é um literal de string
● Usando o operador new:
– String nome = new String(“Rogério Gildo Araújo”);

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 27
Comentários
● Um objeto da classe String é imutável
● Então ao criar um objeto dessa classe, ele não poderá ser alterado
● Exemplo:
– String s = “Java”;
– s.concat(“ SE 7”); // A string s continuará com o valor “Java”.
– s.replace(“7”, “8”); // A string s continuará com o valor “Java”.
– s = s.concat(“ SE 7”); // A string s receberá “Java SE 7”.
– s = s.replace(“7”, “8”); // A string s receberá “Java SE 8”.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 28
Questões de concursos
[IADES 2017 HEMOCENTRO/DF – Técnico de Informática – Questão 31] A
execução desse programa produzirá como resultado a seguinte saída:
● [A] Java SE 7.
● [B] Java SE 8.
● [C] Java 7.
● [D] Java.
● [E] Java 8.

rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 29
'

www.itnerante.com.br/profile/RogerioAraujo
www.facebook.com/professorRogerioAraujo
rogerioaraujo.wordpress.com • twitter: @rgildoaraujo
rgildoaraujo@gmail.com • profrogeraoaraujo@gmail.com
www.youtube.com/rgildoaraujo
rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 30
rogerioaraujo.wordpress.com • twitter: @rgildoaraujo • rgildoaraujo@gmail.com 31