-
e) O Java permite que você tenha métodos com o mesmo nome, mas com assinaturas diferentes, isto chama-se sobrecarga. O interpretador determinará qual método deve ser invocado pelo tipo de parâmetro passado. Os trecho abaixo é válido para uma compilação Java.
Diferente da sobrecarga, a sobrescrita acontece quando um método existe em uma classe ? pai ? e é reescrito na classe ? filha ? para alterar o comportamento. A assinatura do método deve ser igual na classe ? pai ? e na classe ? filha ?.
http://javafree.uol.com.br/artigo/871497/
-
Não entendi pq a letra B é a certa, alguém pode me dizer?
-
Acredito que houve um engano... Um método sobrescrito tem a mesma assinatura:
"A sobrescrita de métodos consiste basicamente em criar um novo método na classe filha contendo a mesma assinatura e mesmo tipo de retorno do método sobrescrito."
Leia mais em: Sobrescrita e Sobrecarga - Revista Easy Java Magazine 11 http://www.devmedia.com.br/sobrescrita-e-sobrecarga-revista-easy-java-magazine-11/22603#ixzz3O5r4qbQJ
-
Também não entendi por que ser a letra B, pois, acredito que listas sejam especificações de coleções e não generalizações, como foi mencionada na letra B.
-
Motivo de ser a B:
List extends Collection (Lista é uma interface que estende a interface Collection).
Ela trabalha com Objetos e não tipos de dados específicos, daí ser dita como tipo genérico de coleções.
Isso vale para toda Collection.
………………..,-~*’`¯lllllll`*~,
…………..,-~*`lllllllllllllllllllllllllll…
………,-~*lllllllllllllllllllllllllllllll…
……,-*lllllllllllllllllllllllllllllllll…
….;*`lllllllllllllllllllllllllll,-~*~-…
…..\lllllllllllllllllllllllllll/………\;;…
…...\lllllllllllllllllllll,-*………..`~-~…
…….\llllllllllll,-~*…………………)_-\..*`*;.…
……..\,-*`¯,*`)…………,-~*`~.………….../
……...|/.../…/~,…...-~*,-~*`;……………./.\
……../.../…/…/..,-,..*~,.`*~*…………….*...…
…….|.../…/…/.*`...\...……………………)….)¯`~,
…….|./…/…./…….)……,.)`*~-,……….../….|..)…
……/./.../…,*`-,…..`-,…*`….,---…...\…./…
…...(……….)`*~-,….`*`.,-~*.,-*……|…/.…/……
…….*-,…….`*-,...`~,..``.,,,-*……….|.,*.…
……….*,………`-,…)-,…………..,-*`...,-*….(`-,…
..............f`-,………`-,/…*-,___,,-~*……
-
Muito simples,
Assinatura diz respeito ao nome do método + os tipos de parâmetros utilizados.
Sobrescrita: mesma assinatura e (certamente) comportamentos diferentes.
Sobrecarga: diferentes assinaturas e (certamente) comportamentos diferentes.
-
a) ERRADO. Máquina virtual Java - MVJ (do inglês Java Virtual Machine - JVM) é um programa que carrega e executa os aplicativos Java, convertendo os bytecodes em código executável de máquina. A JVM é responsável pelo gerenciamento dos aplicativos, à medida que são executados.
c) ERRADO. Servlet (servidorzinho em tradução livre) é uma classe Java usada para estender as funcionalidades de um servidor. Apesar dos servlets poderem responder a quaisquer tipos de requisições, eles normalmente são usados para estender as aplicações hospedadas por servidores web, desta forma eles podem ser imaginados como Applets Java que rodam em servidores em vez de rodarem nos navegadores web.
d) ERRADO. A linguagem Java prevê soluções para o problema de vazamento de memória - memory leak -, razão por que é necessário liberar objetos que não estejam mais em uso. Tecnicamente Java não pode ter vazamentos se considerar que o vazamento só ocorre quando algo é alocado e nunca ocorre a possibilidade de liberação quando não há mais referências para este objeto.
Se considerar que vazamento é toda memória ocupada sem que tenha uma referência para aquele objeto, então Java vaza memória o tempo todo. Só não terá memória vazada quando o GC rodar e limpar tudo o que não há mais referências. Logo em seguida ele começa vazar de novo. Se não considera isto um vazamento, ficamos ainda com a definição que Java nunca vaza memória.
Se considerar que vazamento é quando você tem um objeto referenciado ainda em algum lugar, mas este objeto não será mais usado na aplicação, aí ocorre o vazamento e pode ser por diversas razões. Mas muita gente não considera isto vazamento já que o objeto está referenciado.
e) ERRADO. Assinatura diz respeito ao nome do método + os tipos de parâmetros utilizados.
Sobrescrita: mesma assinatura e (certamente) comportamentos diferentes.
Sobrecarga: diferentes assinaturas e (certamente) comportamentos diferentes.
-
Polimorfismo
Existem dois tipos de polimorfismo que são conhecidos como sobrecarga (overload) e sobreposição (override).
A sobrecarga (overload) consiste em permitir, dentro da mesma classe, mais de um método com o mesmo nome. Entretanto, eles necessariamente devem possuir argumentos diferentes para funcionar. RICARTE (2001) afirma que a escolha de qual método irá ser chamado pelo programa principal dependerá de acordo com o seu tipo de objeto, que será tomada apenas no tempo de execução por meio de ligação
. Na sobreposição é necessário que os métodos tenham a mesma assinatura (tipo de retorno, nome do método, tipos e quantidades de parâmetros), mas com implementações diferentes.
Acho que escreveram errado lá em cima Paulo H. e Claudston.