Skip to main content

Core Java Concepts

Java Applications 

There are mainly four types of Java applications.
  • Standalone
  • Web 
  • Enterprise 
  • Mobile

Java Features 

There are several features in Java, but in here listed some important ones
  • Platform independent
  • Object oriented
  • Multi threaded
  • Distributed
  • Robust (automatic garbage collection, exception handling, type checking)

Java Security 

Java has 3 built-in security components;
  • Classloader: Separate class files packages from imported packages.
  • BytecodeVerifier: check the illegal access to objects
  • Security Manager: check what resources can access the object.

C++ vs Java



Methods

  • Static - No need to create an object to invoke the static method.
  • Constructor - use to initialize objects
    • Constructor name must same as the class name
    • Constructor has no return type
    • There are two types of constructors
      • Default - no parameter
      • Parameterized
    • If there is no constructor defined in the class, compiler automatically create default constructor
    • Constructor return value: current class instance

Compiling

At the compiler stage, Java code is converted to a bytecode.
JVM: Java Virtual Machine, used to execute the Java bytecode.Platform dependent.

Variables

There are three types of variables in Java
  • Local variable: variables define inside the method
  • Instance variable: variables define outside the method but inside the class
  • Static variable: variable declared as static

Data types

There are two kinds of data types in Java
  • Primitive: Byte, char, int, short, long, boolean, double
  • Non-primitive: String, array

Loops

  • While loop: If number of iterations are not fixed use this one
  • DoWhile loop: the loop is at least execute once.

Static

  • Variable: 
    • Refer common property for all objects (save memory)
  • Method
    • Belong to the class rather than object
    • Can invoke without creating object
    • this and super keyword can't use inside the static method

Types of inheritance (is-a)







In Java, multiple and hybrid interfaces are supported by interface only.If those are used in class level Java throws compile time error.

Aggregation (has-a)

Aggregation is based on entity reference





Comments

Popular posts from this blog

Sorting Algorithms

Bubble Sort Named as sinking sort. Compare each pair of the adjacent items and swap them if they are in the wrong order. Worst case and average case time complexity both O(n^2)  and best case time complexity is O(n).

JavaScript Objects and Prototypes

Create Objects Using function Create Objects without duplication code: use functions Using constructors To indicate a function is a constructor:  append new keyword in front of the function name when executing it Call Property of function object foo.call() = foo() Call can bind different objects and can execute functions __proto__ Copy of prototype object If some property is not in the object itself, it then looks it in the prototype. If it finds it returns the value of that property All the new object instances of function point to same prototype object prototype.constructor: property that points to function  GitHub repo:  https://github.com/kaosadi17/JavaScript/blob/master/objects%26prototypes.js

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 bloc...