<!doctype html>

<html 
	lang="en"
	xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">

	<head>
		<meta charset="utf-8">
		
		<!--Page Title-->
		<title>Java Interview Guide - Don't Go To a Java Job Interview Unprepared</title>
		
		<!--Device Width Check-->
		<meta name="viewport" content="width=device-width, initial-scale=1">
		
		<!--Meta Keywords and Description-->
		<meta name="keywords" content="Java,Interview,Guide,Programming,Problems,Object-Oriented, Concepts, Data Structures, Design Patterns, Algorithms">
		<meta name="description" content="A comprehensive guide for Java Interviews. Includes over 150 technical questions and simple explanations.">
		
		<!--Favicon-->
		<link rel="shortcut icon" href="/javainterviewguide/img/favicon.ico" title="Favicon" />
		
		<!--Fixes for Internet Explorer CSS3 and HTML5-->
		<!--[if gte IE 9]>
		<style type="text/css">
			.gradient { filter: none!important;}
		</style>
		<![endif]-->
		
		<!--[if lt IE 9]>
		<script>
		  'article aside footer header nav section time'.replace(/\w+/g,function(n){document.createElement(n)})
		</script>
		<![endif]-->
		
		<!--Main CSS-->
		<link rel="stylesheet" href="/javainterviewguide/css/lib/style.css" media="screen, projection">
		
		<!--[if lt IE 9]>
		<link rel="stylesheet" href="/javainterviewguide/css/lib/style_ie8.css" media="screen, projection">
		<![endif]-->
		
		<!--Icon Fonts-->
		<link rel="stylesheet" href="/javainterviewguide/css/lib/font-awesome.min.css">
		
		<!--Google Webfonts-->
		<link href='http://fonts.googleapis.com/css?family=Open+Sans:400,700,300,600|Bree+Serif' rel='stylesheet' type='text/css'>
		
	</head>
	
	<body>
	
	
	<!-- Google Code for Amazon Affiliate #1 Conversion Page
	In your html page, add the snippet and call
	goog_report_conversion when someone clicks on the
	chosen link or button. -->
	<script type="text/javascript">
	  /* <![CDATA[ */
	  goog_snippet_vars = function() {
	    var w = window;
	    w.google_conversion_id = 978264953;
	    w.google_conversion_label = "g92wCOCjnWAQ-ca80gM";
	    w.google_remarketing_only = false;
	  }
	  // DO NOT CHANGE THE CODE BELOW.
	  goog_report_conversion = function(url) {
	    goog_snippet_vars();
	    window.google_conversion_format = "3";
	    window.google_is_call = true;
	    var opt = new Object();
	    opt.onload_callback = function() {
	    if (typeof(url) != 'undefined') {
	      window.location = url;
	    }
	  }
	  var conv_handler = window['google_trackConversion'];
	  if (typeof(conv_handler) == 'function') {
	    conv_handler(opt);
	  }
	}
	/* ]]> */
	</script>
	<script type="text/javascript"
	  src="//www.googleadservices.com/pagead/conversion_async.js">
	</script>
	
	
	<!--Start of Product Banner-->
	<section id="banner" role="banner">
		<div class="row">
			
			<!--Start of Product Image-->
			<div class="one_half">
			
				<div id="shelf">
					<img src="/javainterviewguide/img/book_dummy.png" height="451" width="331" alt="Book"/>
				</div>
			
			</div>
			<!--End of Product Image-->
			
			<!--Start of Product Banner Description-->
			<div class="one_half last">
				<!--Start of Banner Title-->
				<h1 style="margin-top: 0;">Don't Go To a Java Job Interview Unprepared</h1>
				<h2 class="subheader">Boost your confidence and negotiating power with this comprehensive guide. </h2>
				<!--End of Banner Title-->
				
				<p style="font-size: 1.3em;">Java interviews can be intimidating. Learn how to answer over 150 technical questions with simple and straightforward explanations.</p> 
				
				<p style="font-size: 1.3em;">I've conducted over 100 interviews at Fortune 500 companies and meticulously detailed the most effective questions. Don't let them catch you off guard!</p>
				
				<div style="margin-top:35px; color: black; padding: 10px; text-align:center; background: white; border-radius: 20px; -moz-border-radius: 20px;  -webkit-border-radius: 20px;  border: 2px solid #0E7880;font-weight: bold; font-size: 18px;">
				
				<p style="font-size: 1.0em; padding-top: 5px; margin-top: 0;">Available on Kindle and Paperback!</p>
				
				<div class="button_buy" style="padding:10px 0 20px 0">
					<a
					 onClick="goog_report_conversion('http://www.amazon.com/gp/product/B015HF9SJQ/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=B015HF9SJQ&linkCode=as2&tag=javainteguid-20&linkId=DBJAG7A7PBPI5QG2')"
					 href="http://www.amazon.com/gp/product/B015HF9SJQ/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=B015HF9SJQ&linkCode=as2&tag=javainteguid-20&linkId=DBJAG7A7PBPI5QG2" class="gradient" title="Buy eBook"> <span class="button_text">Get it Now on Amazon</span></a>
				</div>
				
				</div>
				
				<img src="http://ir-na.amazon-adsystem.com/e/ir?t=javainteguid-20&l=as2&o=1&a=B015HF9SJQ" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />
				
				<!--End of Buy Button-->
				
			</div>
			<!--End of Product Banner Description-->
		
		</div>
	</section>
	<!--End of Product Banner-->
	
	<!--Start of Main Content-->
	<article role="main">
	<div id="main_content">
	
	
	<!--Start of Features-->
	<section id="features">
	<div class="row">
	
	<!--Start of Features Title-->
	<h2 class="section_title"><span>What You Will Learn With This eBook</span></h2>
	<!--End of Features Title-->
	
	<br/>
	
	<!--Start of Features List-->
	<ul>
	<li class="one_half">
	<h4>Object-Oriented Concepts</h4>
	<p>Learn about high level programming concepts with simple, straightforward examples. Understand the best practices that encourage beautifully written code.</p>
	</li>
	
	<li class="one_half last">
	<h4>Object-Oriented Programming</h4>
	<p>Dive into the details of the language with thorough explanations of exception handling, generics, concurrency, and memory management.</p>
	</li>
	
	<li class="one_half ">
	<h4>Data Structures and Algorithms</h4>
	<p>Comprehensive explanations of critical data structures in the Java Collections framework as well as the algorithms that work on them, such as searching and sorting.</p>
	</li>
	
	<li class="one_half last">
	<h4>Design Patterns</h4>
	<p>Master creational, structural, and behavioral design patterns that every developer should recognize. See real examples of each pattern in the standard Java library.</p>
	</li>
	
	<li class="one_half">
	<h4>How to Solve Programming Problems</h4><p>Follow three simple steps to tackle high-level programming problems. Learn the process of discovering solutions rather than memorizing them with detailed sample problems.</p>
	</li>
	
	<li class="one_half last">
	<h4>What to Expect During the Interview</h4>
	<p>I'll walk you through a typical interview and prepare you for personal questions about your experience. I'll also tell you what questions you should ask (and which ones to avoid).</p>
	</li>
	
	
	</ul>
	<!--End of Features List-->
	</div>
	</section>
	<!--End of Features-->
	
	
	
	<!--Start of Testimonials-->
	<section id="testimonials" class="background_grey">
	<div class="row">
	
	<!--Start of Testimonial-->
	<blockquote class="one_third">
	<q>A great reference for job interviews... explanations are clear and concise.</q>
	<footer>
	<img src="/javainterviewguide/img/amazon-icon.png" height="60" width="60" alt="John Doe">
	<div>Vincent Saporito</div>
	Amazon Review
	</footer>
	</blockquote>
	
	<blockquote class="one_third">
	<q>Does exactly what it says on the tin, great book to have handy.</q>
	<footer>
	<img src="/javainterviewguide/img/amazon-icon.png" height="60" width="60" alt="John Doe">
	<div>Scott J. Irvine</div>
	Amazon Review
	</footer>
	</blockquote>
	
	
	<blockquote class="one_third">
	<q>I like this guide because it cuts right to the chase. No fluff, and no wasted time...</q>
	<footer>
	<img src="/javainterviewguide/img/amazon-icon.png" height="60" width="60" alt="John Doe">
	<div>Mark Mulvey</div>
	Amazon Review
	</footer>
	</blockquote>
	
	<!--End of Testimonial-->
	
	
	
	</div>
	</section>
	<!--End of Testimonials-->
	
	
	
	
	
	<section class="background_white">
	<div class="row" style="padding-bottom: 0;">
	
	<!--Start of Features Title-->
	<h2 class="section_title"><span>Read a Sample Chapter</span></h2>
	<!--End of Features Title-->
	
	<br/>
	<div id="toc" class="one_half">
	
	<h4>Introduction</h4>
	<h4>The Java Programming Language</h4>
	<h4 style="font-weight: bold; color: #E86E01;">Object-Oriented Concepts</h4>
	<h4>Object-Oriented Programming (Part I)</h4>
	<h4>Object-Oriented Programming (Part II)</h4>
	<h4>The Object Superclass</h4>
	<h4>Composition &amp; Inheritance</h4>
	<h4>Abstract Classes &amp; Interfaces</h4>
	<h4>Exceptions</h4>
	<h4>Generics</h4>
	<h4>Concurrency</h4>
	<h4>Memory Management</h4>
	<h4>Java Database Connectivity</h4>
	<h4>Web Applications</h4>
	<h4>Web Services</h4>
	<h4>Algorithms</h4>
	<h4>Java Collections Framework</h4>
	<h4>Important Interfaces</h4>
	<h4>Creational Design Patterns</h4>
	<h4>Structural Design Patterns</h4>
	<h4>Behavioral Design Patterns</h4>
	<h4>Reflection</h4>
	<h4>Dependency Injection</h4>
	<h4>Aspect-Oriented Programming</h4>
	<h4>Unit Testing</h4>
	<h4>Programming Problems</h4>
	<h4>Interview Preparation</h4>
	<h4>Interview Questions</h4>
	
	</div>
	
	<!--Start How it Works-->
	<div id="toc-content" class="one_half last">
	
	
	
	<h4 style="font-weight: bold; color: #E86E01;">Object-Oriented Concepts</h4>
	
	
	<h4>Abstraction</h4>
	  
	<p>Abstraction is the act of perceiving an entity from a broad perspective. For example, in the context of education a person can be generalized as a student, and in the context of employment a person can be generalized as an employee. Each abstraction reduces the attributes of a person to a subset of relevant information. The goal of abstraction is to reduce complexity in software systems.</p>
	  
	<h4>Encapsulation</h4>
	  
	<p>Encapsulation is a technique that encourages abstraction by purposefully hiding information. For example, the mechanical details of a car engine are encapsulated behind a steering wheel and floor pedals. Anyone familiar with this interface could drive a car without knowing what type of engine was under the hood. Java encourages encapsulation through the use of interfaces and by providing access modifiers that limit the visibility of classes, fields, and methods.</p>
	
	<h4>Polymorphism</h4>
	  
	<p>Polymorphism is a technique that encourages abstraction by allowing an entity to assume multiple forms. For example, a smartphone is polymorphic because it can assume the role of a camera, web browser, music player, or digital clock. Each application exposes a relevant interface to the user. In Java, an object can take on the form of any parent in its hierarchy or any interface in its hierarchy.</p>
	
	<h4>Mutability</h4>
	 
	<p>Mutability refers to the ability of an entity to change its state. An iPod is an example of a mutable entity because its contents frequently change. A vinyl record is an example of an immutable entity because its contents are permanently engraved. Immutable objects provide numerous benefits in software applications, such as stability and thread safety. Strings and all of the primitive wrapper objects are examples of immutable objects. In order to make an object immutable, the class must be final, all fields must be final, and it cannot expose any mutable fields or methods that modify mutable fields.</p>
	 
	<h4>Coupling</h4>
	 
	<p>Coupling refers to the level of dependency that exists between two entities. For example, a cell phone battery that is soldered to a motherboard is tightly coupled because neither the battery nor the motherboard can be replaced without affecting the other component. A battery that snaps into the back of a phone is loosely coupled because both entities could be replaced independently. In software applications, decoupled components are more flexible and easier to maintain.</p>
	
	<h4>Cohesion</h4>
	 
	<p>Cohesion refers to an entity's level of focus. For example, a Swiss Army knife is a low cohesion entity because it can do multiple things, but it can’t do them very well. A multi-tool could never match the productivity of a toolbox filled with highly cohesive tools. In software applications, cohesive components are more robust and easier to test.</p>
	
	<h4>Questions</h4>
	
	
	<h3>What is the purpose of abstraction in software development?</h3>
	
	<h3>What is encapsulation? How does Java support it?</h3>
	
	<h3>What is polymorphism? How does Java support it?</h3>
	
	<h3>What is the difference between a mutable object and an immutable object?</h3>
	
	<h3>How can you design an object to be immutable?</h3>
	
	<h3>What is the difference between coupling and cohesion? </h3>
	
	<h3>What is the preferred relationship between software components and why?</h3>
	
	</div>
	<!--End of How it Works-->
	
	
	
	</div>
	
	
	<div class="row" style="text-align:center;    padding-top: 20px;   padding-bottom: 75px;">
	<!--Start of Features Title-->
	<div class="button_buy">
	<a 
	 onClick="goog_report_conversion('http://www.amazon.com/gp/product/B015HF9SJQ/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=B015HF9SJQ&linkCode=as2&tag=javainteguid-20&linkId=DBJAG7A7PBPI5QG2')"
	 href="http://www.amazon.com/gp/product/B015HF9SJQ/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=B015HF9SJQ&linkCode=as2&tag=javainteguid-20&linkId=DBJAG7A7PBPI5QG2" class="gradient" title="Buy eBook"> <span class="button_text">Get it Now on Amazon</span></a>
	</div>
	
	<!--End of Features Title-->
	
	</div>
	
	</section>
	
	
	
	
	
	<section id="author" class="background_grey">
	<div class="row">
	<div class="">
	
	<!--Author Avatar-->
	<img src="/javainterviewguide/img/author.jpg" height="200" width="200" id="author_image" class="left" alt="Author">
	<!--End of Author Avatar-->
	
	<div class="">
	
	<h2>About the Author</h2>
	
	<p>Anthony DePalma is a Java aficionado who's conducted over 100 interviews at Fortune 500 companies. When he's not programming he can be found surfing the beautiful hurricanes of New Jersey. He lives down the shore with his wife and cats. This is his first book. <a href="mailto:ant.depalma@gmail.com">Email Him</a></p>
	
	</div>
	</div>
	
	
	
	
	
	</div>
	</section>
	
	
	
	
	</div>
	</article>
	<!--End of Main Content-->
	
	
	<!--Start of Landing Page Footer-->
	<footer role="contentinfo" class="background_white">
	<div id="page_footer" class="row">
	
	
	<p>
	&copy; Anthony DePalma 2015. All rights reserved.
	</p>
	</div>
	</footer>
	<!--End of Landing Page Footer-->
	
	
	
	<script>
	  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
	  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
	  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
	  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
	
	  ga('create', 'UA-67472000-1', 'auto');
	  ga('send', 'pageview');
	
	</script>
	
	</body>
</html>