哪些问题是面试官经常问Java工程师的问题 ? --- 转自quora

Vivek VermaniVivek Vermaniwww.buggybread.com | Programme... (more)
 
 
Java的基础知识   For a Core Java Developer , Questions around following topics should be good.  

OOPs Concepts

Abstract Classes and Interfaces

Constructors

Overloading and Overriding

File IO and Serialization

Collections - List , Map , Set - Search, Sorting Algorithms

Access Specifiers

Exceptions - Checked , Unchecked

Generics

Java Keywords - static , final , volatile, synchronized , transient, this , super etc.

JVM and Memory Management

MultiThreading and Synchronization

HashCode and Equals

Design Patterns

Dependency Injection

Reflection API

Java 8 features - Lambda Expressions , Default Methods.


Here is a list of 200+ questions on Core Java - Java - Interview Questions and Answers - Quick Reference - One Liners

分布式系统/网络部分 If Someone is being hired for a Network / Distributed Application,Following questions can be asked 

Communication Protocols like IP, HTTP, TCP, FTP,UDP

Synchronous vs Asynchronus Communication

Sockets

Technologies like RMI, RCP

Message Queues

Interface APIs - JMS, JDBC

ORMs - EJB ( Session Beans , Entity beans, MDB's ),  Hibernate


Java web开发 If someone has to work on a Java based web application then he can be asked questions around following topics -

JSP / JSF 

Servlets / filters / Interceptors

Session Management / Transaction Management

JNDI

Architectures - n Tier, MVC 

Web Frameworks like Struts / Spring

Service Oriented Architecture / Web Services - SOAP / Rest

Web Technologies like HTML, CSS, Javascript and JQuery

Markup Languages like XML and JSON.

Application and Web Servers

Caching

Cloud service (AWS, SoftLayer, BlueMix)


If someone has to work on Java UI, then questions around following can be expected -

  • Applets
  • Frameworks like Swing, SWT, AWT
  • Advanced Frameworks like JavaFX

Every Developer is expected to have knowledge regarding the Data structures. If you are applying positions for a product / system development companies, lot stress will be given to these Questions.
算法导论讲的很全
  • Arrays , Linked List
  • Search Algorithm and their complexity
  • Sorting Algorithms and their complexity
  • Trees , Graphs

Every Java Developer is expected to have Database Knowledge so questions around following concepts can be asked 

Database Drivers

Normalization / Denormalization  泛化

Isolation Levels  

Transaction Management 

SQL Tuning / Optimization

SQL Queries - Inner Outer Joins, Group By , Having

Prepared Statement and their benefit.

Indices , Views

Stored Procedures

Triggers

Cursors


实际开发中回用到,平时注意总结就是了 Moreover questions around Tools, Methodologies, Processes can be asked -

Development Tools - Eclipse / RAD

Design Tools and Diagrams

Configuration Management Tools like SVN, Clearcase etc

Defect Management

Build Tools like Maven, Ant etc

Testing - Unit Testing, JUnit , Black box , White Box

Development Methodologies - Agile / Waterfall / Iterative

Requirement Analysis

Release Management


and then Interviewer can also ask open ended questions.

Which feature would you most like to see added to Java?  增加什么特征?

Which feature would you most like to be removed from Java? 减少什么特性?

Have you gone through some of the features introduced with latest Java version ?  你体验了什么Java新版本的特征?

Do you think removing Perm gen completely in Java 8 is a good idea ? Java 8中去掉永久代是个好主意么?

How would you go about debugging an exception ? 怎么调试exception 异常?

How does Java differ from other programming languages you've worked with? Java和其他编程语言有什么不同?

How do you document your code ? 你是怎么给代码写文档的?

If you are given a choice to implement something using javascript or Java ? Which technology will you use and why ? 

What Design Patterns you have used in your project ?  设计模式

Which Web application Framework  - Struts, Spring do you like and Why ? web开发框架

Which IDE, Source Control,Build tool you think is best ? 

Which development methodology you would like to work with ? 开发方法学

Do you think using open source servers like Apache , Tomcat is a better idea than paid servers ? 开源服务器 VS付费服务器

Which testing tools do you use ?  测试工具

What are the most important performance issues in Java web applications  性能问题

What are the most important technologies / specifications in Java EE 6? Java EE 6的最重要的特性是什么?

Do you like pair programming ? What's your views on Agile methodology comparing to SDLC ?   结对编程  敏捷开发   Software Development Life Cycle



Here are few links that might help.

200+ Java / J2EE Interview Questions and Answers
Java - Advanced Interview Questions for Experienced Professionals
Struts Framework - Interview Questions and Answers
Spring framework - Interview Questions and Answers
Hibernate - Interview Questions and Answers - Quick Reference
WAS / WSAD / RAD - Interview Questions and Answers
SVN ( subversion ) Interview Questions and Answers
Interview Questions and Answers on Maven
SVN ( subversion ) Interview Questions and Answers
Interview Questions and Answers on JSON (JavaScript Object Notation)
REST Web Services - Interview Questions and Answers
Java - SWT ( Standard Widget Toolkit ) / JFACE - Interview Questions and Answers
JavaScript interview questions and answers
Interview Questions and Answers on Markup Languages - XML , JSON
Interview Questions and Answers
Online Practice Tests - Java , Spring , Struts , Unix , Design Pattern , Websphere Commerce
原文地址:https://www.cnblogs.com/ridox/p/4233196.html