SlideShare a Scribd company logo
1
User Defined Class
Syntax: Defining Class
 General syntax for defining a class is:
modifieropt class ClassIdentifier
{
classMembers:
data declarations
methods definitions
}
 Where
modifier(s) are used to alter the behavior
of the class
classMembers consist of data declarations
and/or methods definitions.
2
Class Definition
 A class can contain data declarations and method
declarations
3
int size, weight;
char category;
Data declarations
Method declarations
UML Design Specification
4
UML Class Diagram
Class Name
What data does it need?
What behaviors
will it perform?
Public
methods
Hidden
information
Instance variables -- memory locations
used for storing the information needed.
Methods -- blocks of code used to
perform a specific task.
Class Definition: An Example
 public class Rectangle
 {
// data declarations
 private double length;
 private double width;
 //methods definitions
 public Rectangle(double l, double w) // Constructor method
 {
 length = l;
 width = w;
 } // Rectangle constructor
 public double calculateArea()
 {
 return length * width;
 } // calculateArea
 } // Rectangle class
5
Method Definition
 Example
6
 The Method Header
modifieropt ResultType MethodName (Formal ParameterList )
public static void main (String argv[ ] )
public void deposit (double amount)
public double calculateArea ( )
public void MethodName() // Method Header
{ // Start of method body
} // End of method body
Method Header
 A method declaration begins with a method header
7
int add (int num1, int num2)
method
name
return
type
Formal parameter list
The parameter list specifies the type
and name of each parameter
The name of a parameter in the method
declaration is called a formal parameter
Method Body
 The method header is followed by the method body
8
int add (int num1, int num2)
{
int sum = num1 + num2;
return sum;
}
The return expression
must be consistent with
the return type
sum is local data
Local data are
created each time
the method is called,
and are destroyed
when it finishes
executing
User-Defined Methods
 Methods can return zero or one value
Value-returning methods
○ Methods that have a return type
Void methods
○ Methods that do not have a return type
9
calculateArea Method.
public double calculateArea()
{
double area;
area = length * width;
return area;
}
10
Return statement
 Value-returning method uses a return
statement to return its value; it passes a
value outside the method.
 Syntax:return statement
return expr;
 Where expr can be:
Variable, constant value or expression
11
User-Defined Methods
 Methods can have zero or >= 1
parameters
No parameters
○ Nothing inside bracket in method header
1 or more parameters
○ List the paramater/s inside bracket
12
Method Parameters
- as input/s to a method
public class Rectangle
{
. . .
public void setWidth(double w)
{
width = w;
}
public void setLength(double l)
{
length = l;
}
. . .
}
13
Syntax: Formal Parameter List
(dataType identifier, dataType identifier....)
14
Note: it can be one or more dataType
Eg.
setWidth( double w )
int add (int num1, int num2)
Creating Rectangle Instances
 Create, or instantiate, two instances of the Rectangle
class:
15
The objects (instances)
store actual values.
Rectangle rectangle1 = new Rectangle(30,10);
Rectangle rectangle2 = new Rectangle(25, 20);
Using Rectangle Instances
 We use a method call to ask each object
to tell us its area:
16
rectangle1 area 300
rectangle2 area 500Printed output:
System.out.println("rectangle1 area " + rectangle1.calculateArea());
System.out.println("rectangle2 area " + rectangle2.calculateArea());
References to
objects
Method calls
Syntax : Object Construction
 new ClassName(parameters);
Example:
 new Rectangle(30, 20);
 new Car("BMW 540ti", 2004);
Purpose:
 To construct a new object, initialize it with
the construction parameters, and return a
reference to the constructed object.
17
The RectangleUser Class
Definition
public class RectangleUser
{
public static void main(String argv[])
{
Rectangle rectangle1 = new Rectangle(30,10);
Rectangle rectangle2 = new Rectangle(25,20);
System.out.println("rectangle1 area " +
rectangle1.calculateArea());
System.out.println("rectangle2 area " +
rectangle2.calculateArea());
} // main()
} // RectangleUser
18
An application must
have a main() method
Object
Use
Object
Creation
Class
Definition
Method Call
 Syntax to call a method
methodName(actual parameter list);
Eg.
segi4.setWidth(20.5);
obj.add (25, count);
19
Formal vs Actual Parameters
 When a method is called, the actual parameters in the
invocation are copied into the formal parameters in
the method header
20
int add (int num1, int num2)
{
int sum = num1 + num2;
return sum;
}
total = obj.add(25, count);
 public class RectangleUser
 {
 public static void main(String argv[])
 {
 Rectangle rectangle1 = new Rectangle(30.0,10.0);

 System.out.println("rectangle1 area " +
 rectangle1.calculateArea());
rectangle1.setWidth(20.0);
 System.out.println("rectangle1 area " +
 rectangle1.calculateArea());
 }
 }
21
Formal vs Actual Parameters
Method Overloading
 In Java, within a class, several methods
can have the same name. We called
method overloading
 Two methods are said to have different
formal parameter lists:
If both methods have a different
number of formal parameters
If the number of formal
parameters is the same in both
methods, the data type of the
formal parameters in the order we
list must differ in at least one
position 22
Method Overloading
 Example:
public void methodABC()
public void methodABC(int x)
public void methodABC(int x, double
y)
public void methodABC(double x, int
y)
public void methodABC(char x, double
y)
public void methodABC(String x,int y)
23
Java code for overloading
 public class Exam
 {
 public static void main (String [] args)
 {
 int test1=75, test2=68, total_test1, total_test2;
 Exam midsem=new Exam();
 total_test1 = midsem.result(test1);
 System.out.println("Total test 1 : "+ total_test1);
 total_test2 = midsem.result(test1,test2);
 System.out.println("Total test 2 : "+ total_test2);
 }
 int result (int i)
 {
 return i++;
 }

 int result (int i, int j)
 {
 return ++i + j;
 }
 }
24
 Output
Total test 1 : 75
Total test 2 : 144
25
Constructors Revisited
 Properties of constructors:
Name of constructor same as the name of class
A constructor,even though it is a method, it has no
type
Constructors are automatically executed when a
class object is instantiated
A class can have more than one constructors –
“constructor overloading”
○ which constructor executes depends on the type of
value passed to the constructor when the object is
instantiated
26
Java code (constructor
overloading)
public class Student
{ String name;
int age;
Student(String n, int a)
{ name = n; age = a;
System.out.println ("Name1 :" + name);
System.out.println ("Age1 :" + age);
}
Student(String n)
{
name = n; age = 18;
System.out.println ("Name2 :" + name);
System.out.println ("Age2 :" + age);
}
public static void main (String args[])
{
Student myStudent1=new Student("Adam",22);
Student myStudent2=new Student("Adlin");
}
} 27
28
Output:
Name1 :Adam
Age1 :22
Name2 :Adlin
Age2 :18
Object Methods & Class
Methods
 Object/Instance methods belong to
objects and can only be applied after the
objects are created.
 They called by the following :
objectName.methodName();
 Class can have its own methods known
as class methods or static methods
29
Static Methods
 Java supports static methods as well as static variables.
 Static Method:-
 Belongs to class (NOT to objects created from the class)
 Can be called without creating an object/instance of the
class
 To define a static method, put the modifier static in the
method declaration:
 Static methods are called by :
ClassName.methodName();
30
Java Code (static method)
public class Fish
{
public static void main (String args[])
{
System.out.println ("Flower Horn");
Fish.colour();
}
static void colour ()
{
System.out.println ("Beautiful Colour");
}
}
31
32
Output:
Flower Horn
Beautiful Colour
Ad

More Related Content

What's hot (20)

Inheritance in c++
Inheritance in c++Inheritance in c++
Inheritance in c++
Vishal Patil
 
Decision Making Statement in C ppt
Decision Making Statement in C pptDecision Making Statement in C ppt
Decision Making Statement in C ppt
MANJUTRIPATHI7
 
Methods and constructors
Methods and constructorsMethods and constructors
Methods and constructors
Ravi_Kant_Sahu
 
Templates in c++
Templates in c++Templates in c++
Templates in c++
ThamizhselviKrishnam
 
C data types, arrays and structs
C data types, arrays and structsC data types, arrays and structs
C data types, arrays and structs
Saad Sheikh
 
Data Type Conversion in C++
Data Type Conversion in C++Data Type Conversion in C++
Data Type Conversion in C++
Danial Mirza
 
Chapter 02: Classes Objects and Methods Java by Tushar B Kute
Chapter 02: Classes Objects and Methods Java by Tushar B KuteChapter 02: Classes Objects and Methods Java by Tushar B Kute
Chapter 02: Classes Objects and Methods Java by Tushar B Kute
Tushar B Kute
 
Wrapper class
Wrapper classWrapper class
Wrapper class
kamal kotecha
 
Java Method, Static Block
Java Method, Static BlockJava Method, Static Block
Java Method, Static Block
Infoviaan Technologies
 
This pointer
This pointerThis pointer
This pointer
Kamal Acharya
 
Classes and objects
Classes and objectsClasses and objects
Classes and objects
Nilesh Dalvi
 
Files in c++
Files in c++Files in c++
Files in c++
Selvin Josy Bai Somu
 
Datatype in c++ unit 3 -topic 2
Datatype in c++ unit 3 -topic 2Datatype in c++ unit 3 -topic 2
Datatype in c++ unit 3 -topic 2
MOHIT TOMAR
 
Constructor in java
Constructor in javaConstructor in java
Constructor in java
Madishetty Prathibha
 
Data types in c++
Data types in c++Data types in c++
Data types in c++
Venkata.Manish Reddy
 
Pointers in c++
Pointers in c++Pointers in c++
Pointers in c++
Vineeta Garg
 
Class and Objects in Java
Class and Objects in JavaClass and Objects in Java
Class and Objects in Java
Spotle.ai
 
Final keyword in java
Final keyword in javaFinal keyword in java
Final keyword in java
Lovely Professional University
 
Templates in C++
Templates in C++Templates in C++
Templates in C++
Tech_MX
 
User defined functions in C
User defined functions in CUser defined functions in C
User defined functions in C
Harendra Singh
 

Similar to Class & Object - User Defined Method (20)

Chapter 6.6
Chapter 6.6Chapter 6.6
Chapter 6.6
sotlsoc
 
Object and class
Object and classObject and class
Object and class
mohit tripathi
 
Visula C# Programming Lecture 6
Visula C# Programming Lecture 6Visula C# Programming Lecture 6
Visula C# Programming Lecture 6
Abou Bakr Ashraf
 
Unit 1 Part - 3 constructor Overloading Static.ppt
Unit 1 Part - 3  constructor Overloading Static.pptUnit 1 Part - 3  constructor Overloading Static.ppt
Unit 1 Part - 3 constructor Overloading Static.ppt
DeepVala5
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
Renas Rekany
 
static methods
static methodsstatic methods
static methods
Micheal Ogundero
 
Lec 8 03_sept [compatibility mode]
Lec 8 03_sept [compatibility mode]Lec 8 03_sept [compatibility mode]
Lec 8 03_sept [compatibility mode]
Palak Sanghani
 
05 Object Oriented Concept Presentation.pptx
05 Object Oriented Concept Presentation.pptx05 Object Oriented Concept Presentation.pptx
05 Object Oriented Concept Presentation.pptx
ToranSahu18
 
Chapter 6.5 new
Chapter 6.5 newChapter 6.5 new
Chapter 6.5 new
sotlsoc
 
Defining classes-and-objects-1.0
Defining classes-and-objects-1.0Defining classes-and-objects-1.0
Defining classes-and-objects-1.0
BG Java EE Course
 
Chapter 4 - Defining Your Own Classes - Part I
Chapter 4 - Defining Your Own Classes - Part IChapter 4 - Defining Your Own Classes - Part I
Chapter 4 - Defining Your Own Classes - Part I
Eduardo Bergavera
 
Java căn bản - Chapter4
Java căn bản - Chapter4Java căn bản - Chapter4
Java căn bản - Chapter4
Vince Vo
 
Object Oriented Solved Practice Programs C++ Exams
Object Oriented Solved Practice Programs C++ ExamsObject Oriented Solved Practice Programs C++ Exams
Object Oriented Solved Practice Programs C++ Exams
MuhammadTalha436
 
Chapter 6.5
Chapter 6.5Chapter 6.5
Chapter 6.5
sotlsoc
 
Lab4-Software-Construction-BSSE5.pptx ppt
Lab4-Software-Construction-BSSE5.pptx pptLab4-Software-Construction-BSSE5.pptx ppt
Lab4-Software-Construction-BSSE5.pptx ppt
MuhammadAbubakar114879
 
Lec 9 05_sept [compatibility mode]
Lec 9 05_sept [compatibility mode]Lec 9 05_sept [compatibility mode]
Lec 9 05_sept [compatibility mode]
Palak Sanghani
 
C# p8
C# p8C# p8
C# p8
Renas Rekany
 
22 scheme OOPs with C++ BCS306B_module2.pdfmodule2.pdf
22 scheme  OOPs with C++ BCS306B_module2.pdfmodule2.pdf22 scheme  OOPs with C++ BCS306B_module2.pdfmodule2.pdf
22 scheme OOPs with C++ BCS306B_module2.pdfmodule2.pdf
sindhus795217
 
Java class
Java classJava class
Java class
Arati Gadgil
 
3 functions and class
3   functions and class3   functions and class
3 functions and class
trixiacruz
 
Chapter 6.6
Chapter 6.6Chapter 6.6
Chapter 6.6
sotlsoc
 
Visula C# Programming Lecture 6
Visula C# Programming Lecture 6Visula C# Programming Lecture 6
Visula C# Programming Lecture 6
Abou Bakr Ashraf
 
Unit 1 Part - 3 constructor Overloading Static.ppt
Unit 1 Part - 3  constructor Overloading Static.pptUnit 1 Part - 3  constructor Overloading Static.ppt
Unit 1 Part - 3 constructor Overloading Static.ppt
DeepVala5
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
Renas Rekany
 
Lec 8 03_sept [compatibility mode]
Lec 8 03_sept [compatibility mode]Lec 8 03_sept [compatibility mode]
Lec 8 03_sept [compatibility mode]
Palak Sanghani
 
05 Object Oriented Concept Presentation.pptx
05 Object Oriented Concept Presentation.pptx05 Object Oriented Concept Presentation.pptx
05 Object Oriented Concept Presentation.pptx
ToranSahu18
 
Chapter 6.5 new
Chapter 6.5 newChapter 6.5 new
Chapter 6.5 new
sotlsoc
 
Defining classes-and-objects-1.0
Defining classes-and-objects-1.0Defining classes-and-objects-1.0
Defining classes-and-objects-1.0
BG Java EE Course
 
Chapter 4 - Defining Your Own Classes - Part I
Chapter 4 - Defining Your Own Classes - Part IChapter 4 - Defining Your Own Classes - Part I
Chapter 4 - Defining Your Own Classes - Part I
Eduardo Bergavera
 
Java căn bản - Chapter4
Java căn bản - Chapter4Java căn bản - Chapter4
Java căn bản - Chapter4
Vince Vo
 
Object Oriented Solved Practice Programs C++ Exams
Object Oriented Solved Practice Programs C++ ExamsObject Oriented Solved Practice Programs C++ Exams
Object Oriented Solved Practice Programs C++ Exams
MuhammadTalha436
 
Chapter 6.5
Chapter 6.5Chapter 6.5
Chapter 6.5
sotlsoc
 
Lab4-Software-Construction-BSSE5.pptx ppt
Lab4-Software-Construction-BSSE5.pptx pptLab4-Software-Construction-BSSE5.pptx ppt
Lab4-Software-Construction-BSSE5.pptx ppt
MuhammadAbubakar114879
 
Lec 9 05_sept [compatibility mode]
Lec 9 05_sept [compatibility mode]Lec 9 05_sept [compatibility mode]
Lec 9 05_sept [compatibility mode]
Palak Sanghani
 
22 scheme OOPs with C++ BCS306B_module2.pdfmodule2.pdf
22 scheme  OOPs with C++ BCS306B_module2.pdfmodule2.pdf22 scheme  OOPs with C++ BCS306B_module2.pdfmodule2.pdf
22 scheme OOPs with C++ BCS306B_module2.pdfmodule2.pdf
sindhus795217
 
3 functions and class
3   functions and class3   functions and class
3 functions and class
trixiacruz
 
Ad

More from PRN USM (19)

Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2
PRN USM
 
Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1
PRN USM
 
File Input & Output
File Input & OutputFile Input & Output
File Input & Output
PRN USM
 
Exception Handling
Exception HandlingException Handling
Exception Handling
PRN USM
 
Inheritance & Polymorphism - 2
Inheritance & Polymorphism - 2Inheritance & Polymorphism - 2
Inheritance & Polymorphism - 2
PRN USM
 
Inheritance & Polymorphism - 1
Inheritance & Polymorphism - 1Inheritance & Polymorphism - 1
Inheritance & Polymorphism - 1
PRN USM
 
Array
ArrayArray
Array
PRN USM
 
Class & Object - Intro
Class & Object - IntroClass & Object - Intro
Class & Object - Intro
PRN USM
 
Repetition Structure
Repetition StructureRepetition Structure
Repetition Structure
PRN USM
 
Selection Control Structures
Selection Control StructuresSelection Control Structures
Selection Control Structures
PRN USM
 
Numerical Data And Expression
Numerical Data And ExpressionNumerical Data And Expression
Numerical Data And Expression
PRN USM
 
Introduction To Computer and Java
Introduction To Computer and JavaIntroduction To Computer and Java
Introduction To Computer and Java
PRN USM
 
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
PRN USM
 
Empowering Women Towards Smokefree Homes
Empowering  Women  Towards  Smokefree  HomesEmpowering  Women  Towards  Smokefree  Homes
Empowering Women Towards Smokefree Homes
PRN USM
 
Sfe The Singaporean Experience
Sfe The Singaporean ExperienceSfe The Singaporean Experience
Sfe The Singaporean Experience
PRN USM
 
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
PRN USM
 
Malaysian Health Promotion Board (Mhpb) Objectives, Functions And Priorities
Malaysian Health Promotion Board (Mhpb) Objectives, Functions And PrioritiesMalaysian Health Promotion Board (Mhpb) Objectives, Functions And Priorities
Malaysian Health Promotion Board (Mhpb) Objectives, Functions And Priorities
PRN USM
 
Role Of Ng Os In Tobacco Control
Role Of Ng Os In Tobacco ControlRole Of Ng Os In Tobacco Control
Role Of Ng Os In Tobacco Control
PRN USM
 
Application Of Grants From Mhpb
Application Of Grants From MhpbApplication Of Grants From Mhpb
Application Of Grants From Mhpb
PRN USM
 
Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2
PRN USM
 
Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1
PRN USM
 
File Input & Output
File Input & OutputFile Input & Output
File Input & Output
PRN USM
 
Exception Handling
Exception HandlingException Handling
Exception Handling
PRN USM
 
Inheritance & Polymorphism - 2
Inheritance & Polymorphism - 2Inheritance & Polymorphism - 2
Inheritance & Polymorphism - 2
PRN USM
 
Inheritance & Polymorphism - 1
Inheritance & Polymorphism - 1Inheritance & Polymorphism - 1
Inheritance & Polymorphism - 1
PRN USM
 
Class & Object - Intro
Class & Object - IntroClass & Object - Intro
Class & Object - Intro
PRN USM
 
Repetition Structure
Repetition StructureRepetition Structure
Repetition Structure
PRN USM
 
Selection Control Structures
Selection Control StructuresSelection Control Structures
Selection Control Structures
PRN USM
 
Numerical Data And Expression
Numerical Data And ExpressionNumerical Data And Expression
Numerical Data And Expression
PRN USM
 
Introduction To Computer and Java
Introduction To Computer and JavaIntroduction To Computer and Java
Introduction To Computer and Java
PRN USM
 
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
PRN USM
 
Empowering Women Towards Smokefree Homes
Empowering  Women  Towards  Smokefree  HomesEmpowering  Women  Towards  Smokefree  Homes
Empowering Women Towards Smokefree Homes
PRN USM
 
Sfe The Singaporean Experience
Sfe The Singaporean ExperienceSfe The Singaporean Experience
Sfe The Singaporean Experience
PRN USM
 
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
Corporate Social Responsibility And Challenges In Creating Smoke Free Environ...
PRN USM
 
Malaysian Health Promotion Board (Mhpb) Objectives, Functions And Priorities
Malaysian Health Promotion Board (Mhpb) Objectives, Functions And PrioritiesMalaysian Health Promotion Board (Mhpb) Objectives, Functions And Priorities
Malaysian Health Promotion Board (Mhpb) Objectives, Functions And Priorities
PRN USM
 
Role Of Ng Os In Tobacco Control
Role Of Ng Os In Tobacco ControlRole Of Ng Os In Tobacco Control
Role Of Ng Os In Tobacco Control
PRN USM
 
Application Of Grants From Mhpb
Application Of Grants From MhpbApplication Of Grants From Mhpb
Application Of Grants From Mhpb
PRN USM
 
Ad

Recently uploaded (20)

Herbs Used in Cosmetic Formulations .pptx
Herbs Used in Cosmetic Formulations .pptxHerbs Used in Cosmetic Formulations .pptx
Herbs Used in Cosmetic Formulations .pptx
RAJU THENGE
 
One Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learningOne Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learning
momer9505
 
Exercise Physiology MCQS By DR. NASIR MUSTAFA
Exercise Physiology MCQS By DR. NASIR MUSTAFAExercise Physiology MCQS By DR. NASIR MUSTAFA
Exercise Physiology MCQS By DR. NASIR MUSTAFA
Dr. Nasir Mustafa
 
Link your Lead Opportunities into Spreadsheet using odoo CRM
Link your Lead Opportunities into Spreadsheet using odoo CRMLink your Lead Opportunities into Spreadsheet using odoo CRM
Link your Lead Opportunities into Spreadsheet using odoo CRM
Celine George
 
Introduction-to-Communication-and-Media-Studies-1736283331.pdf
Introduction-to-Communication-and-Media-Studies-1736283331.pdfIntroduction-to-Communication-and-Media-Studies-1736283331.pdf
Introduction-to-Communication-and-Media-Studies-1736283331.pdf
james5028
 
YSPH VMOC Special Report - Measles Outbreak Southwest US 4-30-2025.pptx
YSPH VMOC Special Report - Measles Outbreak  Southwest US 4-30-2025.pptxYSPH VMOC Special Report - Measles Outbreak  Southwest US 4-30-2025.pptx
YSPH VMOC Special Report - Measles Outbreak Southwest US 4-30-2025.pptx
Yale School of Public Health - The Virtual Medical Operations Center (VMOC)
 
How to Customize Your Financial Reports & Tax Reports With Odoo 17 Accounting
How to Customize Your Financial Reports & Tax Reports With Odoo 17 AccountingHow to Customize Your Financial Reports & Tax Reports With Odoo 17 Accounting
How to Customize Your Financial Reports & Tax Reports With Odoo 17 Accounting
Celine George
 
SPRING FESTIVITIES - UK AND USA -
SPRING FESTIVITIES - UK AND USA            -SPRING FESTIVITIES - UK AND USA            -
SPRING FESTIVITIES - UK AND USA -
Colégio Santa Teresinha
 
Operations Management (Dr. Abdulfatah Salem).pdf
Operations Management (Dr. Abdulfatah Salem).pdfOperations Management (Dr. Abdulfatah Salem).pdf
Operations Management (Dr. Abdulfatah Salem).pdf
Arab Academy for Science, Technology and Maritime Transport
 
How to Manage Purchase Alternatives in Odoo 18
How to Manage Purchase Alternatives in Odoo 18How to Manage Purchase Alternatives in Odoo 18
How to Manage Purchase Alternatives in Odoo 18
Celine George
 
Metamorphosis: Life's Transformative Journey
Metamorphosis: Life's Transformative JourneyMetamorphosis: Life's Transformative Journey
Metamorphosis: Life's Transformative Journey
Arshad Shaikh
 
Sugar-Sensing Mechanism in plants....pptx
Sugar-Sensing Mechanism in plants....pptxSugar-Sensing Mechanism in plants....pptx
Sugar-Sensing Mechanism in plants....pptx
Dr. Renu Jangid
 
Real GitHub Copilot Exam Dumps for Success
Real GitHub Copilot Exam Dumps for SuccessReal GitHub Copilot Exam Dumps for Success
Real GitHub Copilot Exam Dumps for Success
Mark Soia
 
pulse ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
pulse  ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulsepulse  ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
pulse ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
sushreesangita003
 
dynastic art of the Pallava dynasty south India
dynastic art of the Pallava dynasty south Indiadynastic art of the Pallava dynasty south India
dynastic art of the Pallava dynasty south India
PrachiSontakke5
 
Understanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s GuideUnderstanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s Guide
GS Virdi
 
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar RabbiPresentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Md Shaifullar Rabbi
 
THE STG QUIZ GROUP D.pptx quiz by Ridip Hazarika
THE STG QUIZ GROUP D.pptx   quiz by Ridip HazarikaTHE STG QUIZ GROUP D.pptx   quiz by Ridip Hazarika
THE STG QUIZ GROUP D.pptx quiz by Ridip Hazarika
Ridip Hazarika
 
Introduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe EngineeringIntroduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe Engineering
Damian T. Gordon
 
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public SchoolsK12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
dogden2
 
Herbs Used in Cosmetic Formulations .pptx
Herbs Used in Cosmetic Formulations .pptxHerbs Used in Cosmetic Formulations .pptx
Herbs Used in Cosmetic Formulations .pptx
RAJU THENGE
 
One Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learningOne Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learning
momer9505
 
Exercise Physiology MCQS By DR. NASIR MUSTAFA
Exercise Physiology MCQS By DR. NASIR MUSTAFAExercise Physiology MCQS By DR. NASIR MUSTAFA
Exercise Physiology MCQS By DR. NASIR MUSTAFA
Dr. Nasir Mustafa
 
Link your Lead Opportunities into Spreadsheet using odoo CRM
Link your Lead Opportunities into Spreadsheet using odoo CRMLink your Lead Opportunities into Spreadsheet using odoo CRM
Link your Lead Opportunities into Spreadsheet using odoo CRM
Celine George
 
Introduction-to-Communication-and-Media-Studies-1736283331.pdf
Introduction-to-Communication-and-Media-Studies-1736283331.pdfIntroduction-to-Communication-and-Media-Studies-1736283331.pdf
Introduction-to-Communication-and-Media-Studies-1736283331.pdf
james5028
 
How to Customize Your Financial Reports & Tax Reports With Odoo 17 Accounting
How to Customize Your Financial Reports & Tax Reports With Odoo 17 AccountingHow to Customize Your Financial Reports & Tax Reports With Odoo 17 Accounting
How to Customize Your Financial Reports & Tax Reports With Odoo 17 Accounting
Celine George
 
How to Manage Purchase Alternatives in Odoo 18
How to Manage Purchase Alternatives in Odoo 18How to Manage Purchase Alternatives in Odoo 18
How to Manage Purchase Alternatives in Odoo 18
Celine George
 
Metamorphosis: Life's Transformative Journey
Metamorphosis: Life's Transformative JourneyMetamorphosis: Life's Transformative Journey
Metamorphosis: Life's Transformative Journey
Arshad Shaikh
 
Sugar-Sensing Mechanism in plants....pptx
Sugar-Sensing Mechanism in plants....pptxSugar-Sensing Mechanism in plants....pptx
Sugar-Sensing Mechanism in plants....pptx
Dr. Renu Jangid
 
Real GitHub Copilot Exam Dumps for Success
Real GitHub Copilot Exam Dumps for SuccessReal GitHub Copilot Exam Dumps for Success
Real GitHub Copilot Exam Dumps for Success
Mark Soia
 
pulse ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
pulse  ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulsepulse  ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
pulse ppt.pptx Types of pulse , characteristics of pulse , Alteration of pulse
sushreesangita003
 
dynastic art of the Pallava dynasty south India
dynastic art of the Pallava dynasty south Indiadynastic art of the Pallava dynasty south India
dynastic art of the Pallava dynasty south India
PrachiSontakke5
 
Understanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s GuideUnderstanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s Guide
GS Virdi
 
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar RabbiPresentation on Tourism Product Development By Md Shaifullar Rabbi
Presentation on Tourism Product Development By Md Shaifullar Rabbi
Md Shaifullar Rabbi
 
THE STG QUIZ GROUP D.pptx quiz by Ridip Hazarika
THE STG QUIZ GROUP D.pptx   quiz by Ridip HazarikaTHE STG QUIZ GROUP D.pptx   quiz by Ridip Hazarika
THE STG QUIZ GROUP D.pptx quiz by Ridip Hazarika
Ridip Hazarika
 
Introduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe EngineeringIntroduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe Engineering
Damian T. Gordon
 
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public SchoolsK12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
dogden2
 

Class & Object - User Defined Method

  • 2. Syntax: Defining Class  General syntax for defining a class is: modifieropt class ClassIdentifier { classMembers: data declarations methods definitions }  Where modifier(s) are used to alter the behavior of the class classMembers consist of data declarations and/or methods definitions. 2
  • 3. Class Definition  A class can contain data declarations and method declarations 3 int size, weight; char category; Data declarations Method declarations
  • 4. UML Design Specification 4 UML Class Diagram Class Name What data does it need? What behaviors will it perform? Public methods Hidden information Instance variables -- memory locations used for storing the information needed. Methods -- blocks of code used to perform a specific task.
  • 5. Class Definition: An Example  public class Rectangle  { // data declarations  private double length;  private double width;  //methods definitions  public Rectangle(double l, double w) // Constructor method  {  length = l;  width = w;  } // Rectangle constructor  public double calculateArea()  {  return length * width;  } // calculateArea  } // Rectangle class 5
  • 6. Method Definition  Example 6  The Method Header modifieropt ResultType MethodName (Formal ParameterList ) public static void main (String argv[ ] ) public void deposit (double amount) public double calculateArea ( ) public void MethodName() // Method Header { // Start of method body } // End of method body
  • 7. Method Header  A method declaration begins with a method header 7 int add (int num1, int num2) method name return type Formal parameter list The parameter list specifies the type and name of each parameter The name of a parameter in the method declaration is called a formal parameter
  • 8. Method Body  The method header is followed by the method body 8 int add (int num1, int num2) { int sum = num1 + num2; return sum; } The return expression must be consistent with the return type sum is local data Local data are created each time the method is called, and are destroyed when it finishes executing
  • 9. User-Defined Methods  Methods can return zero or one value Value-returning methods ○ Methods that have a return type Void methods ○ Methods that do not have a return type 9
  • 10. calculateArea Method. public double calculateArea() { double area; area = length * width; return area; } 10
  • 11. Return statement  Value-returning method uses a return statement to return its value; it passes a value outside the method.  Syntax:return statement return expr;  Where expr can be: Variable, constant value or expression 11
  • 12. User-Defined Methods  Methods can have zero or >= 1 parameters No parameters ○ Nothing inside bracket in method header 1 or more parameters ○ List the paramater/s inside bracket 12
  • 13. Method Parameters - as input/s to a method public class Rectangle { . . . public void setWidth(double w) { width = w; } public void setLength(double l) { length = l; } . . . } 13
  • 14. Syntax: Formal Parameter List (dataType identifier, dataType identifier....) 14 Note: it can be one or more dataType Eg. setWidth( double w ) int add (int num1, int num2)
  • 15. Creating Rectangle Instances  Create, or instantiate, two instances of the Rectangle class: 15 The objects (instances) store actual values. Rectangle rectangle1 = new Rectangle(30,10); Rectangle rectangle2 = new Rectangle(25, 20);
  • 16. Using Rectangle Instances  We use a method call to ask each object to tell us its area: 16 rectangle1 area 300 rectangle2 area 500Printed output: System.out.println("rectangle1 area " + rectangle1.calculateArea()); System.out.println("rectangle2 area " + rectangle2.calculateArea()); References to objects Method calls
  • 17. Syntax : Object Construction  new ClassName(parameters); Example:  new Rectangle(30, 20);  new Car("BMW 540ti", 2004); Purpose:  To construct a new object, initialize it with the construction parameters, and return a reference to the constructed object. 17
  • 18. The RectangleUser Class Definition public class RectangleUser { public static void main(String argv[]) { Rectangle rectangle1 = new Rectangle(30,10); Rectangle rectangle2 = new Rectangle(25,20); System.out.println("rectangle1 area " + rectangle1.calculateArea()); System.out.println("rectangle2 area " + rectangle2.calculateArea()); } // main() } // RectangleUser 18 An application must have a main() method Object Use Object Creation Class Definition
  • 19. Method Call  Syntax to call a method methodName(actual parameter list); Eg. segi4.setWidth(20.5); obj.add (25, count); 19
  • 20. Formal vs Actual Parameters  When a method is called, the actual parameters in the invocation are copied into the formal parameters in the method header 20 int add (int num1, int num2) { int sum = num1 + num2; return sum; } total = obj.add(25, count);
  • 21.  public class RectangleUser  {  public static void main(String argv[])  {  Rectangle rectangle1 = new Rectangle(30.0,10.0);   System.out.println("rectangle1 area " +  rectangle1.calculateArea()); rectangle1.setWidth(20.0);  System.out.println("rectangle1 area " +  rectangle1.calculateArea());  }  } 21 Formal vs Actual Parameters
  • 22. Method Overloading  In Java, within a class, several methods can have the same name. We called method overloading  Two methods are said to have different formal parameter lists: If both methods have a different number of formal parameters If the number of formal parameters is the same in both methods, the data type of the formal parameters in the order we list must differ in at least one position 22
  • 23. Method Overloading  Example: public void methodABC() public void methodABC(int x) public void methodABC(int x, double y) public void methodABC(double x, int y) public void methodABC(char x, double y) public void methodABC(String x,int y) 23
  • 24. Java code for overloading  public class Exam  {  public static void main (String [] args)  {  int test1=75, test2=68, total_test1, total_test2;  Exam midsem=new Exam();  total_test1 = midsem.result(test1);  System.out.println("Total test 1 : "+ total_test1);  total_test2 = midsem.result(test1,test2);  System.out.println("Total test 2 : "+ total_test2);  }  int result (int i)  {  return i++;  }   int result (int i, int j)  {  return ++i + j;  }  } 24
  • 25.  Output Total test 1 : 75 Total test 2 : 144 25
  • 26. Constructors Revisited  Properties of constructors: Name of constructor same as the name of class A constructor,even though it is a method, it has no type Constructors are automatically executed when a class object is instantiated A class can have more than one constructors – “constructor overloading” ○ which constructor executes depends on the type of value passed to the constructor when the object is instantiated 26
  • 27. Java code (constructor overloading) public class Student { String name; int age; Student(String n, int a) { name = n; age = a; System.out.println ("Name1 :" + name); System.out.println ("Age1 :" + age); } Student(String n) { name = n; age = 18; System.out.println ("Name2 :" + name); System.out.println ("Age2 :" + age); } public static void main (String args[]) { Student myStudent1=new Student("Adam",22); Student myStudent2=new Student("Adlin"); } } 27
  • 29. Object Methods & Class Methods  Object/Instance methods belong to objects and can only be applied after the objects are created.  They called by the following : objectName.methodName();  Class can have its own methods known as class methods or static methods 29
  • 30. Static Methods  Java supports static methods as well as static variables.  Static Method:-  Belongs to class (NOT to objects created from the class)  Can be called without creating an object/instance of the class  To define a static method, put the modifier static in the method declaration:  Static methods are called by : ClassName.methodName(); 30
  • 31. Java Code (static method) public class Fish { public static void main (String args[]) { System.out.println ("Flower Horn"); Fish.colour(); } static void colour () { System.out.println ("Beautiful Colour"); } } 31

Editor's Notes

  • #10: Ada 2 kategori method 1.Method yg dpt pulangkan nilai-guna return 2.Void methodtak dpt pulangkan nilai
  • #13: Ada 2 kategori method 1.Method yg dpt pulangkan nilai-guna return 2.Void methodtak dpt pulangkan nilai
  • #15: Semasa panggilan method dilakukan, boleh ada lebih dari satu jenis data pada parameter.
  • #20: Sintak untuk memanggil method yang boleh pulangkan nilai (mesti ada parameter semasa panggilan dilakukan)
  • #24: Method methodABC() merupakan satu contoh method overloading dalam satu kelas