0% found this document useful (0 votes)
2K views36 pages

Java Notes by Ashok Kumar K PDF

The document provides information about Java and J2EE notes prepared by Mr. Ashok Kumar K for the 7th semester BE students of CSE/ISE. It discusses 15 reasons to choose Mr. Ashok Kumar K's training program for final year projects, including training from scratch, code explanations, study materials, industry experienced trainers, reports and presentations, video manuals, strict SDLC, technical seminar topics assistance, availability of support, resume weightage, remote support, practical understanding, mock demos and presentations, soft skills training, and weekly monitoring. It also includes introductory sections on Java as a programming language and platform, the Java Virtual Machine, Java Application Programming Interface, and some Java buzzwords like simple

Uploaded by

Vardhman Siyal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2K views36 pages

Java Notes by Ashok Kumar K PDF

The document provides information about Java and J2EE notes prepared by Mr. Ashok Kumar K for the 7th semester BE students of CSE/ISE. It discusses 15 reasons to choose Mr. Ashok Kumar K's training program for final year projects, including training from scratch, code explanations, study materials, industry experienced trainers, reports and presentations, video manuals, strict SDLC, technical seminar topics assistance, availability of support, resume weightage, remote support, practical understanding, mock demos and presentations, soft skills training, and weekly monitoring. It also includes introductory sections on Java as a programming language and platform, the Java Virtual Machine, Java Application Programming Interface, and some Java buzzwords like simple

Uploaded by

Vardhman Siyal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
  • Introduction to Java: Provides an overview of Java's significance and introduces reasons for adopting Java in projects.
  • Java Basics: Introduces fundamental concepts of Java including Java as a language and its execution environment.
  • Simple Java Programs: Guides through basic Java program structure with examples and exercises for beginners.
  • Variables and Data Types: Discusses types of variables and data types in Java, explaining their uses and properties.
  • Operators and Expressions: Explains various operators available in Java and how expressions are constructed and evaluated.
  • Control Statements: Covers control flow statements in Java, including if-else, switch, and loop constructs with examples.

VTU

7th sem B.E (CSE/ISE)

JAVA/ J2EE

Notes prepared by
Mr. Ashok Kumar K
9742024066 | [email protected]
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

Unit 1:

INTRODUCTION TO JAVA

Mr. Ashok Kumar K


9742024066 | [email protected]

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

15 reasons to choose VTUPROJECTS.COM for your final year project work

1. Training from the scratch


We train our students on all the languages and technologies required for developing the projects from the
scratch. No prerequisites required.
2. Line by Line code explanation
Students will be trained to such an extent where they can explain the entire project line by line code to their
respective colleges.
3. Study Materials
We provide the most efficient study material for each and every module during the project development
4. Trainers
Each faculty in AKLC will be having 6+ years of corporate Industry experience and will be a subject matter
expert in strengthening student's skillset for cracking any interviews. He will be having a thorough experience
in working on both product and service driven industries.
5. Reports and PPTs
Project report as per the university standards and the final presentation slides will be provided and each
student will be trained on the same.
6. Video manuals
Video manuals will be provided which will be useful in installing and configuring various softwares during
project development
7. Strict SDLC
Project development will be carried out as per the strict Software Development model
8. Technical Seminar topics
We help students by providing current year's IEEE papers and topics of their wish for their final semester
Technical seminars
9. Our Availability
We will be available at our centers even after the class hours to help our students in case they have any
doubts or concerns.
10. Weightage to your Resume
Our students will be adding more weightage to their resumes since they will be well trained on various
technologies which helps them crack any technical interviews
11. Skype/ Team viewer support
In case the student needs an emergency help when he/she is in their colleges, we will be helping out them
through Skype/ Team viewer screen sharing
12. Practical Understanding
Each and module in the project will be implemented and taught to the students giving practical real world
applications and their use.
13. Mock demo and presentations
Each student will have to prepare for mock demo and presentations every week so that he/she will be
confident enough to demonstrate the project in their respective colleges
14. Communication & Soft skills Training
We provide communication and soft skills training to each students to help improve their presentation and
demonstration skills.
15. Weekly monitoring
Each student will be monitored and evaluated on the status of the project work done which helps the students
to obtain thorough understanding on how the entire project will be developed

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

1.1 Basics

Java is both a programming language and a platform

Java as a Programming Language

In the Java programming language, all source code is first written in plain text files ending with the .java extension. Those source files
are then compiled into .class files by the java compiler (javac). A .class file does not contain code that is native to your processor; it
instead contains bytecodes — the machine language of the Java Virtual Machine (JVM). The java launcher tool then runs your
application with an instance of the Java Virtual Machine.

Java Program Execution.

Executing a Java Program is a two steps process:

Step 1: Compile the source file by issuing a command


javac MyProgram.java
Output of this step is MyProgram.class file (bytecodes)

Step 2: Run the Program by giving the bytecoodes as an input to JVM


java MyProgram

Because the JVM is available on many different operating systems, the same .class files are capable of running on Microsoft Windows,
the Solaris Operating System (Solaris OS), Linux, or Mac OS. This is how java achieves “Compile once, Run anywhere” feature.

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

Fig: Through the JVM, the same application is capable of running on multiple platforms
Java as a Platform

A platform is the hardware or software environment in which a program runs. The Java platform is a software-only platform
that runs on top of other hardware-based platforms like Windows, Mac, etc.

The java platform has two components:

 The Java Virtual Machine


 The Java Application Programming Interface (API)

The Java Virtual Machine (JVM)

The JVM is one of the components of Java platform which executes the bytecodes on any machine in which it’s been
installed. The bytecodes can be generated by compiling the java source code (.java file) using a java compiler.
Bytecodes will be contained within .class files.

The Java Application Programming Interface (API)

The API is a large collection of ready-made software components that provide many useful capabilities. It is grouped
into libraries of related classes and interfaces; these libraries are known as packages. As a platform-independent
environment, the Java platform can be a bit slower than native code. However, advances in compiler and virtual
machine technologies are bringing performance close to that of native code without threatening portability.

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
Observations

 Upon installing Java in any machine, you should be getting these two entities
 Java Development Kit (JDK)
 Java Runtime Environment (JRE)

Java Development Kit (JDK)

JDK is a bundle of ready-made software components that provide many useful


capabilities. It is grouped into libraries of related classes and interfaces; these libraries
are known as packages. It constitutes the Java API component in the Java Platform.

Java Runtime Environment (JRE)

JRE is an implementation of Java Virtual Machine which actually runs the program.

Typically, each JDK contains one (or more) JRE's along with the various development
tools like the Java source compilers, bundling and deployment tools, debuggers,
development libraries, etc.

 Downloading and Installing Java

You can download the latest distribution of Java at its official website http://www.java.com/en/download/manual.jsp
This site provides java distribution for Windows, Mac OS, Linux, and Solaris. Download and install latest version of
Java on whichever the platform you are comfortable with.
Installation procedure is pretty simple. Hopefully you don't encounter any blockage here. Give a try!
After installing Java in your machine, please set the JAVA_HOME, PATH and CLASSPATH environment variables.
 The JAVA_HOME is the variable that your operating system uses to locate the installation path of java.
 The PATH is the variable that your operating system uses to locate needed executables from the command
line or Terminal window.
 The CLASSPATH variable is one way to tell applications, including the JDK tools, where to look for user
classes.

1.2 Java Buzzwords

Simple
Java is a simple Language because it contains many features of other Languages like C and C++ and removes complexity because it
doesn’t use pointers, storage classes and goto statements and it doesn’t support multiple inheritances.

Object oriented
Java is purely an Object Oriented Programming language i.e., all the code of the Java language is written into the classes and objects.

Distributed
Java is designed as distributed language because, for creating applications on network it has the ability to share the data and programs
over the LAN (local area network). Java apps can open the remote objects on internet as easily they can do in local systems.
Mr. Ashok Kumar K | 9742024066 | [email protected]
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
Multithreaded
A Java program can be divided into multiple threads assigning different tasks for different threads and have all the threads executing in
parallel. Example for multithreaded application is a browser (multiple tabs can be opened; here each tab is a thread).

Dynamic
The Java Virtual Machine (JVM) maintains a lot of runtime information about the program and the objects in the program. Libraries are
dynamically linked during runtime. So, even if you make dynamic changes to pieces of code, the program is not affected.

Architecture neutral
This means that the programs written on one platform can run on any other platform without having to rewrite or recompile them. In
other words, it follows 'Write-once-run-anywhere' approach.
Java programs are compiled into bytecode format which does not depend on any machine architecture but can be easily translated into
a specific machine by a Java Virtual Machine (JVM) for that machine.

Portable
A C/C++ program may run slightly differently on different hardware platforms depending on how these platforms implement arithmetic
operations.
In Java, it has been simplified. Unlike C/C++, in Java the size of the primitive data types are machine independent. For example, an int
in Java is always a 32-bit integer, and float is always a 32-bit IEEE 754 floating point number. These consistencies make Java
programs portable among different platforms such as Windows, UNIX and Mac.

High performance
Java programs are compiled to portable intermediate form known as bytecodes, rather than to native machine level instructions and
JVM executes the bytecodes on any machine on which it is installed. This architecture means that Java programs are faster than
programs/scripts written in purely interpreted languages but slower than C and C++ programs that compiled to native machine
languages.

Robust
A Program or an application is said to be robust (reliable) when it is able to give some response in any kind of context. Java’s features
help to make the programs robust. Some of those features are: type checking, exception handling, etc

Secured
Java provides data security through encapsulation. When we transfer the code from one machine to another, the JVM first check the
code to check if it is affected by virus/threats or not. If the code is affected then it will never execute that code in that machine. Also we
can write applets in Java which provides security. An applet is a small program which can be downloaded from a server using a
browser. There is no need to worry about applets accessing the system resources which may compromise security.

1.3 Object oriented concepts

Object
An Object can be any real world entity we come across in our life. Example an Animal is an Object, also a Bank is an Object, a Human
is an Object etc. An object is a software bundle of related state and behavior.

Class
A class is a blueprint or prototype from which objects are created. It's just a template for an object. It describes an object. For Example,
a class just describes how a Dog looks like. (Say, a dog has 4 legs, it barks, it eats etc.), but an Object refers to a real Dog.

Inheritance
Generally, a process by which a child class acquires the state and behavior of its parent class is referred to as Inheritance. For
example, Hyundai is a parent class whose properties are inherited by the classes named iTen, iTwenty, Verna, Getz etc.

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
Inheritance can also be referred to the concept of Generalization, which is the process of extracting common characteristics (states and
behavior) from two or more classes, and combining them into a generalized super class.

Polymorphism
The word "Polymorphism" refers to the ability to take more than one form. In terms of programming, the polymorphism refers to the
process in which a member function of a class behaves differently for different inputs. For example, a function move() in the game of
chess behaves differently for different pawns (for instance, it allows only sideways movement for camel and straight movement for
elephant).

Encapsulation
Encapsulation refers to the process of binding the data members and the functions (that accesses these data) together. A class is an
example for encapsulation. Through encapsulation a class can hide the internal details of how an object does something. Encapsulation
helps to change the internal implementation of the object without affecting the overall functionality of the system. Encapsulation
provides abstraction (Information hiding).

Interface
An interface is a description of the actions that an object can do. For example when you flip a light switch, the light goes on, you don't
care how, just that it does. In Object Oriented Programming, an Interface is a description of all functions that an object must have. For
example, anything that "ACTS LIKE" a light, should have a turn_on() method and a turn_off() method. So these two functions will be
included within an interface. The purpose of interfaces is to allow the computer to enforce these properties and to know that an object of
TYPE T must have functions called X,Y,Z, etc.

Package
A package is a namespace that organizes a set of related classes and interfaces. Conceptually you can think of packages as being
similar to different folders on your computer. You arrange all audio songs under a specific directory, and all video songs under another
directory, etc. Because software written in the Java programming language can be composed of hundreds or thousands of individual
classes, it makes sense to keep things organized by placing related classes and interfaces into packages.

1.4 Simple Java Programs

My first Java Program

Assumptions:

Java has been installed and the environment variables are been properly set.

Steps

Step1: Open a text editor (notepad, edit plus, etc) and write the source code.

Step 2: Save this file as Hello.java in your local hard disk (where ever you wish)

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

Step 3: Open a command window and change the directory to the one where you just saved your Hello.java source file.

Step 4: Compile the source file using java compiler. i.e, by issuing a command as follows:
javac Hello.java

If there are any compilation errors in your program, this command will not successfully executes, instead it will throw an error saying
what went wrong. If your program is completely error free, the compilation process will be successful. You can observe that, the output
of the compilation process is a .class file which is called the java "byte code".

Step 5: Execute the .class file by giving it as an input to JVM through following command.

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
java Hello

The program executes and the output can be seen in the console. Yes, you are done with your first Java program successfully.
Congrats :)

Observations

class Hello {
public static void main (String arg[]) {
System.out.println("Hello World. Welcome to the world of Java.");
}
}

 Java's coding syntax closely resembles to that of C/C++.

 All Java source files should have an extension of .java.

 Java is case sensitive.

 In C++, the class was optional. i.e., you can write a C++ program with or without a class. But in java it's not like that. Nothing
can be written in Java without a class. So, you can observe the main function has been enclosed within a class.

 Just like C/C++ which provides printf()/cout to print something on standard console, Java provides "println()" function to print
something in the console. This println() method is a member of a class named "PrintStream", whose object is created and
named as 'out' within a class called "System". Thus, println() function is referenced through a dot (.) notation
(System.out.println)

 Please focus on the signature of the main function. This signature can't be changed.
 The keyword 'public' says that, the main function can be accessed even outside the defining class. This is like
giving an access permission to JVM to execute the main function. If you mark it as private instead, it's like you are not
allowing even JVM to execute the main function and JVM throws an error if you try to run the program in that way.
 The keyword 'static' has a special meaning. Generally a class member is accessed through its object. So if JVM
has to execute the main function, it has to get an object of the class enclosing the main function. But how will JVM get
this object? Somehow, JVM has to execute the main function without having its object. The keyword 'static'
comes as a solution for this. This keyword indicates that a function can be accessed without an object.
 The keyword 'void' indicates that a function returns nothing. In Java, you can't return anything from the main

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
function, so always the main function will be having a return type of void.
 The Keyword 'main' is the name of the function and at this point of time you can think this as the entry point for a
Java application.
 String arg[] within the main function parenthesis is used to hold command line arguments provided during the
program execution. Let's see an example program at later point of time.

 Comments in Java are of two types: Single line comments and Multiline comments.
 Single line comment starts with // followed by the comment string.
 Multi line comment starts with /* followed by the comment string and ends with */

 There can be more than one class within a single .java file. The class that encloses the main function can be called as Main
Class.

 A java source file should be having the same name as the class name which contains the main function. You can't choose the
name of your wish like in C/C++. This is to help the JVM to search for the main function.

 In a single .java file where there are more than one classes, only one class can be marked as 'public' and this class should be
the main class. All the other classes should either be marked as private or default. It enables a more efficient lookup of source
(.java) and compiled (.class) files during compilation (import directives) and a more efficient class loading during execution.

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
Practice Programs

a. Program to illustrate data types, variables, and functions


b. Program to illustrate classes and objects.
c. Program to illustrate loops and control statements.
d. Program to print the stars in left triangle pattern.
e. Program to print the stars in right triangle pattern.
f. Program to print the diamond pattern.
g. Write a method named lastDigit that returns the last digit of an integer. For example, lastDigit(3572) should return 2. It should
work for negative numbers as well. For example, lastDigit(-947) should return 7.
h. Write a method named firstDigit that returns the first digit of an integer. For example, firstDigit(3572) should return 3. It should
work for negative numbers as well. For example, firstDigit(-947) should return 9.
i. Write a recursive function in java to print all natural numbers from 1 up to (n-1) .
j. Write a Java program to print the command line arguments.
k. Write a program to calculate the average among the elements {4,5,7,8}, using for each in java. How for each is different from
for loop?

Program to illustrate data types, variables, and functions

public class One {


public static void main (String arg[]) {
int a=10;
String s = "Welcome";

System.out.println("Integer value is .... "+a);


System.out.println("String value is .... "+s);

int x=2, y=3;


int res = add(x,y);
System.out.println("Sum of "+x+" and "+y+" is .... "+res);
}

public static int add(int x, int y) {


return x+y;
}
}

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

Program to illustrate loops and control statements.

class Three {
public static void main (String arg[]) {

for (int i=0; i<5; i++) {


if (i%2==0) {
System.out.println(i+" is a Even Number ");
} else {
System.out.println(i+" is a Odd Number ");
}
}
}

Program to print the stars in left triangle pattern

class Four {
public static void main (String arg[]) {

int n=5;
for (int i=0;i<n;i++) {
for (int j=0;j<=i;j++) {
System.out.print("*\t");
}
System.out.println("\n");
}

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

Program to print the stars in right triangle pattern

class Five {
public static void main (String arg[]) {
int n=5;
for (int i=0;i<n;i++) {
for (int k=n;k>=i;k--)
System.out.print("\t");
for (int j=0;j<=i;j++)
System.out.print("*\t");
System.out.println("\n");
}

}
}

Program to print the diamond pattern.

class Six {
public static void main (String arg[]) {

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

int n=5;
for (int i=0; i<n;i++) {
for (int j=0;j<n-i;j++)
System.out.print("\t");
for (int k=0;k<i;k++)
System.out.print("*\t");
for (int p=1;p<i;p++)
System.out.print("*\t");
System.out.println("\n");
}
for (int i=n; i>=0;i--) {
for (int j=0;j<n-i;j++)
System.out.print("\t");
for (int k=0;k<i;k++)
System.out.print("*\t");
for (int p=1;p<i;p++)
System.out.print("*\t");
System.out.println("\n");
}

}
}

Write a method named lastDigit that returns the last digit of an integer. For example, lastDigit(3572) should return 2. It
should work for negative numbers as well. For example, lastDigit(-947) should return 7.

class Seven {
public static void main (String arg[]) {
int n = -7676;
int ld = lastDigit(n);
System.out.println("Last Digit in "+n+" is .... "+ld);

n = 3489;
ld = lastDigit(n);

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
System.out.println("Last Digit in "+n+" is .... "+ld);
}

public static int lastDigit(int n) {


return Math.abs(n%10);
}

Write a method named firstDigit that returns the first digit of an integer. For example, firstDigit(3572) should return 3. It
should work for negative numbers as well. For example, firstDigit(-947) should return 9.

class Eight {
public static void main (String arg[]) {
int n = -7676;
int ld = firstDigit(n);
System.out.println("First Digit in "+n+" is .... "+ld);

n = 3489;
ld = firstDigit(n);
System.out.println("First Digit in "+n+" is .... "+ld);
}

public static int firstDigit (int n) {


n = Math.abs(n);
while (n > 9) {
n = n/10;
}
return n;
}

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

Write a recursive function in java to print all natural numbers from 1 up to (n-1)

public class Nine {


public static void main(String args[]) {
int n = 10;
series(n);
}

public static void series(int x) {


if (x > 0)
series(--x);
if (x != 0)
System.out.print(x + " ");
}
}

Write a Java program to print the random number in between 0 and n

import java.util.Random;
public class Ten {
public static void main(String args[]) {
Random r = new Random();
int n = 100;
int ran = r.nextInt(n);
System.out.println("Random number in betwwen 0 and "+n+" is .... "+ran);
n = 200;
ran = r.nextInt(n);
System.out.println("Random number in betwwen 0 and "+n+" is .... "+ran);

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
n = 300;
ran = r.nextInt(n);
System.out.println("Random number in betwwen 0 and "+n+" is .... "+ran);
n = 400;
ran = r.nextInt(n);
System.out.println("Random number in betwwen 0 and "+n+" is .... "+ran);
}
}

Write a Java program to print the command line arguments

public class Eleven {

public static void main (String arg[]) {


System.out.println("Command line arguments are .. ");

for (String s : arg) {


System.out.println(s);
}
}
}

Write a program to calculate the average among the elements {4,5,7,8}, using for each in java. How for each is different
from for loop?

public class Twelve


{

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
public static void main(String args[])
{

int arr[] = {4,5,7,8};

int sum = 0;
for (int ele : arr) {
sum = sum + ele;
}

System.out.println("Average = "+ (float) sum/arr.length);

}
}

1.5 Variables and Data types

1.5.1 Variables

Variable is the name or the identifier given to the known memory location. It is used to store some program data/value which might be
referenced in future. To put it in the other way, the memory location will be accessed through the variable name.

Java defines the following type of variables

 Instance Variables (Non static)


Variable for which a separate memory space will be created for each instance of a class is called a Instance variable. i.e., its
value will be unique to each instance of a class. Instance variables will not be having 'static' keyword prefixed. They are also
called non static variables.
 Class Variables (Static)
Variable which actually shares the value among all the instances of a class is called a Class Variable. It is created by prefixing
the keyword 'static' while declaring a variable. It tells the compiler that there is exactly one copy of this variable in existence
regardless of how many times the class has been instantiated. It is also called static variable.
 Local Variables
Any method in java will store its temporary state in a local variable. A variable which can be accessed only within its defining
block can be called as a local variable for that block. It can't be accessed anywhere else outside this block. There is no special
keyword to designate a variable as local. A variable by default becomes local if it's been defined within any block (open brace
and closing brace)
 Parameters
Parameters are the input variables for a method within a class.

1.5.2 Data types

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

A Data type is the classification identifying one of the various types of data, which determines the possible values for that type. There
are eight primitive data types and three reference data types in Java as described by the figure.

Fig: Data types in Java

Primitive Data types

The Primitive data types are predefined data types, which always hold the value of the same data type, and the values of a
primitive data type don't share the state with other primitive values. These data types are named by a reserved keyword in Java
programming language.

 byte: The byte data type can be useful for saving memory in large arrays, where the memory savings actually matters
 short: As with byte, the same guidelines apply: you can use a short to save memory in large arrays, in situations where
the memory savings actually matters.
 int: For integral values, this data type is generally the default choice unless there is a reason (like the above) to choose
something else. This data type will most likely be large enough for the numbers your program will use, but if you need a
wider range of values, use long instead
 long: Use this data type when you need a range of values wider than those provided by int.
 float: The float data type is a single-precision 32-bit IEEE 754 floating point. As with the recommendations for byte and
short, use a float (instead of double) if you need to save memory in large arrays of floating point numbers.
 double: The double data type is a double-precision 64-bit IEEE 754 floating point. For decimal values, this data type is
generally the default choice. As mentioned above, this data type should never be used for precise values, such as
currency.
 char: The char data type is a single 16-bit Unicode character. It has a minimum value of '\u0000' (or 0) and a maximum
value of '\uffff' (or 65,535 inclusive).
 boolean: The boolean data type has only two possible values: true and false. Use this data type for simple flags that
track true/false conditions.

Data type Size Possible values

byte 8 bits (1 byte) -128 to +127

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
short 16 bits (2 bytes) -32768 to +32767

int 32 bits (4 bytes) -2147483648 to +2147483647

long 64 bits (8 bytes) -9223372036854775808 to +9223372036854775807

float 36 bits (4 bytes) 1.40129846432481707e-45 to 3.40282346638528860e+38

double 64 bits (8 bytes) 4.94065645841246544e-324d to 1.79769313486231570e+308d

char 16 bits (2 bytes) 0 to 65,535

boolean 1 bit true or false

String data type

In addition to the eight primitive data types listed above, the Java programming language also provides special support for
character strings via the java.lang.String class. Enclosing your character string within double quotes will automatically create
a new String object;
For example, String s = "Ashok Kumar";

String objects are immutable, which means that once created, their values cannot be changed. The String class is not
technically a primitive data type, but considering the special support given to it by the language; you'll probably tend to think of it
as such.

Reference Data types

A Reference data type is a variable that can contain the reference or an address of dynamically created object. These types of
data type are not predefined like primitive data type.
The reference data types are arrays, classes and interfaces that are made and handled according to a programmer need.

 Array: An array is a special kind of object that contains collection of similar type of elements. The java array enables
the user to store the values of the same type in contiguous memory allocations. The elements in an array are identified
by an integer index which initially starts from 0 and ends with one less than number of elements available in the array.
All elements of an array must contain the same type of value i.e. if an array is a type of integer then all the elements
must be of integer type. It is a reference data type because the class named as Array implicitly extends
java.lang.Object.

There are two different ways of declaring an array as shown below:


datatype[] arr_name = new datatype[arraysize];
Ex: int[] arr = new int[50];

datatype[] arr_name = {element 1, element 2, ................. , element n}


Ex: int[] arr = {5, 10, 15, 20, 25};

 Class: The name of a class is treated as a type in a java program, so that you can declare a variable of an object-type,
and a method which can be called using that object- type variable. Whenever a variable is created, a reference to an
Mr. Ashok Kumar K | 9742024066 | [email protected]
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
object is also created using the name of a class for its type i.e. that variable can contain either null or a reference to an
object of that class. It is not allowed to contain any other kind of values. Such type is called reference types in Java.
The object becomes an instance when the memory is allocated to that object using new keyword.
Ex:
class Box {
int h, w, l;

double getArea() {

}
void setValues (int h, int w, int l) {
}
}
Box b = new Box(); // here b is an object/instance, Box is a class type

 Interface: The name of an interface can be used to specify the type of a reference. A value is not allowed to be
assigned to a variable declared using an interface type until the object implements the specified interface. Hold on
here, you will learn more about interfaces in later chapters.

1.5.3 Default values

It's not always necessary to assign a value when a variable (field) is declared. Fields that are declared but not initialized will be set to a
reasonable default by the compiler.

Data Type Default Value

byte 0

short 0

int 0

long 0L

float 0.0f

double 0.0d

char '\u0000'

String (or any object) null

boolean false

1.5.4 Literals

The new keyword isn't used when initializing a variable of a primitive type. Primitive types are special data types built into
the language; they are not objects created from a class.

A literal is the source code representation of a fixed value; literals are represented directly in your code without requiring
computation.

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

As shown below, it's possible to assign a literal to a variable of a primitive type:

boolean result = true;


char capitalC = 'C';
byte b = 100;
short s = 10000;
int i = 100000;

 Integer Literal: An integer literal is of type long if it ends with the letter L or l; otherwise it is of type int. Please use the upper
case letter L because the lower case letter l is hard to distinguish from the digit 1.
Following example shows the syntax for creating the literals in binary and hexadecimal number system.

// The number 26, in decimalint decVal = 26;


// The number 26, in hexadecimal
int hexVal = 0x1a;
// The number 26, in binary
int binVal = 0b11010;

 Floating-point Literal: A floating-point literal is of type float if it ends with the letter F or f; otherwise its type is double and it can
optionally end with the letter D or d. The floating point types (float and double) can also be expressed using
E or e (for scientific notation),
F or f (32-bit float literal), and
D or d (64-bit double literal; this is the default and by convention is omitted).
Examples:

double d1 = 123.4;
// same value as d1, but in scientific notation
double d2 = 1.234e2;
float f1 = 123.4f;

 Character and String Literals: Literals of types char and String may contain any Unicode (UTF-16) characters. If your editor
and file system allow it, you can use such characters directly in your code. If not, you can use a "Unicode escape" such as
'\u0108' (capital C with circumflex), or "S\u00ED Se\u00F1or" (Sí Señor in Spanish). Always use 'single quotes' for char literals
and "double quotes" for String literals.

 There is a special null literal that can be used as a value for any reference type. null may be assigned to any variable,
except variables of primitive types. null is often used in programs as a marker to indicate that some object is unavailable.

 Finally, there is another literal called a class literal, formed by taking a type name and appending ".class"; for example, String
class. This refers to the object (of type Class) that represents the type itself.

1.5.5 Escape Characters

Java supports a few special escape sequences for char and String literals:

\b (backspace),
\t (tab),
\n (line feed),
\f (form feed),
\r (carriage return),
\" (double quote),

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
\' (single quote), and
\\ (backslash).

1.5.6 Creating and Destroying Objects

We know that, a class is a template (blue print) for an object, and an object is an instance of the class.

Creating Objects (Object instantiation)

Consider a class definition as follows,


class Box {
int w;
int l;
int h;

// This is a constructor
Box(int w, int l, int h) {
this.w = w;
this.h = h;
this.l = l;
}

long getArea() {
return l*w*h;
}
}

Object of this class can be created as follows:


Box b1 = new Box(5, 10, 15);

The object creation statement above have three parts:

 Declaration: LHS of the above statement constitutes the declaration. It is


associated with variable name and object type.
 Instantiation: It is the new keyword in java that creates the object
 Initialization: The new operator is followed by a call to a constructor, which
initializes the new object.

This object creation can be visualized as follows:

Declaring a variable to refer to another object:


A variable can be created to refer to another existing object as follows:
Box b2;
b2 = b1;

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
This can be visualized as follows:

Destroying Objects

Java provides a wonderful concept of Garbage Collection which performs automatic memory
management, so you don't need to delete the object that you've created. JVM does it for you
automatically through Garbage Collection. We will see the concept of Garbage Collection in deep at
later chapters.

1.5.7 Access specifiers in Java

One of the concepts in object-oriented programming is encapsulation. It concerns about the hiding of data in a class and making this
class available only through methods. In this way the chance of making accidental mistakes in changing values is minimized. Java
allows you to control access to classes, methods, and fields via so-called access specifiers.

Java provides four different types of access specifiers

public
public classes, methods, and fields can be accessed from everywhere. The only constraint is that a file with
Java source code can only contain one public class which should be a main class.

protected
protected methods and fields can only be accessed within the same class to which the methods and fields
belong, also within its subclasses but not from anywhere else. You use the protected access level when it is
appropriate for a class's subclasses to have access to the method or field, but not for unrelated classes.

private
private methods and fields can only be accessed within the same class to which the methods and fields
belong. private methods and fields are not visible within subclasses and are not inherited by subclasses. So,
the private access specifier is opposite to the public access specifier. It is mostly used for encapsulation

default
If you do not set access to specific level, then such a class, method, or field will be accessible from inside the
same package to which the class, method, or field belongs, but not from outside this package.

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

1.6 Operators and Expressions

1.6.1 Operators

Operators are such symbols that perform some operations on one or more operands. Operators are used to manipulate primitive data
types. Once we declare and initialize the variables, we can use operators to perform certain tasks like assigning a value, adding the
numbers etc.

Operators in Java are classified as follows:

The list below is arranged in the order of their precedence (Highest to Lowest)

 Postfix Operators
exp++, exp--

 Unary Operators
++expr, --expr, +expr, -expr, ~, !

 Multiplicative Operators
*, /, %

 Additive Operators
+, -

 Shift Operators
<<, >>, >>>

 Relational Operators
<, >, <=, >=, instanceof

 Equality Operators
==, !=

 Bitwise Operators
Bitwise AND (&)
Bitwise EXCLUSIVE OR (^)
Bitwise OR (|)

 Logical Operators
Logical AND (&&)
Logical OR (||)

 Ternary Operators
?:

 Assignment Operators
=, +=, -=, *=, /=, %=, &=, ^=, |=, <<=, >>=, >>>=

Shift Operators

 The signed left shift operator "<<" shifts a bit pattern to the left, and
 The signed right shift operator ">>" shifts a bit pattern to the right.
Mr. Ashok Kumar K | 9742024066 | [email protected]
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
The bit pattern is given by the left-hand operand, and the number of positions to shift by the right-hand operand.

 The unsigned right shift operator ">>>" shifts a zero into the leftmost position, while the leftmost position after ">>" depends on
sign extension.

Example:

public class Example


{

public static void main(String[] args)


{

int num1 = -5;


num1 = num1 >> 2;
System.out.println(num1);

int num2 = 5;
num2 = num2 >>> 2;
System.out.println(num2);

int num3 = 5;
num3 = num3 << 2;
System.out.println(num3);

Bitwise Operators

 The bitwise & operator performs a bitwise AND operation.


 The bitwise ^ operator performs a bitwise exclusive OR operation.
 The bitwise complement operator ~ inverts a bit pattern; it can be applied to any of the integral types, making
every "0" a "1" and every "1" a "0". For example, a byte contains 8 bits; applying this operator to a value whose bit
pattern is "00000000" would change its pattern to "11111111".

Example

public class Example


{

public static void main(String[] args)


{

int num1 = -5;


num1 = num1 & 2;
System.out.println(num1);

int num2 = 5;
num2 = num2 & 2;
Mr. Ashok Kumar K | 9742024066 | [email protected]
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
System.out.println(num2);

int num3 = 5;
num3 = ~num3;
System.out.println(num3);

Ternary Operator

The ternary operator (also known as the conditional operator) can be used as an alternative to the Java if/then/else syntax, but it goes
beyond that, and can even be used on the right hand side of Java statements.

Syntax

(condition) ? (truth block) : (false block) ;

The condition gets evaluated first. If the condition evaluates to true, the truth block gets executed and returns, else the false block gets
executed and returns.

Example

public class Example


{

public static void main(String[] args)


{

int a = 10;
int b = 20;

int min = (a < b) ? a: b;

System.out.println("Min value is .. "+min);


}

Logical Operators

public class Example


{

public static void main(String args[])


{

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
boolean a = true;
boolean b = false;

System.out.println("a && b = " + (a && b));


System.out.println("a || b = " + (a || b));
System.out.println("!(a && b) = " + !(a && b));
}
}

1.6.2 Expressions

An expression is a construct made up of variables, operators, and method invocations, which are constructed according to the syntax of
the language, which evaluates to a single value. Some examples of expressions are illustrated in bold below:

int cadence = 0;
anArray[0] = 100;
System.out.println("Element 1 at index 0: " + anArray[0]);

int result = 1 + 2; // result is now 3


if (value1 == value2)
System.out.println("value1 == value2");

The data type of the value returned by an expression depends on the elements used in the expression. The
expression cadence=0 returns an int because the assignment operator returns a value of the same data type as its left-hand operand;
in this case, cadence is an int. As you can see from the other expressions, an expression can return other types of values as well, such
as boolean or String.

The Java programming language allows you to construct compound expressions from various smaller expressions as long as the data
type required by one part of the expression matches the data type of the other. Here's an example of a compound expression:

1 * 2 * 3

In this particular example, the order in which the expression is evaluated is unimportant because the result of multiplication is
independent of order; the outcome is always the same, no matter in which order you apply the multiplications. However, this is not true
of all expressions. For example, the following expression gives different results, depending on whether you perform the addition or the
division operation first:

x + y / 100 // ambiguous

You can specify exactly how an expression will be evaluated using balanced parenthesis: ‘(‘ and ‘)’. For example, to make the previous
expression unambiguous, you could write the following:

(x + y) / 100 // unambiguous, recommended

If you don't explicitly indicate the order for the operations to be performed, the order is determined by the precedence assigned to the
operators in use within the expression. Operators that have a higher precedence get evaluated first. For example, the division operator
has a higher precedence than does the addition operator. Therefore, the following two statements are equivalent:

x + y / 100

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
x + (y / 100) // unambiguous, recommended

When writing compound expressions, be explicit and indicate with parentheses which operators should be evaluated first. This practice
makes code easier to read and to maintain.

1.7 Control Statements

Java Control statements control the order of execution in a java program, based on data values and conditional logic. There are three
main categories of control flow statements;

Selection statements

 If
 if-else
 switch

Iteration statements

 while
 do-while
 for

Jump statements

 break
 continue
 return

1.7.1 Selection Statements

The if statement

The if statement executes a block of code only if the specified expression is true. If the value is false, then the if block is
skipped and execution continues with the rest of the program. You can either have a single statement or a block of code
within an if statement. Note that the conditional expression must be a Boolean expression.

Syntax:

if (<conditional expression>) {
<statements>
}

Example:

public class Example {

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
public static void main(String[] args) {
int a = 10, b = 20;
if (a > b)
System.out.println("a > b");
if (a < b)
System.out.println("b > a");
}
}

The if –else statement

The if-else statement is an extension of the if statement. If the statements in the if statement fails, the statements in the
else block are executed. You can either have a single statement or a block of code within if-else blocks. Note that the
conditional expression must be a Boolean expression.

Syntax:

if (<conditional expression>) {
<statements>
} else {
<statements>
}

Example:

public class Example {

public static void main(String[] args) {


int a = 10, b = 20;
if (a > b)
System.out.println("a > b");
else
System.out.println("b > a");
}
}

The switch statement

The switch case statement is a multi-way branch with several choices. A switch is easier to implement than a series of
if/else statements.

Structure of switch case:

 The switch statement begins with a keyword, followed by an expression that equates to a no long integral value.
 Following the controlling expression is a code block that contains zero or more labeled cases.
 Each label must equate to an integer constant and each must be unique.

Working of switch case:

 When the switch statement executes, it compares the value of the controlling expression to the values of each case
label.
 The program will select the value of the case label that equals the value of the controlling expression and branch
down that path to the end of the code block.
 If none of the case label values match, then none of the codes within the switch statement code block will be
executed. Java includes a default label to use in cases where there are no matches.

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
 We can have a nested switch within a case block of an outer switch.

Syntax:

switch (<non-long integral expression>) {


case label1: <statement1> ; break;
case label2: <statement2> ; break;

case labeln: <statementn> ; break;
default: <statement>
}

Example:

public class Example {

public static void main(String[] args) {


int a = 10, b = 20, c = 30;
int status = -1;
if (a > b && a > c) {
status = 1;
} else if (b > c) {
status = 2;
} else {
status = 3;
}
switch (status) {
case 1:
System.out.println("a is the greatest");
break;
case 2:
System.out.println("b is the greatest");
break;
case 3:
System.out.println("c is the greatest");
break;
default:
System.out.println("Cannot be determined");
}
}

1.7.2 Iteration Statements

The while loop

The while statement is a looping construct control statement that executes a block of code while a condition is true. You
can either have a single statement or a block of code within the while loop. The loop will never be executed if the testing
expression evaluates to false. The loop condition must be a boolean expression.

Syntax:

while (<loop condition>) {

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
<statements>
}

Example:

public class Example {

public static void main(String[] args) {


int count = 1;
System.out.println("Printing Numbers from 1 to 10");
while (count <= 10) {
System.out.println(count++);
}
}
}

The do-while loop

The do-while loop is similar to the while loop, except that the test is performed at the end of the loop instead of at the
beginning. This ensures that the loop will be executed at least once.

Syntax:

do {
<loop body>
} while (<loop condition>);

Example:

public class Example {

public static void main(String[] args) {


int count = 1;
System.out.println("Printing Numbers from 1 to 10");
do {
System.out.println(count++);
} while (count <= 10);
}

The for loop

The for loop is a looping construct which can execute a set of instructions a specified number of times. It’s a counter
controlled loop.

Syntax:

for (<initialization>; <loop condition>; <increment expression>) {


<loop body>
}

Example:

public class Example {

public static void main(String[] args) {

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.
System.out.println("Printing Numbers from 1 to 10");
for (int count = 1; count <= 10; count++) {
System.out.println(count);
}
}

1.7.3 Jump Statements

The break statement

The break statement transfers control out of the enclosing loop (for, while, do or switch statement). You use a break
statement when you want to jump immediately to the statement following the enclosing control structure. You can also
provide a loop with a label, and then use the label in your break statement. The label name is optional, and is usually only
used when you wish to terminate the outermost loop in a series of nested loops.

Syntax:

break; // the unlabeled form


break <label>; // the labeled form

Example:

public class Example {

public static void main(String[] args) {


System.out.println("Numbers 1 - 10");
for (int i = 1;; ++i) {
if (i == 11)
break;
// Rest of loop body skipped when i is even
System.out.println(i + "\t");
}
}
}

The continue statement

A continue statement stops the iteration of a loop (while, do or for) and causes execution to resume at the top of the
nearest enclosing loop. You use a continue statement when you do not want to execute the remaining statements in the
loop, but you do not want to exit the loop itself.
You can also provide a loop with a label and then use the label in your continue statement. The label name is optional, and
is usually only used when you wish to return to the outermost loop in a series of nested loops.

Syntax:

continue; // the unlabeled form


continue <label>; // the labeled form

Example:

public class Example {

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

public static void main(String[] args) {


System.out.println("Odd Numbers");
for (int i = 1; i <= 10; ++i) {
if (i % 2 == 0)
continue;
// Rest of loop body skipped when i is even
System.out.println(i + "\t");
}
}
}

The return statement

The return statement exits from the current method, and control flow returns to where the method was invoked.

Syntax:

The return statement has two forms:


 One that returns a value
return val;
 one that doesn't returns a value
return;

Example:

public class Example {

public static void main(String[] args) {

int res = sum(10, 20);


System.out.println(res);

private static int sum(int a, int b) {

return (a + b);
}
}

Mr. Ashok Kumar K | 9742024066 | [email protected]


www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
Registration started. Contact 9742013378 or 9742024066 and lock your project at the earliest.

Mr. Ashok Kumar K | 9742024066 | [email protected]

VTU 
7th sem B.E (CSE/ISE) 
JAVA/ J2EE  
 
 
 
Notes prepared by 
Mr. Ashok Kumar K 
9742024066 | celestialcluster@g
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.
www.vtuprojects.com | Final year IEEE project development and training from scratch by Mr. Ashok Kumar K.

You might also like