All Flashcards
(62 cards)
Quais são os modificadores de acesso? Qual a ordem de permissão?
public>protected>default>private
Estes atributos e métodos são sempre acessíveis em todos os métodos de todas as classes. Este é o nível menos rígido de encapsulamento, que equivale a não encapsular.
Public +
livre
Estes atributos e métodos são acessíveis somente nos métodos (todos) da própria classe. Este é o nível mais rígido de encapsulamento.
private -
exclusivo
Quando há herança a subclasse herda os atributos privados mas não acessa
Estes atributos e métodos são acessíveis no pacote, nos métodos da própria classe e suas subclasses.
protected #
Visível no pacote e na classe.
friendly
packpage-friendly
No UML a permissão protected permite acessar quem?
só classes e subclasses
no java o pacote também pode acessar
Os atributos em UML se dividem em duas categorias. Quais são elas?
Classe(vem sublinhada e só a classe tem acesso) e de instância A de classe é compartilhada. Ex: A a1 = new A(); a1.valor = 10; A a2 = new A(); a2.valor = 99; SOP(a1.valor) -> 99 Onde valor é atributo de classe.
Quais são os dois tipos de polimorfismo?
Sobrecarga/Overloading
Sobrescrita/Overriding
Qual tipo de polimorfismo ocorre em tempo de execução e qual ocorre em tempo de compilação?
Sobrecarga - Estático - Ocorre na compilação
Sobrescrita - Dinâmico - Tempo de execução
Tempo de execução também é conhecido como late binding ou ligação tardia
Qual tipo de polimorfismo possui a mesma lista de parâmetros (assinatura) e mesmo nome?
Sobrescrita (Universal)
É necessário que exista herança
Qual tipo de polimorfismo possui diferentes assinaturas mas o mesmo nome?
Sobrecarga (Ad hoc)
Ordem, tipos e quantidades de parâmetros diferentes
O polimorfismo, uma das características da orientação a objetos, permite eliminar dos programas estruturas de controle condicionais que, em programas estruturados, provocam o surgimento de erros e a dificuldade de extensão e reutilização
Certo
Permite eliminar IF em programas estruturados
O que significa a classe abstract? Qual seu objetivo?
Quando a palavra-chave “abstract” aparece no início de uma declaração de classe, significa que esta classe nunca gerará instâncias.
Um método abstrato não tem corpo; o seu propósito é forçar uma subclasse a sobrepô-lo e fornecer uma implementação concreta do método.
Qual a diferença entre variáveis de instância e variáveis locais?
Instância - declaradas dentro de uma classe
Locais - declaradas dentro de um método e devem ser iniciadas (não recebem valor padrão).
Qual o tipo de método que não pode ser redefinido?
Final
A classe não pode ter subclasse
Qual a finalidade do método super?
Os membros definidos na superclasse podem ser acessados na subclasse através do qualificador super. Exceto se forem privados!!
Qual a palavra é usada para implementar uma interface?
implements
Os métodos da interface sempre são públicos e seus argumentos são sempre static final (constantes)
O que é a transitividade?
Os objetos podem receber características de outros objetos e transferi-las para seus descendentes.
Polimorfismo é o uso de um mesmo nome para identificar diferentes implementações dos métodos. Seu uso é comum na definição de construtores, em que os mesmos podem ser implementados em diferentes versões para as diferentes formas de se instanciar a classe
Certo
Se C3 herda de C1 ela É uma C1 ou TEM uma C1?
Herança - É uma C1
Uma interface possui métodos com conteúdo implementado que não precisam ser reescritos nas classes que a implementam.
Errado
É uma API da linguagem Java que permite componentes baseados em Java/J2EE criar, enviar, receber mensagens
JMS
Java Message Service
API J2EE que fornece uma interface padrão para localizar usuários, máquinas, objetos, redes e serviços
JNDI
Java Naming and Directory Interface
É uma especificação feita pela Sun que visa padronizar o uso de transações distribuídas feitas por aplicativos Java
JTA
Java Transation API