Beruflich Dokumente
Kultur Dokumente
INDEX
1. Company Profile 6
2. History of Java 7
3. Features of Java 10
4. Introduction To Java 12
6. Installation Of Java 16
7. Configuring Variable 18
9. Package 21
11. Inheritance 23
13. Modifiers 28
16. IDE 40
Page - 5 -
COMPANY PROFILE
CETPA INFOTECH PVT LTD is the leader in the “specialized training” brands of India certified by
ISO 9001:2015 for its best quality. CETPA INFOTECH is the largest training service provider in
various engineering domains for all engineering students as well as for the working professionals. It
has an extensive experience of nurturing over 200000+ students in the past few years.
CETPA has been awarded as the “Best IT and Embedded Training Company” for 5 consecutive
years for delivering high quality training and workshops at more than 500 colleges across India.
CETPA is a trustworthy brand in Education and Training industry with its presence across several
cities such as Noida, Roorkee, Lucknow, Dehradun and . The company was started 12 years back
and it is continuously expanding having its overseas branches in Germany and Ukraine.
Getting a post is as difficult as defeat the crew because being in the associate world need a lot from
the candidate because of which the candidates are putting their perfect effort, which results process
of hardship level. Student can see each business is connect but resolve this problem is either
consuming years to reach to a crave place or come to CETPA. CETPA gives the entire essential
computer training which helps the beginner and the experienced employees so that they can have
better identification in this competitive globe.
Like other academic and training company, at CETPA learner will be offer assortments programs but
the trainers differs and make CETPA stand out from leftovers. CETPA has variety of knowledgeable
and experienced trainers whose accession is different which learners can see everywhere. CETPA
try its level best to boost their trainee’s capability so that they stand out from others and whatever
they grant to the corporate world inevitably becomes fruitful. Not only the fresher but also the
professionals who are not adequate to deal with the upcoming technology and software are also
helped here. CETPA try its aligned best to convey its services to every edge of the globe with the
help of tailored education. CETPA’s motto is to distribute the best utility to student and professionals
and that is why CETPA have taken the personalized approach because CETPA does not want
learned to adjust with their education.
Page - 6 -
HISTORYOF JAVA
It is quite interesting to know the development of Java technology, which is widely accepted in
the area of networked/distributed computing. Java evolved from a project developing a language
for programming consumer electronic devices at Sun Microsystems, USA.
Sun’s Stealth Project in 1990 was aimed to do research in the area of application of computers in
the consumer electronics market. Bill Joy, James Gosling, Mike Sheridan, Patrick Naughton
(formerly the project leader of Sun’s Open Windows user environment), and several other
individuals discussed the ideas for the Stealth Project in January 1991.The vision of this project
was to develop smart consumer electronic devices that could all be centrally controlled and
programmed from a handheld-remote-control-like device. The Stealth group began to work to
achieve this goal. It was realized that a platform-independent development-environment was
needed.
Green Project was initiated by Patrick Naughton, Mike Sheridan, and James Gosling of Sun
Microsystems in 1991 (Members of the Stealth Project, which later became known as the Green
Project) The tasks of the project were divided amongst the members of Green Project. Mike
Sheridan concentrated on business development, Patrick Naughton worked on the graphics
system, and James Gosling was to identify the appropriate programming language for the Green
Project. Even though creating a new language was not the aim of Green Project, a new language
was created as a programming tool in this project since C++ was found unsuitable for the project.
An intelligent remote control called *7 (Star Seven) was delivered as the first product of Green
Project in 1992. It is a PDA- like device comprising of a new language oak, an operating system
called GreenOS, user interface, and hardware. This device was quite impressive to Sun
Executives. But no customer was interested in this project. The market was not conducive to this
type of device in the consumer electronics industry.
Page - 7 -
The new language Oak was created by James Gosling, a Green Team member, specifically for
*7. Gosling named the new language Oak because that name was struck while looking at an oak
three outside of his office window. The name Oak was later renamed to Java in order to avoid
legal issues since Oak was the name of an existing language.
In November 1992, the Green Project was incorporated under the name FirstPerson. In 1993.
Time-Warner was demanding for proposals for set-top box operating systems and video-on-
demand technology with an objective of sending the data to consumer all over the country for
display on the television sets. At the same time (1993(, NCSA released the first graphical web
browser Mosaic 1.0, an easy-to-use front end to the World Wide Web.
Mosaic web browser revolutionized people’s perceptions. The remaining member of FirstPerson
returned to work on Java (Oak was renamed Java) to develop Java-based web browser.
FirstPerson was dissolved gradually. Naughton and Jonathan Payne developed WebRunner
(named after the movie Blade Runner). Later WevRunner was officially announced as the
TM
HotJava browser in 1994. This was the turning point for Java. At that time the World Wide
Web changed the face of Internet and it was winning the race on Internet.
Arthur Ban Hoff implemented the Java compiler in Java itself whereas Gosling implemented it in
C. The Java compiler, written in Java made the people to accept Java as a full-featured language.
Sun Microsystems officially announced Java environment at Sun World’95 on May 23, 1995.
Java entered into the mainstream of the Internet after a struggle for about four years. Netscape
Communications incorporated Java into its web browser Netscape Navigator. Within a decade,
Java was destined to be the most overreaching technology in the Internet. Java was not restricted
to the Internet alone. The initial goal of Sun was also achieved by using Java technology in
interactive set-top boxes, hand-held devices and other consumer electronics products.
Page - 8 -
Sun released the first version 1.0 of Java in 1996. Java is an object-oriented programming
language which evolved from C++. It is also a high-level programming language. The different
forms of Java versions are discussed in the next section.
Page - 9 -
FEATURES OF JAVA
Java is simple because the syntax of well-known languages such as C and C++ are used with
modifications meant for simplification and improvement. It is easy to read and write Java code if
the reader is familiar with C/C++.
Almost everything in Java is centered on creating objects, manipulating the objects and making
objects work together. Only the primitive operations and data types are at the sub-object level.
Hence Java is an object-oriented programming language.
An application can be distributed in many systems which are connected together. Since
networking capability is incorporated in Java, the data/file can be sent across many systems to
run the application.
Java is robust because it is more reliable. It ensures the reliability by providing early checking for
possible errors. It eliminates error-prone constructs such as pointer. It eliminates error-prone
constructs such as pointer. It also supports runtime error handling.
Java programs are compiled to a byte code format that can be read and run by interpreters on
many platforms including Windows, Linux, etc. Hence, it is architecture neutral. Because of this
feature it is portable to new hardware and operating systems.
Page - 10 -
Although the speed of execution of Java programs is slower compared to C/C++ programs, Java
is meant for distributed applications. Whenever the file/data is transmitted from one system to
another, the performance is not affected. Hence, it is having high performance.
Java supports multithreaded programming to perform several tasks simultaneously. Any code can
be loaded without recompilation at runtime. Hence it is dynamic.
Page - 11 -
INTRODUCTION TO JAVA
With the invention of microprocessors, the world is scientifically developed with sophisticated
equipments, systems, and devices. Microprocessors are used in computers, televisions, and fax
machines. Even the hand-held devices such as pagers, PDAs (Personal Digital Assistant), and
cell phones make use of microprocessors. All these electronic devices are helpful because of their
communication capabilities. With the increasing capabilities and decreasing cost of information
processing and networking technologies, the network is growing rapidly for transmitting
information through electronic systems.
Internet is the network of networks between different types of computers located at different
places to transmit information. Information can reach to any place in the world quickly at a
cheaper rate through the Internet. Thus, the Internet has made the world a global village for
information exchange. The emerging infrastructure of electronic devices and interconnected
computer networks create an environment that presents new challenges to software industries. for
this emerging computing environment, Java process to be a well – suited programming language.
it is found suitable for networked environments involving a great variety of computer and
devices.
Platform independence - Many languages are compatible with only one platform. Java
was specifically designed so that it would run on any computer, regardless if it was
running Windows, Linux, Mac, Unix or any of the other operating systems.
Simple and easy to use - Java's creators tried to design it so code could be written
efficiently and easily.
Multi-functional - Java can produce many applications from command-line programs to
applets to Swing windows (basically, sophisticated graphical user interfaces).
Page - 12 -
Java does have some drawbacks. Since it has automated garbage collection, it can tend to use
more memory than other similar languages. There are often implementation differences on
different platforms, which have led to Java being described as a "write once, test everywhere"
system. Lastly, since it uses an abstract "virtual machine", a generic Java program doesn't have
access to the Native API's on a system directly. None of these issues are fatal, but it can mean that
Java isn't an appropriate choice for a particular piece of software.
Page - 13 -
THE JAVA PLATFORM
One thing that distinguished Java from some other languages is its ability to run the same
compiled code across multiple operating systems.In other languages, the source code (code that
is written by the programmer), is compiled by a compiler into an executable file. This file is in
machine language, and is intended for a single operating system/processor combination, so the
programmer would have to re-compile the program seperately for each new operating
system/processor combination.Java is different in that it does not compile the code directly into
machine language code. Compilation creates bytecode out of the source code. Bytecode
generally looks something like this:
a7 f4 73 5a 1b 92 7d
When the code is run by the user, it is processed by something called the Java Virtual Machine
(JVM). The JVM is essentially an interpreter for the bytecode. It goes through the bytecode and
runs it. There are different versions of the JVM that are compatible with each OS and can run the
same code. There is virtually no difference for the end-user, but this makes it a lot easier for
programmers doing software development.
Page - 14 -
The Java virtual machine is written specifically for a specific operating system, e.g. for
Linux a special implementation is required as well as for Windows.
Java programs are compiled by the Java compiler into bytecode. The Java virtual machine
interprets this bytecode and executes the Java program.
A Java distribution comes typically in two flavors, the Java Runtime Environment (JRE)
and the Java Development Kit (JDK).
The Java runtime environment (JRE) consists of the JVM and the Java class libraries and
contains the necessary functionality to start Java programs.
The JDK contains in addition the development tools necessary to create Java programs.
The JDK consists therefore of a Java compiler, the Java virtual machine, and the Java
class libraries.
Page - 15 -
INSTALLATION OF JAVA
Windows:
installation
Check installation:
Java might already be installed on your machine. You can test this by opening a console
(if you are using Windows: Win+R, enter cmd and press Enter) and by typing in the
following command:
java -version
If Java is correctly installed, you should see some information about your Java
installation. If the command line returns the information that the program could not be
found, you have to install Java.
Before installing the Java Development Kit (JDK), you should probably know what it is.
It is distributed by Oracle. It contains the core libraries and compiler required to develop
Java. The JDK should not be confused with the JRE (Java Runtime Environment). The
JRE is a JVM for running, as opposed to compiling, Java programs.
To download the JDK, go to
http://www.oracle.com/technetwork/java/javase/downloads/index.html . Click on "JDK
with Net Beans Bundle". Follow the instructions for downloading the JDK installation
file.
If you are running Windows, simply run the executable file and follow the
instructions.
UNIX, Solaris, or Linux: For Linux and UNIX, download the "jdk1 6.0" for Linux
systems. Save the downloaded file in any drive. Once you have saved the file, extract it to
a place that you can remember, by using Terminal or by double clicking on the file.
Page - 16 -
When you have finished extracting the file, copy the JDK 1.6.0 folder and paste it in the
user/local (To paste to the user/local directory, you have to be in root) so that every user
can use the java files. You can delete the downloaded zip file so that it doesn't take up
space on your drive. Macintosh: The latest available JDK is automatically installed by
the operating system. Because Java for Macintosh is developed and maintained by Apple,
in coordination with Sun, the current version on the Macintosh may not be the current
version that is available
Note on Editions:
The JDK comes in three editions.
Java Standard Edition (JSE) – This version is the basic platform for Java. The course will
focus on this edition.
Java Enterprise Edition (JEE) – This edition is mainly for developing and running
distributed multitier architecture Java applications, based largely on modular software
components running on an application server. We will not be covering this version in the
course.
Java Micro Edition (JME) – This edition is primarily for developing programs to run on
consumer appliances, such as PDAs and cell phones.
Page - 17 -
CONFIGURING VARIABLES
Before writing code, it is recommended that you set the Path variable on your system so
you can compile your code more easily.
Validate installation:
Switch again to the command line and run the following command.
java -version
The output should be similar to the following output.
java version "1.7.0_25"
OpenJDK Runtime Environment (IcedTea 2.3.10) (7u25-2.3.10-1ubuntu0.13.04.2)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)
Page - 18 -
Development Process with Java:
Java source files are written as plain text documents. The programmer typically writes
Java source code in an Integrated Development Environment (IDE) for programming. An
IDE supports the programmer in the task of writing code, e.g. it provides auto-formatting
of the source code, highlighting of the important keywords, etc.
At some point the programmer (or the IDE) calls the Java compiler (javac). The Java
compiler creates the byte code instructions. These instructions are stored in .class files
and can be executed by the Java Virtual Machine.
Garbage collector
The JVM automatically re-collects the memory which is not referred to by other objects.
The java garbage collector checks all object references and find the objects which can be
automatically released.
While the garbage collector releases the programmer from the need to explicitly manage
memory the programmer still need to ensure that he does not keep unneeded object
references otherwise the garbage collector cannot release the associated memory.
Keeping unneeded object references are typically called memory leaks.
Class path
The class path defines where the Java compiler and Java runtime look for .class files to
load. This instruction can be used in the Java program.
For example if you want to use an external Java library you have to add this library to
your class path to use it in your program.
Page - 19 -
WRITE, COMPILE AND RUN A JAVA PROGRAM
Let us look at a simple code that would print the words Hello World.
Let's look at how to save the file, compile and run the program. Please follow the steps given
below:
Open notepad and add the code as above.
Save the file as: MyFirstJavaProgram.java.
Open a command prompt window and go o the directory where you saved the class.
Assume it's C:\.
Type ' javac MyFirstJavaProgram.java ' and press enter to compile your code. If there are no
errors in your code, the command prompt will take you to the next line (Assumption: The path
variable is set).
Page - 20 -
BASICS: PACKAGE, CLASS AND OBJECT
It is important to understand the base terminology of Java in terms of packages, classes and
objects. This section gives an overview of these terms.
Package:
Packages are typically used to group classes into logical units. For example all graphical views
of an application might be placed in the same package called com.vogella.webapplication.views.
It is common practice to use the reverse domain name of the company as top level package. For
example the company might own the domain, vogella.com and in this example the Java packages
of this company starts with com.vogella.
Other main reason for the usage of packages is to avoid name collisions of classes. A name
collision occurs if two programmers give the same fully qualified name to a class. The fully
qualified name of a class in Java consists out of the package name followed by a dot (.) and the
class name.
Without packages, a programmer may create a Java class called Test. Another programmer may
create a class with the same name. With the usage of packages you can tell the system which
class to call. For example if the first programmer puts the Test class into package report and the
second programmer puts his class into package xmlreader you can distinguish between these
classes by using the fully qualified name, e.g. xmlreader.Test or report.Test.
Page - 21 -
Class:
Def.: Template that describes the data and behavior associated with an instance of that class. In
Java source code a class is defined by the class keyword and must start with a capital letter. The
body of a class is surrounded by {}.
package test;
class MyClass {
The data associated with a class is stored in variables ; the behavior associated to a class or
object is implemented with methods.
A class is contained in a Java source file with the same name as the class plus the .java extension.
Object
The object is the real element which has data and can perform actions. Each object is created
based on the class definition.
Inheritance
A class can be derived from another class. In this case this class is called a subclass. Another
common phrase is that a class extends another class.
Inheritance allows a class to inherit the behavior and data definitions of another class.
The following codes demonstrate how a class can extend another class. In Java a class can
extend a maximum of one class.
Page - 22 -
package sumit.java;
class MyBaseClass {
void hello(){
System.out.println("Hello from MyBaseClass");
}
}
package com.vogella.javaintro.base;
If a class extends another class it inherits the methods from its superclass. If it wants to change
these methods it can override these methods. To override a method you use the same method
signature in the source code of the subclass.
To indicate to the reader of the source code and the Java compiler that you have the intention to
override a method you can use the @override annotation.
The following code demonstrates how you can override a method from a superclass.
package sumit.java;
class MyBaseClass {
void hello(){
System.out.println("Hello from MyBaseClass");
}
}
Page - 23 -
package sumit.java;
Every object in Java implicitly extends the Object class. The class defines the following methods
for every Java object:
equals(o1) allows to check if the current object is equal to o1
getClass() returns the class of the object
hashCode() returns an identifier of the current object
toString() Give a string representation of the current object
Page - 24 -
VARIABLES AND METHODS
Variable
Variables allow the Java program to store values during the runtime of the program.
A variable can either be a primitive variable or a reference variable. A primitive variable contains
value while the reference variable contains a reference (pointer) to the object. Hence if you
compare two reference variables, you compare if both point to the same object. To compare
objects use the object1.equals(object2) method call.
Instance variable
Instance variable is associated with an instance of the class (also called object). Access works
over these objects.
Instance variables can have any access control and can be marked final or transient. Instance
variables marked as final cannot be changed after assigned to a value.
Local variable
Final is the only modifier available to local variables. This modifier defines that the variable
cannot be changed after first assignment.
Local variables do not get default values, so they must be initialized before use.
Methods
A method is a block of code with parameters and a return value. It can be called on the object.
Page - 25 -
package sumit.java;
Method can be declared with var-args. In this case the method declares a parameter which
accepts from zero to many arguments (syntax: type .. name;) A method can only have one var-
args parameter and this must be the last parameter in the method.
Overwrite of a superclass method: A method must be of the exact same return parameter and the
same arguments. Also the return parameter must be the same. Overload methods: An overloaded
method is a method with the same name, but different arguments. The return type can not be used
to overload a method.
Main method
A public static method with the following signature can be used to start a Java application. Such
a method is typically called main method.
Constructor
A class contains constructors that are invoked to create objects based on the class definition.
Constructor declarations look like method declarations except that they use the name of the class
and have no return type. A class can have several constructors with different parameters. Each
class must define at least one constructor.
String s;
public MyConstructorExample2(String s) {
this.s = s;
}
}
If no explicit constructor is defined the compiler adds implicitly a constructor. If the class is sub -
classed then the constructor of the super class is always implicitly called in this case.
In the following example the definition of the constructor without parameters (also known as the
empty constructor) is unnecessary. If not specified the compiler would create one.
package sumit.java;
Every object is created based on a constructor. This constructor method is the first statement
called before anything else can be done with the object.
Page - 27 -
MODIFIERS
Access modifiers
There are three access modifiers keywords available in Java. public, protected and private. There
are four access levels: public, protected, default and private. They define how the corresponding
element is visible to other components. If something is declared public, e.g. classes or methods
can be freely created or called by other Java objects. If something is declared private, e.g. a
method, it can only be accessed within the class in which it is declared. protected and default are
similar. A protected class can be accessed from the package and sub-classes outside the package
while a default class can get only accessed via the same package. The following table describes
the visibility:
protected Y Y Y N
no
Y Y N N
modifier
Private Y N N N
Other modifiers
final methods: cannot be overwritten in a subclass
abstract method: no method body
synchronized method: threat safe, can be final and have any access control
Page - 28 -
native methods: platform dependent code, apply only to methods
strictfp: class or method
Page - 29 -
IMPORT STATEMENTS
In Java you have to access a class always via its full-qualified name, e.g. the package name and
the class name. You can add import statements for classes or packages into your class file, which
allow you to use the related classes in your code without the package qualifier.
Static imports
Static import is a feature that allows members (fields and methods) which are defined in a class
with the public static access modifier to be used in Java code without specifying the class in which
the member is defined. The feature provides a typesafe mechanism to include constants into code
without having to reference the class that originally defined the field.
Page - 30 -
MORE JAVA LANGUAGE CONSTRUCTS
Interface
Interfaces are contracts for what a class can do but they say nothing about the way in which the
class must do it. An interface is a type similar to a class. Like a class an interface defines
methods. An interface can have only abstract methods, no concrete methods are allowed.
Methods defined in interfaces are by default public and abstract – explicit declaration of these
modifiers is optional. Interfaces can have constants which are always implicitly public, static and
final. A class can implement an interface. In this case it must provide concrete implementations
of the interface methods. If you override a method defined by an interface you can also use the
@override annotation. The following code shows an example implementation of an interface and
its usage within a class.
package sumit.java;
Page - 31 -
@Override
public void test() {
// TODO Auto-generated method stub
@Override
public void write(String s) {
// TODO Auto-generated method stub
Class methods and class variables are associated with the class and not an instance of the class,
i.e. objects. To refer to these element you can use the classname and a dot (".") followed by the
class method or class variable name. Class methods and class variables are declared with the
static keyword. Class methods are also called static methods and class variables are also called
static variables or static fields.
An example for the usage of a static field is println of the following statement:
System.out.println("Hello World"). out is a static field, an object of type PrintStream, and you
call the println() method on this object. If you define a static variable the Java runtime
environment associates one class variable for a class no matter how many instances (objects)
exists. The static variable can therefore be seen as a global variable. The following code
demonstrates the usage of static fields.
Page - 32 -
package com.vogella.javaintro.base;
If a variable should be defined as constant, you declare it with the static and the final
keyword. The static method runs without any instance of the class, it cannot directly access non-
static variables or methods.
Page - 33 -
ABSTRACT CLASS AND METHODS
A class and method can be declared as abstract. An abstract class can not be directly
instantiated. If a class has at least one method which only contain the declaration of the method
but not the implementation then this class is abstract and can not be instantiated. Sub-classes
need then to define the methods except if they are also declared as abstract. If a class contains an
abstract method it also needs to get defined with the keyword abstract. The following example
shows an abstract class.
package sumit.java;
What to do How to do it
package test;
package test;
Create a new attribute (instance variable)
called var1 of type String in the MyNewClass public class MyNewClass {
class private String var1;
}
Page - 34 -
What to do How to do it
public
MyNewClass(String
para1) {
var1 = para1;
// or this.var1= para1;
}
}
package test;
public class
MyNewClass
{ private String
Create a new method called
var1;
doSomeThing in your class which
does not return a value and has no
public
parameters
MyNewClass(String
para1) {
var1 = para1;
// or this.var1= para1;
}
}
Create a new method called doSomeThing2 in package test;
your class which does not return a value and
has two parameters, a int and a Person public class MyNewClass {
Page - 35 -
What to do How to do it
public
MyNewClass(String
para1) {
var1 = para1;
// or this.var1= para1;
}
public void
doSomeThing2(int a,
Person person) {
package test;
Page - 36 -
What to do How to do it
public void
doSomeThing2(int a,
Person person) {
public int
doSomeThing3(String a,
String b, Person person) {
return 5; // Any value
will do for this example
}
package test;
public class
Create a class called MyOtherClass
MyOtherClass
with two instance variables. One
{ String myvalue;
will store a String, the other will
Dog dog;
store a Dog. Create getter and setter
for these variables.
public String
getMyvalue()
{ return myvalue;
}
public void setMyvalue(String this.myvalue = myvalue;
myvalue) {
Page - 37 -
What to do How to do it
Table 3:
What to do How to do it
Page - 38 -
What to do How to do it
Page - 39 -
INTEGRATED DEVELOPMENT ENVIRONMENT
The previous chapter explained how to create and compile a Java program on the command line.
A Java Integrated Development Environment (IDE) provides lots of ease of use functionality for
creating java programs. There are other very powerful IDE's available, for example the Eclipse
IDE. . For an introduction on how to use the Eclipse IDE please see Eclipse IDE Tutorial. The
remaining description uses the phrase: Create a Java project called... ". This refers to creating a
Java project in Eclipse. If you are using a different IDE please follow the required steps in this
IDE. Exercises - Creating Java objects and methods Create a Person class and instantiate it
Create a new Java project called com.vogella.javastarter.exercises1 and a package with the same
name. Create a class called Person. Add three instance variables to it, one for storing the first
name of the person, on for storing the last name and one for storing the age of the Person. Use
the constructor of the Person object to set the values to some default value. Write a public
method called writeName() which uses the System.out.println( method to print the first name of
the person to the console. Create a new class called Main with a public static void main(String[]
args). In this method create an instance of the Person class.
Page - 40 -