Skip to main content

Java- Interview


Here are some popular tips in Java

General Question

  • JVM - Java Virtual Machine. Used to execute byte code. Platform dependent (but byte code is platform independent)
  • JRE- Java Run time Environment. It provides run time environment and it's the implementation of JVM. It contains libraries and files that need to execute JVM.  
  • JDK- Java Development Kit. It contains JRE and development tools.
  • Why java doesn't support pointers: It's insecure and complex to understand
  • We can save java file with another name if class is not defined as public
  • Java use camalCase notation for objects naming (ex: firstName)

OOP Concepts Related 

  • Aggregation: weak relationship (bike has an indicator)
  • Composition:  strong relationship (bike has an engine)

GUI

  • Java GUI - Install Window builder to create GUI using Eclipse IDE

Code Related

  • No issues when you write static public void instead of public static void
  • We can execute program without main method : using static block 
  • this : refer the current object
  • Super class of every class : object class
  • Can't use both super() and this() in constructor at once
  • Can overload main method
  • Can declare main method as final
  • final class
    • can't inherit

Variables Related 

  • Local variables are not initialized to any default value
  • Static variables: 
    • used to refer the common property of all objects
  • final variables:
    • can't change the value

Method Related 

  • Constructor: It is a method that used to create objects
  • Return value of constructor : current instance
  • Constructor can't inherit and can't define as final
  • Static methods :
    • can invoke without initializing objects
    • can't override (Because they are part of the class, not the object)
  • final methods:
    • can't override
  • main method is static: because it's invoked before  initializing objects
  • If static keyword is removed from main method: program compiles but gives run time error




Comments

Popular posts from this blog

Object Oriented Programming (OOP)

Object Object is an entity that has state and behavior Class Collection of objects is known as class. There are four main types of OOP concepts Inheritance Object acquire all the properties and behavior of parent object Improve code re-usability Polymorphism One task is performed by different ways Use method overload and override Abstraction Hiding internal details and showing functionality Use abstract class and interfaces Encapsulation Binding code and data into a single unit

Maven

Maven is a software project management and comprehension tool, based on the concept of project object model. Maven Usages Build the code in the development environment (compile the source code, run the test cases and packaging the project) Project management tool Generate reports Dependency management Installation Steps You can install Maven by following below steps .  Manual Installation Download Maven binary file Create some environment variables M2_HOME = environment point to maven directory PATH = append Maven path until bin to path variable Using Ubuntu Terminal sudo apt-get install maven To check Maven is successfully installed, issue the following command mvn --version To create a Maven project using Terminal use following steps mkdir myApp cd myApp/ mvn archetype:generate : choose archetype for the project  groupId: org.amali.myProject (like package name) artifactId: MavenTestApp (like class name) The...

Model-View-Controller (MVC)

MVC(Model-View-Controller) is a software design pattern.It divided your applications into three components Model: Contain business rules and application Data View: Presentation layer (user interface) Controller: Handles the communication between view and model  Objectives of MVC Promote code usability Implement separation of concerns  Separate user interface and software logic Web Frameworks That Use MVC There are several web frameworks that use MVC design pattern.  Ruby On Rails (Ruby) Angular (JS) Django (Python) Express (JS) Flask (Python) Codeigniter (PHP) Simple UseCase for MVC In this use case scenario, Browser sends information that needs to create Employee Object, and Controller save that information in Model and Update the Employee View. Following Image shows the class diagram for above Scenario. Implementation:  https://github.com/kaosadi17/MVC