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

Introduction To JavaScript

JavaScript Language has following characteristics: Lightweight: Small memory footprint, easy to implement Interpreted: No compilation, Instructions executed only Object Oriented: Modeled around objects First-class functions: Functions used as variables and parameters Scripting language: Writing instructions for runtime environment JavaScript is used for  Client side web development Frameworks: JQuery, AngularJs, React, EServer-side Server-side web development Frameworks: NodeJS, Express Variable declaration and definition Declaration: Give a name to a variable Definition: Assign a value to the variable Equal operations  =: assigning value to a variable (a=30) ==: check the values (doesn't consider types) ===: check the values and types Functions:  no overloading functions are objects functional expression : assign function to variable anonymous function: function with no name Array methods push(value): value is appe...

Hibernate

Hibernate is an ORM (Object Relational Mapping) tool which is primarily used in the data layer. Object Relational Mappings Problems There are several problems can occur when you are trying to save objects in the database from the scratch without using Hibernate. Mapping member variables to columns Mapping relationships Handling data types Managing changes to an object Set Up the Development Environment  Following steps are briefly pointed out how to set up Hibernate on your local machine. Download the hibernate jar files Create a project in Eclipse Right click on the project name and go to properties Navigate to libraries tab Add library and import jar files (lib-> JPA/required) Add Postgres JDBC driver as jar file Configurations After you set up the Hibernate you have to create hiberante.cfg.xml file and do some configurations like setup database details, entity class, etc. Dialect: Define what kind of language should use to talk...

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