WHAT IS JAVA?
• Java is an object oriented programming language.
• Java is platform independent.
• Java is used in mobile phones and other embedded devices.
HISTORY OF JAVA
• Java was developed by James Gosling from sun microsystems in the
• In January 1996, JDK1.0 was released in the name of OAK.
• The JDK 1.0.2 was the first stable version.
• James Gosling, Mike Sheridan and Patrick Naughton initiated the
green project in June 1991.
Features of java
• Architecture neutral
• High Performance
Types of SDK’s in java
• Java SE
• Java EE
• Java ME
• Java Embedded
• Java DB
• Web Tier
• Java Card
• Java TV
Java virtual machine
• Java Virtual Machine is used for converting the bytecode into the
machine understandable format.
• JVM provides an abstraction between the java program and the
• Key components in JVM are
• Class loader
• Bytecode verifier
• Just In Time (JIT) compiler
How to compile and run java program
• The java program should be saved with an extension “.java”
• The command to compile the java program is “javac name.java ”
• The command to run the java program is “java name”
Main Concepts of OOP
• Encapsulation is the technique of making the fields in a class private
and providing access to the fields via public methods.
• The main benefit of encapsulation is the ability to modify our
implemented code without breaking the code of others who use our
• Encapsulation gives maintainability, flexibility and extensibility to our
Access Specifiers in java
Public access specifier
• A class, method, constructor, interface etc., declared public can be
accessed from any other class.
• Therefore fields, methods, blocks declared inside a public class can be
accessed from any class belonging to the Java Universe.
• If the public class we are trying to access is in a different package,
then the public class still need to be imported.
Private access specifiers
• Methods, Variables and Constructors that are declared private can
only be accessed within the declared class itself.
• Private access modifier is the most restrictive access level. Class and
interfaces cannot be private.
• Variables that are declared private can be accessed outside the class if
public getter methods are present in the class.
• Using the private modifier is the main way that an object
encapsulates itself and hide data from the outside world.
Protected access specifier
• Variables, methods and constructors which are declared protected in
a superclass can be accessed only by the subclasses in other package
or any class within the package of the protected members' class.
• The protected access modifier cannot be applied to class and
interfaces. Methods, fields can be declared protected, however
methods and fields in a interface cannot be declared protected.
• The default specifier is used to make a class visible to all the other
classes in its package but not visible to classes from other packages
• Inheritance is a compile-time mechanism in Java that allows you to
extend a class with another class
• The keyword extends is used for inheriting a Class.
• The class which extends some other class is called as derived class
• The base class is called as the super class or parent class.
• An interface in Java is similar to a class, but the body of an interface
can include only abstract methods and final fields (constants).
• A class implements an interface by providing code for each method
declared by the interface.
• The keyword used in interface concepts are interface and implements
Syntax for interface
class A implements interfacename