As 10 principais perguntas e respostas da entrevista para desenvolvedores de Java

As 10 principais perguntas e respostas da entrevista para desenvolvedores de Java
Author

Ketkee

Last updated May 22, 2018


  • 15748 Views

Java é uma das linguagens de programação mais populares entre os desenvolvedores. Sua sintaxe descomplicada e compatibilidade com todos os principais sistemas operacionais torna a escolha ideal. Hoje, existem mais de 10 milhões de desenvolvedores que trabalham com a linguagem Java.

Com a concorrência tão intensa, as organizações que contratam desenvolvedores Java são bastante resolutas em suas prioridades de contratação. Apenas profissionais com competência técnica comprovada em Java e que podem projetar, codificar, construir e implantar qualquer tipo de aplicativo são contratados.

Mas não importa o quão boas sejam suas habilidades de codificação, é essencial ter uma entrevista para conquistar o papel Java dos seus sonhos.

Nós compilamos 10 das principais perguntas e respostas de modelo frequentemente feitas nas entrevistas com Java Developer - continue lendo para descobrir onde você está!

# 1 Você consegue diferenciar entre o J2SDK 1.5 e o J2SDK 5.0?

Sua resposta: Não há diferença entre o J2SDK 1.5 e o J2SDK 5.0. As versões foram renomeadas pela Sun Microsystems.

# 2 Qual é o número de bits usados ​​para representar os caracteres ASCII, Unicode, UTF-16 e UTF-8?

Sua resposta: Unicode requer 16 bits.

ASCII requer 7 bits - no entanto, é geralmente representado como 8 bits.

O UTF-8 apresenta caracteres em padrões de 8, 16 e 18 dígitos.

O UTF-16 requer padrões de 16 bits ou maiores.

# 3 É possível importar o mesmo pacote ou classe duas vezes? A JVM carregará o pacote duas vezes durante a execução?

Sua resposta: É possível importar o mesmo pacote ou classe mais de uma vez. Isso não terá nenhum efeito no compilador ou na JVM. A JVM carregará a classe mais de uma vez, independentemente do número de vezes que você importar a mesma classe.

# 4 A JVM é uma sobrecarga?

Sua resposta: não e sim. A JVM é uma camada extra que traduz o código de byte em código de máquina. Java fornece um adicional camada de traduzir o código-fonte quando comparado a idiomas como C.

Compilador C ++ - Código Fonte -> Código da Máquina

Compilador Java - Código Fonte -> Código da Máquina

JVM - Byte Code -> Código da Máquina

Embora pareça uma sobrecarga, essa conversão adicional permite que o Java execute Aplicativos em todas as plataformas, já que a JVM fornece a tradução para o código da Máquina de acordo com o Sistema Operacional subjacente.

# 5 Existem dois objetos - aeb - com o mesmo código de hash. Vou inserir dois objetos dentro do hashmap.

hMap.put (a, a);

hMap.put (b, b);

onde a.hashCode () == b.hashCode ()

Quantos objetos estarão dentro do hashmap?

Sua resposta: Pode haver 2 elementos com o mesmo código hash. Quando dois elementos possuem o mesmo hashcode, o Java usa os iguais para diferenciar ainda mais. Portanto, pode haver um ou dois objetos dependendo do conteúdo dos objetos.

# 6 Você poderia fornecer alguma implementação de um Dicionário com um grande número de palavras?

Sua resposta: A implementação mais simples que pode ser dada é a de uma lista em que se pode colocar palavras ordenadas e realizar uma pesquisa binária. A outra implementação com um melhor desempenho de pesquisa é HashMap, onde a chave é usada como primeiro caractere da palavra e o valor como LinkedList.

Até outro nível, existem HashMaps como:

hashmap {

a (chave) -> hashmap (chave-aa, valor (hashmap (chave-aaa, valor)

b (chave) -> hashmap (chave-ba, valor (hashmap (chave-baa, valor)

z (chave) -> hashmap (chave-za, valor (hashmap (chave-zaa, valor)

}

Até n níveis em que n é o tamanho médio da palavra no dicionário.

# 7 O que você acha que a saída deste código será?

dia enum {

SEGUNDA TERÇA QUARTA QUINTA SEXTA SÁBADO DOMINGO

}

classe pública BuggyBread1 {

public static void main (args de seqüência de caracteres []) {

Definir mySet = new TreeSet ();

mySet.add (Day.SATURDAY);

mySet.add (Day.WEDNESDAY);

mySet.add (Day.FRIDAY);

mySet.add (Day.WEDNESDAY);

para (dia d: mySet) {

System.out.println (d);

}

}

}

Sua resposta: QUARTA - FEIRA

SEXTA-FEIRA

SÁBADO

Apenas uma sexta-feira será impressa, pois o conjunto não permite duplicação.

Elementos serão impressos na ordem em que as constantes são declaradas no Enum. O TreeSet mantém os elementos na ordem crescente que é identificada pelo método compareTo definido. O método compareTo no Enum foi definido de forma que a constante declarada posteriormente seja maior que as constantes declaradas anteriormente.

# 8 Qual é a diferença entre System.out, System.err e System.in?

Sua resposta: System.out e System.err representam o monitor por padrão e, portanto, podem ser usados ​​para enviar dados ou resultados para o monitor. System.out é usado para exibir mensagens e resultados normais. System.eerr é usado para exibir mensagens de erro. System.in representa o objeto InputStream que, por padrão, representa o dispositivo de entrada padrão, isto é, o teclado.

# 9 Como o método substring () da classe String cria vazamentos de memória?

Sua resposta: O método de substring pode criar um novo objeto String com referência ao array while char, para evitar copiá-lo. Assim, você pode inadvertidamente manter uma referência a uma matriz de caracteres muito grande com apenas uma cadeia de caracteres.

# 10 Por que a matriz Char é preferida a String para armazenar uma senha?

Sua resposta: String é imutável em Java e armazenada no pool String. Uma vez criado, permanece no pool até que o lixo seja criado, disponibilizando a senha na memória. É um risco de segurança, porque qualquer pessoa que tenha acesso ao despejo de memória pode encontrar a senha como texto não criptografado.

Então você vai. Estas 10 perguntas devem prepará-lo bem para a sua entrevista.


[Preparando-se para a Certificação Java? Aqui estão 50 perguntas do teste da prática de certificação de Java. Faça este teste prático gratuito para saber onde você está ! ]

Boa sorte!

About the Author

Ketkee is a Java evangelist and an influencer with more than a decade of experience in Java/J2EE technologies. She has led successful projects for Fortune 500 companies in the past and also comes with a rich background of web technology.


{{detail.h1_tag}}

{{detail.display_name}}
{{author.author_name}} {{author.author_name}}

{{author.author_name}}

{{detail.full_name}}

Published on {{detail.created_at| date}} {{detail.duration}}

  • {{detail.date}}
  • Views {{detail.downloads}}
  • {{detail.time}} {{detail.time_zone_code}}

Registrants:{{detail.downloads}}

Downloaded:{{detail.downloads}}

About the {{detail.about_title && detail.about_title != null ? detail.about_title : 'On-Demand Webinar'}}

About the {{detail.about_title && detail.about_title != null ? detail.about_title : 'Webinar'}}

Hosted By

Profile

{{author.author_name}}

{{author.author_name}}

{{author.about_author}}

About the {{detail.about_title && detail.about_title != null ? detail.about_title : 'Ebook' }}

About the {{detail.about_title && detail.about_title != null ? detail.about_title : 'Ebook' }}

View {{detail.about_title && detail.about_title != null ? detail.about_title : 'On-Demand Webinar'}}

Webcast

Register Now!

Download the {{detail.about_title && detail.about_title != null ? detail.about_title : 'Ebook'}}!

First Name*
Last Name*
Email*
Company*
Phone Number*

View {{detail.about_title && detail.about_title != null ? detail.about_title : 'On-Demand Webinar'}}

Webcast

Register Now!

{{detail.about_title && detail.about_title != null ? detail.about_title : 'Webinar'}} Expired

Download the {{detail.about_title && detail.about_title != null ? detail.about_title : 'Ebook'}}

Email
{{ queryPhoneCode }}
Phone Number

Show full article video

Name Date Place
{{classRoomData.Date}} {{classRoomData.Place}} View Details

About the Author

{{detail.author_biography}}

About the Author

{{author.about_author}}