SlideShare a Scribd company logo
Recall
• What is meant by OOP?
• What are classes and objects?
• What are the differences between OOP and Procedure oriented
Programming?
Introduction to OOP with java
Java
• Oop paradigm
Java is a computer programming language that is class-based, object-
oriented and makes maximum out of it
• “Write once run anywhere”
Java applications are typically compiled to bytecode (.class file) that can run
on any Java virtual machine(JVM) regardless of computer architecture
C Vs java
Syntax comparison
C Vs java
• int
• Char
• Float
• double
‚Exactly the same as of left side‛
Data Types
C Vs java
• Conditional control structures
– If
– If else
– Switch
• Loops
– for
– while
– Do while
‚Exactly the same as of left side‛
Control Structures
C Vs java
int sum(int a, int b)
{
Int c;
c=a + b
return c;
}
sum(12,13)
‚Exactly the same as of left side‛
functions
C Vs java
int a[] = {1000, 2, 3, 50};
int a[10];
int a[]={1,2,3,4}// not a preferred way
int[] a={1,2,3,4} //preferred way
int[] myList = new int[10];
Arrays
C Vs Java
Output
printf(“ value of a = %d”,a);
Printf(“a = %d and b= %d”,a,b);
Input
scanf(“%d ", &a);
Scanf(“%d”,&a,&b);
Output
System.out.println(“hello baabtra”);
Input
Scanner sc = new scanner(System.in);
int i = sc.nextInt();
(import java.util.Scanner)
Input / Output
Out
In
System
Println()
Print()
Write()
PrintStream
C Vs java
char str*+ = ‚hello‛;
‚String is character array‛
String str=‚Hello‛;
‚String is an object ‚
Strings
C Vs java
• As we are well aware c program
execution begins at main() function
Eg: main()
{
Printf(‚hello world‛);
printHello();
}
Same as C, differs that the main() will be
a member function of some class.
Name of the class and file should be
the same.
class myFirstProgram
{
public static void main(String[] args)
{
System.out.println(‚hello baabtra‛);
}
main() function
What’s New in java?
What’s New in java?
• OOP concepts
• JVM and Platform independency
• Automatic garbage collection
OOP Concept
• Object-oriented programming (OOP) is a style of programming
that focuses on using objects to design and build applications.
• Think of an object as a model of the concepts, processes, or
things in the real world that are meaningful to your application.
Objects in real World
Real World
Objects
Objects in real world
• Object will have an identity/name
 Eg: reynolds, Cello for pen. Nokia,apple for mobile
• Object will have different properties which describes them best
 Eg:Color,size,width
• Object can perform different actions
 Eg: writing,erasing etc for pen. Calling, texting for mobile
Objects
I have an identity:
I'm Volkswagen
I have different properties.
My color property is green
My no:of wheel property is 4
I can perform different actions
I can be drived
I can consume fuel
I can play Music
I have an identity:
I'm Suzuki
I have different properties.
My color property is silver
My no:of wheel property is 4
I can perform different actions
I can be drived
I can consume fuel
I can play Music
How these objects are created?
• All the objects in the real world are created out of a basic prototype
or a basic blue print or a base design
Objects in software World
Objects in the software world
• Same like in the real world we can create objects in computer
programming world
–Which will have a name as identity
–Properties to define its behaviour
–Actions what it can perform
How these objects are created
• We need to create a base design which defines the properties and
functionalities that the object should have.
• In programming terms we call this base design as Class
• Simply by having a class we can create any number of objects of
that type
Definition
• Class : is the base design of objects
• Object : is the instance of a class
• No memory is allocated when a class is created.
• Memory is allocated only when an object is created.
How to create class in Java
public class shape
{
private Int width;
private Int height;
public Int calculateArea()
{
return x*y
}
}
How to create class in Java
public class shape
{
private Int width;
private Int height;
public Int calculateArea()
{
return x*y
}
}
Is the access specifier
How to create class in Java
public class shape
{
private Int width;
private Int height;
public Int calculateArea()
{
return x*y
}
}
Is the keyword for
creating a class
How to create class in Java
public class shape
{
private Int width;
private Int height;
public Int calculateArea()
{
return x*y
}
}
Is the name of the class
How to create class in Java
public class shape
{
private Int width;
private Int height;
public Int calculateArea()
{
return x*y
}
}
Are two variable that
referred as the
properties. Normally
kept private and access
using getters and setters.
We will discuss getters
and setters later in this
slide
How to create class in Java
public class shape
{
private Int width;
private Int height;
public Int calculateArea()
{
return x*y
}
}
Is the only member
function of the class
How to create objects in java
shape rectangle = new shape();
rectangle.width=20;
recangle.height=35;
rArea=rectangle.calculateArea();
This is how we create an
object in java
rectangle
Height:
width:
calculateArea()
{
return height*width;
}
How to create objects in C++
shape rectangle = new shape();
rectangle.width=20;
recangle.height=35;
rArea=rectangle.calculateArea();
Is the class name
How to create objects in C++
shape rectangle = new shape();
rectangle.width=20;
recangle.height=35;
rArea=rectangle.calculateArea();
Is the object name which
we want to create
How to create objects in C++
shape rectangle = new shape();
rectangle.width=20;
recangle.height=35;
rArea=rectangle.calculateArea();
“new” is the keyword used
in java to create an object
How to create objects in C++
shape rectangle = new shape();
rectangle.width=20;
recangle.height=35;
rArea=rectangle.calculateArea();
What is this???
It looks like a function
because its having pair of
parentheses (). And also
its having the same name
of our class . But what is it
used for ??
We will discuss it soon .
Just leave it as it is for now
How to create objects in Java
shape rectangle = new shape();
rectangle.width=20;
recangle.height=35;
rArea=rectangle.calculateArea();
Setting up the property
values of object
“rectangle”
rectangle
width: 20
Height: 35
calculateArea()
{
return width*height;
}
How to create objects in Java
shape rectangle = new shape();
rectangle.width=20;
recangle.height=35;
rArea=rectangle.calculateArea();
Calling the method
calculateArea()
rectangle
width: 20
Height: 35
calculateArea()
{
return 20*35;
}
Example
Class : shape
Height:35
width:20
Object rectangle
calculateArea()
{
Return 20*35
}
Height:10
width:10
Object square
calculateArea()
{
Return 10*10;
}
Member variables
Height
width
Member function
calculateArea
{
return height*width;
}
What we just did was
• Created an object
shape rectangle = new shape();
• Same like we declare variable. eg: int a;
• And assigned values for it
recangle.height=35;
same like we assign variable value. eg: a=10;
Rectangle
Width:
Height:
calculateArea()
{
return
width*height;
}
Rectangle
width: 20
Height: 35
calculateArea()
{
return 20*35;
}
So, Can i assign values into an object at the time
of its creation(known as initialization)??
Something that we do with variables like int a=14;
So, Can i assign values into an object at the time
of its creation??
Something that we do with variables like int a=14;
‚Yes, you can . For that purpose we use something called
constructor‛
Constructors
• Constructors are just a method like any other methods in the
class but having the same name of the class.
• It is used to initialise the properties of an object
• will not have any return type, not even void
• If no user defined constructor is provided for a class, the implicit constructor
initializes the member variables to its default values
– numeric data types are set to 0
– char data types are set to null character(‘0’)
– boolean data types are set to false
– reference variables are set to null
public class shape
{
private Int width;
private Int height;
private Int calculateArea()
{
return x*y
}
}
How to create Constructors
public class shape
{
private Int width;
private Int height;
shape(int height,in width)
{
this.width=width;
this.height=height;
}
private Int calculateArea()
{
return x*y
}
}
Shape rectangle=new shape(20,35);
Constructor
Rectangle
width: 20
Height: 35
calculateArea()
{
return 20*35;
}
How to create Constructors
Access Specifier
• Access specifies defines the access rights for the statements or
functions that follows it until another access specifier or till the
end of a class.
• The three types of access specifiers are
–Private
–Public
–Protected
–default
Introduction to java and oop
Getters and Setters
• There are several occasion we need to validate the data when assigning values
into it
• For eg: rectangle.width=-10;
rectangle.height=-12;
• Suppose i want to check whether the user enters a negative value and if so i
wish to assign 0 to the properties
• In such scenarios we will create a method to do the above said actions
Rectangle
width: -10
Height: -12
calculateArea()
{
return -10*-12;
}
Getters and Setters
• Getters and setters are simply two function that gets and sets the value of
class properties.
• Setter
– Rectangle.width=15; // Normally this is how we set the values of class properties.
Rectangle.setWidth(15); // calling a method named ‚setWidth‛ so that the
method will set the property width to 15
• Getter
– Rectangle.width; // Normally this is how we get the values of class properties.
Rectangle.getWidth(); // calling a method named ‚getWidth‛ so that the method
will get the value of the property width
public class shape
{
private Int width;
private Int height;
Int calculateArea()
{
return x*y;
}
Public setWidth(int a)
{
if (a>0)
width=a;
else
width=0
}
Public Int getWidth()
{
return width
}
}
How to create getters and setters
public class shape
{
private Int width;
private Int height;
Int calculateArea()
{
return x*y;
}
Public setWidth(int a)
{
if (a>0)
width=a;
else
width=0
}
Public Int getWidth()
{
return width
}
}
How to create getters and setters
Setter function
public class shape
{
private Int width;
private Int height;
Int calculateArea()
{
return x*y;
}
Public setWidth(int a)
{
if (a>0)
width=a;
else
width=0
}
Public Int getWidth()
{
return width
}
}
How to create getters and setters
Getter function
OOP features
»Abstraction
»Encapsulation
»Polymorphism
»Inheritance
Abstraction
• Act of representing essential features only and hiding the implementation
details
• For example, a car would be made up of an Engine, but one does not need
to know how the diverse components work inside.
• In our example of class shape ; the users only have to create objects of type
shape like rectangle,square etc.
• And for finding out the area he dont really have to think about how the area
is calculated. He only need to know calling the method calculateArea will
reuslt him with the area.
Encapsulation
• Wrapping up of data(properties) and code(methods) into a single unit is
known as encapsulation
• Encapsulation also includes the process of hiding all the data and methods
within a class from outside world by restricting access to the object's
components.
• In programming languages, encapsulation is accomplished by using private
access specifier
Inheritance
• Is the process where one object acquires the properties of another.
• Inheritance is a type of relationship
– Ex: BMW is a Car
• Reusability of code – Methods and properties of parent class will be
accessible to child class
• In java inheritance is achieved by using keyword ‚extends‛
• Java supports only single inheritance
public class shape
{
protected Int width;
protected Int height;
Int calculateArea()
{
return x*y;
}
int drawShape()
{
system.out.println(“shape”)
}
}
public class threedimensionalshape extends shape
{
private Int depth;
Int calculateVolume()
{
return width*heigh*depth;
}
}
Example
Example
• Shape rectangle = new rectangle();
• threedimensionalshape cube =new threedimensionalshape()
Rectangle
Width:
Height:
calculateArea()
{
Return width*height
}
cube
Width:
Height:
depth
calculateArea()
{
Return width*height
}
Int calculateVolume()
{
return
width*height*depth;
}
Polymorphism
• Polymorphism is the ability to take more than one form using
the same name
– Eg : function overloading, Operator overloading(not supported in java)
• Functions can have same name but different implementations
• There are two types of polymorphism
–Static
–Dynamic
public class shape
{
Int calculateArea(int width, int height)
{
return width * width;
}
Float calculateArea(int radius)
{
return (22/7) * radius * radius
}
}
public class example
{
Public static void main{
shape sh =new shape();
System.out. Println(sh.calculateArea(20, 10));
System.out.println(sh.calculateArea(10));
}
}
Output:
200
314.28
Example – Static polymorphism
public class shape
{
Void drawShape()
{
system.out.println(“Shape”)
}
}
public class ThreeDshape extends shape
{
Void drawShape()
{
system.out.println(“3D shape”)
}
}
public class example
{
Public static void main{
shape sh =new shape();
ThreeDshape tds =new ThreeDshape ();
Sh.drawShape();
sh=tds;
Sh.drawShape;
}
}
Output:
Shape
3D shape
Example – Dynamic polymorphism
Static and Dynamic polymorphism
• Achieved using Overloading
• Signature difference
• Inheritance not required for
implementation
• Decision at compile time
• Early binding
• Achieved by Overriding
• Uses inheritance and virtual
functions
• Inheritance required for
implementation
• Decision at runtime
• Late binding
Questions?
‚A good question deserve a good grade…‛
End of day
If this presentation helped you, please visit our
page facebook.com/baabtra and like it.
Thanks in advance.
www.baabtra.com | www.massbaab.com |www.baabte.com
Contact Us
Emarald Mall (Big Bazar Building)
Mavoor Road, Kozhikode,
Kerala, India.
Ph: + 91 – 495 40 25 550
NC Complex, Near Bus Stand
Mukkam, Kozhikode,
Kerala, India.
Ph: + 91 – 495 40 25 550
Start up Village
Eranakulam,
Kerala, India.
Email: info@baabtra.com
Ad

More Related Content

What's hot (20)

CSharp Presentation
CSharp PresentationCSharp Presentation
CSharp Presentation
Vishwa Mohan
 
Function in C
Function in CFunction in C
Function in C
Dr. Abhineet Anand
 
C# in depth
C# in depthC# in depth
C# in depth
Arnon Axelrod
 
Pointers, virtual function and polymorphism
Pointers, virtual function and polymorphismPointers, virtual function and polymorphism
Pointers, virtual function and polymorphism
lalithambiga kamaraj
 
Introduction to oop
Introduction to oopIntroduction to oop
Introduction to oop
colleges
 
Data Types & Variables in JAVA
Data Types & Variables in JAVAData Types & Variables in JAVA
Data Types & Variables in JAVA
Ankita Totala
 
Java Basics
Java BasicsJava Basics
Java Basics
Sunil OS
 
Object oriented programming c++
Object oriented programming c++Object oriented programming c++
Object oriented programming c++
Ankur Pandey
 
Abstract class and Interface
Abstract class and InterfaceAbstract class and Interface
Abstract class and Interface
Haris Bin Zahid
 
Python tutorial
Python tutorialPython tutorial
Python tutorial
Vijay Chaitanya
 
SQLite database in android
SQLite database in androidSQLite database in android
SQLite database in android
Gourav Kumar Saini
 
Object Oriented Programing JAVA presentaion
Object Oriented Programing JAVA presentaionObject Oriented Programing JAVA presentaion
Object Oriented Programing JAVA presentaion
Pritom Chaki
 
C# classes objects
C#  classes objectsC#  classes objects
C# classes objects
Dr.Neeraj Kumar Pandey
 
Java Programs Lab File
Java Programs Lab FileJava Programs Lab File
Java Programs Lab File
Kandarp Tiwari
 
Python programming : Abstract classes interfaces
Python programming : Abstract classes interfacesPython programming : Abstract classes interfaces
Python programming : Abstract classes interfaces
Emertxe Information Technologies Pvt Ltd
 
C++ presentation
C++ presentationC++ presentation
C++ presentation
SudhanshuVijay3
 
Interfaces in java
Interfaces in javaInterfaces in java
Interfaces in java
Abishek Purushothaman
 
Tokens expressionsin C++
Tokens expressionsin C++Tokens expressionsin C++
Tokens expressionsin C++
HalaiHansaika
 
Interface in java
Interface in javaInterface in java
Interface in java
Kavitha713564
 
Polymorphism in C# Function overloading in C#
Polymorphism in C# Function overloading in C#Polymorphism in C# Function overloading in C#
Polymorphism in C# Function overloading in C#
Abid Kohistani
 

Viewers also liked (20)

Java OOP s concepts and buzzwords
Java OOP s concepts and buzzwordsJava OOP s concepts and buzzwords
Java OOP s concepts and buzzwords
Raja Sekhar
 
Java
JavaJava
Java
Sneha Mudraje
 
Java Stack Traces
Java Stack TracesJava Stack Traces
Java Stack Traces
dbanttari
 
Linked list (java platform se 8 )
Linked list (java platform se 8 )Linked list (java platform se 8 )
Linked list (java platform se 8 )
charan kumar
 
Heap and stack space in java
Heap and stack space in javaHeap and stack space in java
Heap and stack space in java
Talha Ocakçı
 
Object+oriented+programming+in+java
Object+oriented+programming+in+javaObject+oriented+programming+in+java
Object+oriented+programming+in+java
Ye Win
 
Java buzzwords
Java buzzwordsJava buzzwords
Java buzzwords
ramesh517
 
Java Stack (Pilha)
Java Stack (Pilha)Java Stack (Pilha)
Java Stack (Pilha)
Samuel Santos
 
Zulu Embedded Java Introduction
Zulu Embedded Java IntroductionZulu Embedded Java Introduction
Zulu Embedded Java Introduction
Azul Systems Inc.
 
03 Java Language And OOP Part III
03 Java Language And OOP Part III03 Java Language And OOP Part III
03 Java Language And OOP Part III
Hari Christian
 
Polymorphism
PolymorphismPolymorphism
Polymorphism
Nochiketa Chakraborty
 
01 introduction to oop and java
01 introduction to oop and java01 introduction to oop and java
01 introduction to oop and java
রাকিন রাকিন
 
Java Collections Framework Inroduction with Video Tutorial
Java Collections Framework Inroduction with Video TutorialJava Collections Framework Inroduction with Video Tutorial
Java Collections Framework Inroduction with Video Tutorial
Marcus Biel
 
Stack, queue and hashing
Stack, queue and hashingStack, queue and hashing
Stack, queue and hashing
Dumindu Pahalawatta
 
JAVA Object Oriented Programming (OOP)
JAVA Object Oriented Programming (OOP)JAVA Object Oriented Programming (OOP)
JAVA Object Oriented Programming (OOP)
Prof. Erwin Globio
 
Arrays in java
Arrays in javaArrays in java
Arrays in java
Arzath Areeff
 
Difference between C++ and Java
Difference between C++ and JavaDifference between C++ and Java
Difference between C++ and Java
Ajmal Ak
 
Oop java
Oop javaOop java
Oop java
Minal Maniar
 
My lecture stack_queue_operation
My lecture stack_queue_operationMy lecture stack_queue_operation
My lecture stack_queue_operation
Senthil Kumar
 
Java OOP Programming language (Part 3) - Class and Object
Java OOP Programming language (Part 3) - Class and ObjectJava OOP Programming language (Part 3) - Class and Object
Java OOP Programming language (Part 3) - Class and Object
OUM SAOKOSAL
 
Java OOP s concepts and buzzwords
Java OOP s concepts and buzzwordsJava OOP s concepts and buzzwords
Java OOP s concepts and buzzwords
Raja Sekhar
 
Java Stack Traces
Java Stack TracesJava Stack Traces
Java Stack Traces
dbanttari
 
Linked list (java platform se 8 )
Linked list (java platform se 8 )Linked list (java platform se 8 )
Linked list (java platform se 8 )
charan kumar
 
Heap and stack space in java
Heap and stack space in javaHeap and stack space in java
Heap and stack space in java
Talha Ocakçı
 
Object+oriented+programming+in+java
Object+oriented+programming+in+javaObject+oriented+programming+in+java
Object+oriented+programming+in+java
Ye Win
 
Java buzzwords
Java buzzwordsJava buzzwords
Java buzzwords
ramesh517
 
Zulu Embedded Java Introduction
Zulu Embedded Java IntroductionZulu Embedded Java Introduction
Zulu Embedded Java Introduction
Azul Systems Inc.
 
03 Java Language And OOP Part III
03 Java Language And OOP Part III03 Java Language And OOP Part III
03 Java Language And OOP Part III
Hari Christian
 
Java Collections Framework Inroduction with Video Tutorial
Java Collections Framework Inroduction with Video TutorialJava Collections Framework Inroduction with Video Tutorial
Java Collections Framework Inroduction with Video Tutorial
Marcus Biel
 
JAVA Object Oriented Programming (OOP)
JAVA Object Oriented Programming (OOP)JAVA Object Oriented Programming (OOP)
JAVA Object Oriented Programming (OOP)
Prof. Erwin Globio
 
Difference between C++ and Java
Difference between C++ and JavaDifference between C++ and Java
Difference between C++ and Java
Ajmal Ak
 
My lecture stack_queue_operation
My lecture stack_queue_operationMy lecture stack_queue_operation
My lecture stack_queue_operation
Senthil Kumar
 
Java OOP Programming language (Part 3) - Class and Object
Java OOP Programming language (Part 3) - Class and ObjectJava OOP Programming language (Part 3) - Class and Object
Java OOP Programming language (Part 3) - Class and Object
OUM SAOKOSAL
 
Ad

Similar to Introduction to java and oop (20)

Core java - baabtra
Core java - baabtraCore java - baabtra
Core java - baabtra
baabtra.com - No. 1 supplier of quality freshers
 
Introduction to c ++ part -1
Introduction to c ++   part -1Introduction to c ++   part -1
Introduction to c ++ part -1
baabtra.com - No. 1 supplier of quality freshers
 
Class and object C++.pptx
Class and object C++.pptxClass and object C++.pptx
Class and object C++.pptx
SantoshVarshney3
 
constructors.pptx
constructors.pptxconstructors.pptx
constructors.pptx
Epsiba1
 
Java Classes fact general wireless-19*5.pptx
Java Classes fact general wireless-19*5.pptxJava Classes fact general wireless-19*5.pptx
Java Classes fact general wireless-19*5.pptx
IbrahimMerzayiee
 
gffhfghfgchfygnghS09-Design-Patterns.pptx
gffhfghfgchfygnghS09-Design-Patterns.pptxgffhfghfgchfygnghS09-Design-Patterns.pptx
gffhfghfgchfygnghS09-Design-Patterns.pptx
ahmed518927
 
Pi j2.3 objects
Pi j2.3 objectsPi j2.3 objects
Pi j2.3 objects
mcollison
 
Concept of Object-Oriented in C++
Concept of Object-Oriented in C++Concept of Object-Oriented in C++
Concept of Object-Oriented in C++
Abdullah Jan
 
Advanced CPP Lecture 2- Summer School 2014 - ACA CSE IITK
Advanced CPP Lecture 2- Summer School 2014 - ACA CSE IITKAdvanced CPP Lecture 2- Summer School 2014 - ACA CSE IITK
Advanced CPP Lecture 2- Summer School 2014 - ACA CSE IITK
Pankaj Prateek
 
Chapter 04 inheritance
Chapter 04 inheritanceChapter 04 inheritance
Chapter 04 inheritance
Nurhanna Aziz
 
Basic Concepts of OOPs (Object Oriented Programming in Java)
Basic Concepts of OOPs (Object Oriented Programming in Java)Basic Concepts of OOPs (Object Oriented Programming in Java)
Basic Concepts of OOPs (Object Oriented Programming in Java)
Michelle Anne Meralpis
 
Unit – V Object Oriented Programming in Python.pptx
Unit – V Object Oriented Programming in Python.pptxUnit – V Object Oriented Programming in Python.pptx
Unit – V Object Oriented Programming in Python.pptx
YugandharaNalavade
 
07slide.ppt
07slide.ppt07slide.ppt
07slide.ppt
NuurAxmed2
 
Java-Intro.pptx
Java-Intro.pptxJava-Intro.pptx
Java-Intro.pptx
VijalJain3
 
CONSTRUCTORS IN C++ +2 COMPUTER SCIENCE
CONSTRUCTORS IN C++ +2 COMPUTER SCIENCECONSTRUCTORS IN C++ +2 COMPUTER SCIENCE
CONSTRUCTORS IN C++ +2 COMPUTER SCIENCE
Venugopalavarma Raja
 
[OOP - Lec 13,14,15] Constructors / Destructor and its Types
[OOP - Lec 13,14,15] Constructors / Destructor and its Types[OOP - Lec 13,14,15] Constructors / Destructor and its Types
[OOP - Lec 13,14,15] Constructors / Destructor and its Types
Muhammad Hammad Waseem
 
Mod_5 of Java 5th module notes for ktu students
Mod_5 of Java 5th module notes for ktu studentsMod_5 of Java 5th module notes for ktu students
Mod_5 of Java 5th module notes for ktu students
heytherenewworld
 
Developer’s viewpoint on swift programming language
Developer’s viewpoint on swift programming languageDeveloper’s viewpoint on swift programming language
Developer’s viewpoint on swift programming language
Azilen Technologies Pvt. Ltd.
 
Ch 2 Library Classes.pptx
Ch 2 Library Classes.pptxCh 2 Library Classes.pptx
Ch 2 Library Classes.pptx
KavitaHegde4
 
Ch 2 Library Classes.pdf
Ch 2 Library Classes.pdfCh 2 Library Classes.pdf
Ch 2 Library Classes.pdf
KavitaHegde4
 
constructors.pptx
constructors.pptxconstructors.pptx
constructors.pptx
Epsiba1
 
Java Classes fact general wireless-19*5.pptx
Java Classes fact general wireless-19*5.pptxJava Classes fact general wireless-19*5.pptx
Java Classes fact general wireless-19*5.pptx
IbrahimMerzayiee
 
gffhfghfgchfygnghS09-Design-Patterns.pptx
gffhfghfgchfygnghS09-Design-Patterns.pptxgffhfghfgchfygnghS09-Design-Patterns.pptx
gffhfghfgchfygnghS09-Design-Patterns.pptx
ahmed518927
 
Pi j2.3 objects
Pi j2.3 objectsPi j2.3 objects
Pi j2.3 objects
mcollison
 
Concept of Object-Oriented in C++
Concept of Object-Oriented in C++Concept of Object-Oriented in C++
Concept of Object-Oriented in C++
Abdullah Jan
 
Advanced CPP Lecture 2- Summer School 2014 - ACA CSE IITK
Advanced CPP Lecture 2- Summer School 2014 - ACA CSE IITKAdvanced CPP Lecture 2- Summer School 2014 - ACA CSE IITK
Advanced CPP Lecture 2- Summer School 2014 - ACA CSE IITK
Pankaj Prateek
 
Chapter 04 inheritance
Chapter 04 inheritanceChapter 04 inheritance
Chapter 04 inheritance
Nurhanna Aziz
 
Basic Concepts of OOPs (Object Oriented Programming in Java)
Basic Concepts of OOPs (Object Oriented Programming in Java)Basic Concepts of OOPs (Object Oriented Programming in Java)
Basic Concepts of OOPs (Object Oriented Programming in Java)
Michelle Anne Meralpis
 
Unit – V Object Oriented Programming in Python.pptx
Unit – V Object Oriented Programming in Python.pptxUnit – V Object Oriented Programming in Python.pptx
Unit – V Object Oriented Programming in Python.pptx
YugandharaNalavade
 
Java-Intro.pptx
Java-Intro.pptxJava-Intro.pptx
Java-Intro.pptx
VijalJain3
 
CONSTRUCTORS IN C++ +2 COMPUTER SCIENCE
CONSTRUCTORS IN C++ +2 COMPUTER SCIENCECONSTRUCTORS IN C++ +2 COMPUTER SCIENCE
CONSTRUCTORS IN C++ +2 COMPUTER SCIENCE
Venugopalavarma Raja
 
[OOP - Lec 13,14,15] Constructors / Destructor and its Types
[OOP - Lec 13,14,15] Constructors / Destructor and its Types[OOP - Lec 13,14,15] Constructors / Destructor and its Types
[OOP - Lec 13,14,15] Constructors / Destructor and its Types
Muhammad Hammad Waseem
 
Mod_5 of Java 5th module notes for ktu students
Mod_5 of Java 5th module notes for ktu studentsMod_5 of Java 5th module notes for ktu students
Mod_5 of Java 5th module notes for ktu students
heytherenewworld
 
Developer’s viewpoint on swift programming language
Developer’s viewpoint on swift programming languageDeveloper’s viewpoint on swift programming language
Developer’s viewpoint on swift programming language
Azilen Technologies Pvt. Ltd.
 
Ch 2 Library Classes.pptx
Ch 2 Library Classes.pptxCh 2 Library Classes.pptx
Ch 2 Library Classes.pptx
KavitaHegde4
 
Ch 2 Library Classes.pdf
Ch 2 Library Classes.pdfCh 2 Library Classes.pdf
Ch 2 Library Classes.pdf
KavitaHegde4
 
Ad

More from baabtra.com - No. 1 supplier of quality freshers (20)

Agile methodology and scrum development
Agile methodology and scrum developmentAgile methodology and scrum development
Agile methodology and scrum development
baabtra.com - No. 1 supplier of quality freshers
 
Best coding practices
Best coding practicesBest coding practices
Best coding practices
baabtra.com - No. 1 supplier of quality freshers
 
Acquiring new skills what you should know
Acquiring new skills   what you should knowAcquiring new skills   what you should know
Acquiring new skills what you should know
baabtra.com - No. 1 supplier of quality freshers
 
Baabtra.com programming at school
Baabtra.com programming at schoolBaabtra.com programming at school
Baabtra.com programming at school
baabtra.com - No. 1 supplier of quality freshers
 
99LMS for Enterprises - LMS that you will love
99LMS for Enterprises - LMS that you will love 99LMS for Enterprises - LMS that you will love
99LMS for Enterprises - LMS that you will love
baabtra.com - No. 1 supplier of quality freshers
 
Php sessions & cookies
Php sessions & cookiesPhp sessions & cookies
Php sessions & cookies
baabtra.com - No. 1 supplier of quality freshers
 
Php database connectivity
Php database connectivityPhp database connectivity
Php database connectivity
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 6 database normalisation
Chapter 6  database normalisationChapter 6  database normalisation
Chapter 6 database normalisation
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 5 transactions and dcl statements
Chapter 5  transactions and dcl statementsChapter 5  transactions and dcl statements
Chapter 5 transactions and dcl statements
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 4 functions, views, indexing
Chapter 4  functions, views, indexingChapter 4  functions, views, indexing
Chapter 4 functions, views, indexing
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 3 stored procedures
Chapter 3 stored proceduresChapter 3 stored procedures
Chapter 3 stored procedures
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 2 grouping,scalar and aggergate functions,joins inner join,outer join
Chapter 2  grouping,scalar and aggergate functions,joins   inner join,outer joinChapter 2  grouping,scalar and aggergate functions,joins   inner join,outer join
Chapter 2 grouping,scalar and aggergate functions,joins inner join,outer join
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 1 introduction to sql server
Chapter 1 introduction to sql serverChapter 1 introduction to sql server
Chapter 1 introduction to sql server
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 1 introduction to sql server
Chapter 1 introduction to sql serverChapter 1 introduction to sql server
Chapter 1 introduction to sql server
baabtra.com - No. 1 supplier of quality freshers
 
Microsoft holo lens
Microsoft holo lensMicrosoft holo lens
Microsoft holo lens
baabtra.com - No. 1 supplier of quality freshers
 
Blue brain
Blue brainBlue brain
Blue brain
baabtra.com - No. 1 supplier of quality freshers
 
5g
5g5g
5g
baabtra.com - No. 1 supplier of quality freshers
 
Aptitude skills baabtra
Aptitude skills baabtraAptitude skills baabtra
Aptitude skills baabtra
baabtra.com - No. 1 supplier of quality freshers
 
Gd baabtra
Gd baabtraGd baabtra
Gd baabtra
baabtra.com - No. 1 supplier of quality freshers
 
Baabtra soft skills
Baabtra soft skillsBaabtra soft skills
Baabtra soft skills
baabtra.com - No. 1 supplier of quality freshers
 

Recently uploaded (20)

AI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of DocumentsAI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of Documents
UiPathCommunity
 
AI You Can Trust: The Critical Role of Governance and Quality.pdf
AI You Can Trust: The Critical Role of Governance and Quality.pdfAI You Can Trust: The Critical Role of Governance and Quality.pdf
AI You Can Trust: The Critical Role of Governance and Quality.pdf
Precisely
 
Jignesh Shah - The Innovator and Czar of Exchanges
Jignesh Shah - The Innovator and Czar of ExchangesJignesh Shah - The Innovator and Czar of Exchanges
Jignesh Shah - The Innovator and Czar of Exchanges
Jignesh Shah Innovator
 
Bepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firmBepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firm
Benard76
 
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
BookNet Canada
 
The Changing Compliance Landscape in 2025.pdf
The Changing Compliance Landscape in 2025.pdfThe Changing Compliance Landscape in 2025.pdf
The Changing Compliance Landscape in 2025.pdf
Precisely
 
Config 2025 presentation recap covering both days
Config 2025 presentation recap covering both daysConfig 2025 presentation recap covering both days
Config 2025 presentation recap covering both days
TrishAntoni1
 
Q1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor PresentationQ1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor Presentation
Dropbox
 
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz
 
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Markus Eisele
 
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent LasterAI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
All Things Open
 
machines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdfmachines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdf
AmirStern2
 
Cybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and MitigationCybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and Mitigation
VICTOR MAESTRE RAMIREZ
 
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Safe Software
 
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdfKit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Wonjun Hwang
 
Financial Services Technology Summit 2025
Financial Services Technology Summit 2025Financial Services Technology Summit 2025
Financial Services Technology Summit 2025
Ray Bugg
 
Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Kit-Works Team Study_아직도 Dockefile.pdf_김성호Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Wonjun Hwang
 
Transcript: Canadian book publishing: Insights from the latest salary survey ...
Transcript: Canadian book publishing: Insights from the latest salary survey ...Transcript: Canadian book publishing: Insights from the latest salary survey ...
Transcript: Canadian book publishing: Insights from the latest salary survey ...
BookNet Canada
 
fennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solutionfennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solution
shallal2
 
IT484 Cyber Forensics_Information Technology
IT484 Cyber Forensics_Information TechnologyIT484 Cyber Forensics_Information Technology
IT484 Cyber Forensics_Information Technology
SHEHABALYAMANI
 
AI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of DocumentsAI Agents at Work: UiPath, Maestro & the Future of Documents
AI Agents at Work: UiPath, Maestro & the Future of Documents
UiPathCommunity
 
AI You Can Trust: The Critical Role of Governance and Quality.pdf
AI You Can Trust: The Critical Role of Governance and Quality.pdfAI You Can Trust: The Critical Role of Governance and Quality.pdf
AI You Can Trust: The Critical Role of Governance and Quality.pdf
Precisely
 
Jignesh Shah - The Innovator and Czar of Exchanges
Jignesh Shah - The Innovator and Czar of ExchangesJignesh Shah - The Innovator and Czar of Exchanges
Jignesh Shah - The Innovator and Czar of Exchanges
Jignesh Shah Innovator
 
Bepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firmBepents tech services - a premier cybersecurity consulting firm
Bepents tech services - a premier cybersecurity consulting firm
Benard76
 
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...Canadian book publishing: Insights from the latest salary survey - Tech Forum...
Canadian book publishing: Insights from the latest salary survey - Tech Forum...
BookNet Canada
 
The Changing Compliance Landscape in 2025.pdf
The Changing Compliance Landscape in 2025.pdfThe Changing Compliance Landscape in 2025.pdf
The Changing Compliance Landscape in 2025.pdf
Precisely
 
Config 2025 presentation recap covering both days
Config 2025 presentation recap covering both daysConfig 2025 presentation recap covering both days
Config 2025 presentation recap covering both days
TrishAntoni1
 
Q1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor PresentationQ1 2025 Dropbox Earnings and Investor Presentation
Q1 2025 Dropbox Earnings and Investor Presentation
Dropbox
 
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025Zilliz Cloud Monthly Technical Review: May 2025
Zilliz Cloud Monthly Technical Review: May 2025
Zilliz
 
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...
Markus Eisele
 
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent LasterAI 3-in-1: Agents, RAG, and Local Models - Brent Laster
AI 3-in-1: Agents, RAG, and Local Models - Brent Laster
All Things Open
 
machines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdfmachines-for-woodworking-shops-en-compressed.pdf
machines-for-woodworking-shops-en-compressed.pdf
AmirStern2
 
Cybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and MitigationCybersecurity Threat Vectors and Mitigation
Cybersecurity Threat Vectors and Mitigation
VICTOR MAESTRE RAMIREZ
 
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Integrating FME with Python: Tips, Demos, and Best Practices for Powerful Aut...
Safe Software
 
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdfKit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Kit-Works Team Study_팀스터디_김한솔_nuqs_20250509.pdf
Wonjun Hwang
 
Financial Services Technology Summit 2025
Financial Services Technology Summit 2025Financial Services Technology Summit 2025
Financial Services Technology Summit 2025
Ray Bugg
 
Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Kit-Works Team Study_아직도 Dockefile.pdf_김성호Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Kit-Works Team Study_아직도 Dockefile.pdf_김성호
Wonjun Hwang
 
Transcript: Canadian book publishing: Insights from the latest salary survey ...
Transcript: Canadian book publishing: Insights from the latest salary survey ...Transcript: Canadian book publishing: Insights from the latest salary survey ...
Transcript: Canadian book publishing: Insights from the latest salary survey ...
BookNet Canada
 
fennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solutionfennec fox optimization algorithm for optimal solution
fennec fox optimization algorithm for optimal solution
shallal2
 
IT484 Cyber Forensics_Information Technology
IT484 Cyber Forensics_Information TechnologyIT484 Cyber Forensics_Information Technology
IT484 Cyber Forensics_Information Technology
SHEHABALYAMANI
 

Introduction to java and oop

  • 1. Recall • What is meant by OOP? • What are classes and objects? • What are the differences between OOP and Procedure oriented Programming?
  • 3. Java • Oop paradigm Java is a computer programming language that is class-based, object- oriented and makes maximum out of it • “Write once run anywhere” Java applications are typically compiled to bytecode (.class file) that can run on any Java virtual machine(JVM) regardless of computer architecture
  • 4. C Vs java Syntax comparison
  • 5. C Vs java • int • Char • Float • double ‚Exactly the same as of left side‛ Data Types
  • 6. C Vs java • Conditional control structures – If – If else – Switch • Loops – for – while – Do while ‚Exactly the same as of left side‛ Control Structures
  • 7. C Vs java int sum(int a, int b) { Int c; c=a + b return c; } sum(12,13) ‚Exactly the same as of left side‛ functions
  • 8. C Vs java int a[] = {1000, 2, 3, 50}; int a[10]; int a[]={1,2,3,4}// not a preferred way int[] a={1,2,3,4} //preferred way int[] myList = new int[10]; Arrays
  • 9. C Vs Java Output printf(“ value of a = %d”,a); Printf(“a = %d and b= %d”,a,b); Input scanf(“%d ", &a); Scanf(“%d”,&a,&b); Output System.out.println(“hello baabtra”); Input Scanner sc = new scanner(System.in); int i = sc.nextInt(); (import java.util.Scanner) Input / Output Out In System Println() Print() Write() PrintStream
  • 10. C Vs java char str*+ = ‚hello‛; ‚String is character array‛ String str=‚Hello‛; ‚String is an object ‚ Strings
  • 11. C Vs java • As we are well aware c program execution begins at main() function Eg: main() { Printf(‚hello world‛); printHello(); } Same as C, differs that the main() will be a member function of some class. Name of the class and file should be the same. class myFirstProgram { public static void main(String[] args) { System.out.println(‚hello baabtra‛); } main() function
  • 13. What’s New in java? • OOP concepts • JVM and Platform independency • Automatic garbage collection
  • 14. OOP Concept • Object-oriented programming (OOP) is a style of programming that focuses on using objects to design and build applications. • Think of an object as a model of the concepts, processes, or things in the real world that are meaningful to your application.
  • 17. Objects in real world • Object will have an identity/name  Eg: reynolds, Cello for pen. Nokia,apple for mobile • Object will have different properties which describes them best  Eg:Color,size,width • Object can perform different actions  Eg: writing,erasing etc for pen. Calling, texting for mobile
  • 18. Objects I have an identity: I'm Volkswagen I have different properties. My color property is green My no:of wheel property is 4 I can perform different actions I can be drived I can consume fuel I can play Music I have an identity: I'm Suzuki I have different properties. My color property is silver My no:of wheel property is 4 I can perform different actions I can be drived I can consume fuel I can play Music
  • 19. How these objects are created? • All the objects in the real world are created out of a basic prototype or a basic blue print or a base design
  • 21. Objects in the software world • Same like in the real world we can create objects in computer programming world –Which will have a name as identity –Properties to define its behaviour –Actions what it can perform
  • 22. How these objects are created • We need to create a base design which defines the properties and functionalities that the object should have. • In programming terms we call this base design as Class • Simply by having a class we can create any number of objects of that type
  • 23. Definition • Class : is the base design of objects • Object : is the instance of a class • No memory is allocated when a class is created. • Memory is allocated only when an object is created.
  • 24. How to create class in Java public class shape { private Int width; private Int height; public Int calculateArea() { return x*y } }
  • 25. How to create class in Java public class shape { private Int width; private Int height; public Int calculateArea() { return x*y } } Is the access specifier
  • 26. How to create class in Java public class shape { private Int width; private Int height; public Int calculateArea() { return x*y } } Is the keyword for creating a class
  • 27. How to create class in Java public class shape { private Int width; private Int height; public Int calculateArea() { return x*y } } Is the name of the class
  • 28. How to create class in Java public class shape { private Int width; private Int height; public Int calculateArea() { return x*y } } Are two variable that referred as the properties. Normally kept private and access using getters and setters. We will discuss getters and setters later in this slide
  • 29. How to create class in Java public class shape { private Int width; private Int height; public Int calculateArea() { return x*y } } Is the only member function of the class
  • 30. How to create objects in java shape rectangle = new shape(); rectangle.width=20; recangle.height=35; rArea=rectangle.calculateArea(); This is how we create an object in java rectangle Height: width: calculateArea() { return height*width; }
  • 31. How to create objects in C++ shape rectangle = new shape(); rectangle.width=20; recangle.height=35; rArea=rectangle.calculateArea(); Is the class name
  • 32. How to create objects in C++ shape rectangle = new shape(); rectangle.width=20; recangle.height=35; rArea=rectangle.calculateArea(); Is the object name which we want to create
  • 33. How to create objects in C++ shape rectangle = new shape(); rectangle.width=20; recangle.height=35; rArea=rectangle.calculateArea(); “new” is the keyword used in java to create an object
  • 34. How to create objects in C++ shape rectangle = new shape(); rectangle.width=20; recangle.height=35; rArea=rectangle.calculateArea(); What is this??? It looks like a function because its having pair of parentheses (). And also its having the same name of our class . But what is it used for ?? We will discuss it soon . Just leave it as it is for now
  • 35. How to create objects in Java shape rectangle = new shape(); rectangle.width=20; recangle.height=35; rArea=rectangle.calculateArea(); Setting up the property values of object “rectangle” rectangle width: 20 Height: 35 calculateArea() { return width*height; }
  • 36. How to create objects in Java shape rectangle = new shape(); rectangle.width=20; recangle.height=35; rArea=rectangle.calculateArea(); Calling the method calculateArea() rectangle width: 20 Height: 35 calculateArea() { return 20*35; }
  • 37. Example Class : shape Height:35 width:20 Object rectangle calculateArea() { Return 20*35 } Height:10 width:10 Object square calculateArea() { Return 10*10; } Member variables Height width Member function calculateArea { return height*width; }
  • 38. What we just did was • Created an object shape rectangle = new shape(); • Same like we declare variable. eg: int a; • And assigned values for it recangle.height=35; same like we assign variable value. eg: a=10; Rectangle Width: Height: calculateArea() { return width*height; } Rectangle width: 20 Height: 35 calculateArea() { return 20*35; }
  • 39. So, Can i assign values into an object at the time of its creation(known as initialization)?? Something that we do with variables like int a=14;
  • 40. So, Can i assign values into an object at the time of its creation?? Something that we do with variables like int a=14; ‚Yes, you can . For that purpose we use something called constructor‛
  • 41. Constructors • Constructors are just a method like any other methods in the class but having the same name of the class. • It is used to initialise the properties of an object • will not have any return type, not even void • If no user defined constructor is provided for a class, the implicit constructor initializes the member variables to its default values – numeric data types are set to 0 – char data types are set to null character(‘0’) – boolean data types are set to false – reference variables are set to null
  • 42. public class shape { private Int width; private Int height; private Int calculateArea() { return x*y } } How to create Constructors
  • 43. public class shape { private Int width; private Int height; shape(int height,in width) { this.width=width; this.height=height; } private Int calculateArea() { return x*y } } Shape rectangle=new shape(20,35); Constructor Rectangle width: 20 Height: 35 calculateArea() { return 20*35; } How to create Constructors
  • 44. Access Specifier • Access specifies defines the access rights for the statements or functions that follows it until another access specifier or till the end of a class. • The three types of access specifiers are –Private –Public –Protected –default
  • 46. Getters and Setters • There are several occasion we need to validate the data when assigning values into it • For eg: rectangle.width=-10; rectangle.height=-12; • Suppose i want to check whether the user enters a negative value and if so i wish to assign 0 to the properties • In such scenarios we will create a method to do the above said actions Rectangle width: -10 Height: -12 calculateArea() { return -10*-12; }
  • 47. Getters and Setters • Getters and setters are simply two function that gets and sets the value of class properties. • Setter – Rectangle.width=15; // Normally this is how we set the values of class properties. Rectangle.setWidth(15); // calling a method named ‚setWidth‛ so that the method will set the property width to 15 • Getter – Rectangle.width; // Normally this is how we get the values of class properties. Rectangle.getWidth(); // calling a method named ‚getWidth‛ so that the method will get the value of the property width
  • 48. public class shape { private Int width; private Int height; Int calculateArea() { return x*y; } Public setWidth(int a) { if (a>0) width=a; else width=0 } Public Int getWidth() { return width } } How to create getters and setters
  • 49. public class shape { private Int width; private Int height; Int calculateArea() { return x*y; } Public setWidth(int a) { if (a>0) width=a; else width=0 } Public Int getWidth() { return width } } How to create getters and setters Setter function
  • 50. public class shape { private Int width; private Int height; Int calculateArea() { return x*y; } Public setWidth(int a) { if (a>0) width=a; else width=0 } Public Int getWidth() { return width } } How to create getters and setters Getter function
  • 52. Abstraction • Act of representing essential features only and hiding the implementation details • For example, a car would be made up of an Engine, but one does not need to know how the diverse components work inside. • In our example of class shape ; the users only have to create objects of type shape like rectangle,square etc. • And for finding out the area he dont really have to think about how the area is calculated. He only need to know calling the method calculateArea will reuslt him with the area.
  • 53. Encapsulation • Wrapping up of data(properties) and code(methods) into a single unit is known as encapsulation • Encapsulation also includes the process of hiding all the data and methods within a class from outside world by restricting access to the object's components. • In programming languages, encapsulation is accomplished by using private access specifier
  • 54. Inheritance • Is the process where one object acquires the properties of another. • Inheritance is a type of relationship – Ex: BMW is a Car • Reusability of code – Methods and properties of parent class will be accessible to child class • In java inheritance is achieved by using keyword ‚extends‛ • Java supports only single inheritance
  • 55. public class shape { protected Int width; protected Int height; Int calculateArea() { return x*y; } int drawShape() { system.out.println(“shape”) } } public class threedimensionalshape extends shape { private Int depth; Int calculateVolume() { return width*heigh*depth; } } Example
  • 56. Example • Shape rectangle = new rectangle(); • threedimensionalshape cube =new threedimensionalshape() Rectangle Width: Height: calculateArea() { Return width*height } cube Width: Height: depth calculateArea() { Return width*height } Int calculateVolume() { return width*height*depth; }
  • 57. Polymorphism • Polymorphism is the ability to take more than one form using the same name – Eg : function overloading, Operator overloading(not supported in java) • Functions can have same name but different implementations • There are two types of polymorphism –Static –Dynamic
  • 58. public class shape { Int calculateArea(int width, int height) { return width * width; } Float calculateArea(int radius) { return (22/7) * radius * radius } } public class example { Public static void main{ shape sh =new shape(); System.out. Println(sh.calculateArea(20, 10)); System.out.println(sh.calculateArea(10)); } } Output: 200 314.28 Example – Static polymorphism
  • 59. public class shape { Void drawShape() { system.out.println(“Shape”) } } public class ThreeDshape extends shape { Void drawShape() { system.out.println(“3D shape”) } } public class example { Public static void main{ shape sh =new shape(); ThreeDshape tds =new ThreeDshape (); Sh.drawShape(); sh=tds; Sh.drawShape; } } Output: Shape 3D shape Example – Dynamic polymorphism
  • 60. Static and Dynamic polymorphism • Achieved using Overloading • Signature difference • Inheritance not required for implementation • Decision at compile time • Early binding • Achieved by Overriding • Uses inheritance and virtual functions • Inheritance required for implementation • Decision at runtime • Late binding
  • 61. Questions? ‚A good question deserve a good grade…‛
  • 63. If this presentation helped you, please visit our page facebook.com/baabtra and like it. Thanks in advance. www.baabtra.com | www.massbaab.com |www.baabte.com
  • 64. Contact Us Emarald Mall (Big Bazar Building) Mavoor Road, Kozhikode, Kerala, India. Ph: + 91 – 495 40 25 550 NC Complex, Near Bus Stand Mukkam, Kozhikode, Kerala, India. Ph: + 91 – 495 40 25 550 Start up Village Eranakulam, Kerala, India. Email: info@baabtra.com
  翻译: