Search Interview Questions | Click here and help us by providing the answer. Click Correct / Improve and please let us know. |
|
|||
|
| ||||
| Interview Questions and Answers - Order By Newest | ||||
| ||||
| Ans. Implementing Comparable interface means that the elements of the class are comparable i.e the class provides the implementation of compareTo method that would help comparing the elements. This is usually required if we are planning to sort elements of a collection, If compareTo method is not defined , the sorting class / method could never understand a way to compare its elements in order to sort them. | ||||
| ||||
| Ans. Yes , it can be but it may not be an optimal alternative if we need to change the values frequently. As Enum is compiled like any Java File , any change requires the application to be rebuild , deployed and restart. | ||||
| ||||
| Ans. Multiple Inheritance refers to the concept of a class inheriting multiple classes. Example - Class C extends Class A ,Class B. This is not allowed in Java. Multilevel Inheritance refers to the concept of Inheritance in a chain. Example - Class B extends Class A, Class C extends Class B. This is permitted in Java. | ||||
| ||||
| Ans. As the name suggest size is the size of collection / data structure i.e number of elements or memory utilized by the collection. Index is the position of an element in a collection or data structure. | ||||
| ||||
| Ans. Classpath is the parameter for JVM to look for java classes ( .class files ) that are to be looad by class loader | ||||
| ||||
Ans. public class BuggyBread { | ||||
| ||||
| Ans. = is the assignment operator that assigns the result of the expression on the right to the variable on the left, whereas == is the operator to check object equality to see if the reference on left and right are pointing to the same object. For primitive types, its used to check if both variables holds the same value. | ||||
| ||||
| Ans. For objects or references, == operator check if the reference on left and right points to the same object. For primitive types or variables, == operator check if the variable on left and right holds the same value. | ||||
| ||||
| Ans. Enums in Java are used to declare predefined objects and then reuse them. they offer many benefits 1. Enum instance are type safe and thread safe. 2. Enum instances are singleton and hence reused. 3. If we use Enums with Switch , It makes sure that the passed argument is either of its instance and hence provides a safeguard. 4. If we use Enum with Sorted Collections we can sort the elements with a predefined priorities ( as per constant declaration in enum ) 5. We can use Enum as a Factory by defining its constructor. 6. We can store related constant data within enum. For example - If we know the values for the map upfront, we can alternatively use an enum. | ||||
| ||||
| Ans. Yes , we have been using this plugin with our projects and its purpose is to warn and stop the Build if there are duplicates of the same package and class are being carried either directly or through transitive dependencies. the duplicate could be coming through different types of dependencies or through different versions of the same dependency. Its purpose is to make sure that there is only one copy thats being used at compile time and runtime and hence shouldnt later result in runtime problems. | ||||
| ||||
| Ans. The simplest way is to ignore them if Maven enforcer plugin is complaining about it but it may lead to runtime problems later. We can do the dependency:tree to see from where these duplicate ones are coming and hence can exclude the duplicate one. | ||||
| ||||
| Ans. Compile This is the default scope. Compile dependencies are available in all classpaths of a project. Moreover, these dependencies are propagated to dependent projects. Provided This is much like compile, but indicates you expect the JDK or a container to provide the dependency at runtime. Runtime This scope indicates that the dependency is not required for compilation, but is for execution. Test This scope indicates that the dependency is is only available for the test compilation and execution phases. This scope is not transitive. System This scope is similar to provided except that you have to provide the JAR which contains it explicitly. | ||||
| ||||
| Ans. Default , Clean and Site. | ||||
| ||||
| Ans. Here is the list of classes that implements Collections Interface - http://www.buggybread.com/2015/02/java-collections-classes-that-implement.html Having Collection interface to extend Cloneable interface would mean necessarily implement clone method by all implementing classes. As not all collection classes allow duplicate elements, it makes no sense to clone elements for them. | ||||
| ||||
| Ans. As with all other objects its garbage collected after its usage unless its rethrown. | ||||
| ||||
| Ans. 1. Switching Overheads - Even though multi threading aims at improving performance by reducing the wait time and hence improving overall throughput, there is a cost of switching resources between threads and sometime this cost can surpass the benefits if there isnt much wait for IO or external communication. 2. Debugging is hard with multi threaded code. 3. Deadlock - Execution of multi threaded code many a times lead to deadlock due to shared resources. | ||||
| ||||
| Ans. Controller Command is the command that gets called upon a request, just like We have actions in struts and controller in Spring. Task is a step in this bigger process. Task command are the commands that perform specific task for a controller command, like service classes in other frameworks. In order to complete the request, a controller command may invoke multiple task commands. | ||||
| ||||
| Ans. java.util.Collection | ||||
| ||||
| Ans. Its 2048 and Yes it applies to get request but not POST. As in Get Request , elements are passed as part of the url, this limit applies to Get requests. | ||||
| ||||
| Ans. Following Tables can be created ASSET - Entity Table With foreign key reference to Table AssetType ASSET_TYPE - Entity Table specifying information related to Asset Type like Books, CDs etc. MEMBER - Registration information for the member MEMBERSHIP_TYPE - Membership Types provided by Library MEMBERSHIP - Relation table with foreign key for MEMBER , MEMBERSHIP_TYPE ASSET_ISSUE_LEDGER - Relationship between MEMBER and ASSET. This specify the issue of particular asset to a particular member. | ||||
| ||||
| Ans. http://javabeat.net/binary-search-tree-traversal-java/ | ||||
| ||||
| Ans. Array List works on Array and when we add an element in middle of the list, Array List need to update the index of all subsequent elements. I the capacity is full, it even may need to move the whole list to a new memory location . Linked List works on Double linked list algorithm and all it has to do is to adjust the address of the previous and next elements. | ||||
| ||||
| Ans. We can use external table feature of Oracle. | ||||
| ||||
| Ans. No. | ||||
| ||||
| Ans. Yes, we can define an inner class within interface.Inside the interface, the inner class is implicitly public static. So the following is legit in Java public interface BuggyBreadInterface { void doSomething(); public class BuggyBreadClass implements BuggyBreadInterface{ void doSomething(){ System.out.println("Do something"); } } } | ||||
| ||||
| Ans. No, identifier in java cannot start with a numeral. | ||||
| ||||
| Ans. But Collections.emptyList() returns an Immutable list whereas new arraylist() creates a mutable list. Advantage of getting an empty list using Collections.emptyList is that it returns a singleton list which can be shared among many references and hence made immutable. This is good fit for situations where we would like to initialize a list to basic minimum empty to avoid null pointer exception. | ||||
| ||||
| Ans. The prototype pattern is a creational design pattern. It is used when the type of objects to create is determined by a prototypical instance, which is cloned to produce new objects. Prototype is used when we need duplicate copies of objects. | ||||
| ||||
| Ans. http://javasearch.buggybread.com/CodeSnippets/searchCodeSamples.php?keyword=mock&category=code | ||||
| ||||
| Ans. Synchronize is used to achieve mutual exclusion i.e at one time, the segment of the code, method that has been declared synchronized should be executed by single thread only and hence the lock needs to be retrieved before executing the segment and then released. | ||||