SlideShare a Scribd company logo
Write Once Run Anywhere

              Session 3
OBJECTIVES
 Classes


 Objects


 Methods


 Constructors
CLASSES
 class One      class College
  {                  {


     }                      }




class Book      class AnyThing
{               {


 }
                        }
Class Definition
A class contains a name, several variable declarations (instance variables)
and several method declarations. All are called members of the class.

General form of a class:

class classname {
   type instance-variable-1;
   …
   type instance-variable-n;

    type   method-name-1(parameter-list)          { …}
    type   method-name-2(parameter-list)          { …}
    …
    type   method-name-m(parameter-list)          { …}
}
Example: Class
A class with three variable members:

class Box    {
   double   width;
   double   height;
   double   depth;
}

A new Box object is created and a new value assigned to its width variable:

Box myBox = new Box();
myBox.width = 100;
Example: Class Usage
class BoxDemo {
   public static   void main(String      args[])   {
       Box mybox = new Box();
       double vol;

        mybox.width    = 10;
        mybox.height    = 20;
        mybox.depth    = 15;

        vol = mybox.width       * mybox.height  * mybox.depth;
        System.out.println("Volume        is " + vol);
    }
}
Compilation and Execution
Place the Box class definitions in file Box.java:

class   Box { … }

Place the BoxDemo class definitions in file BoxDemo.java:

class BoxDemo {
   public static       void   main(…)    { …}
}

Compilation and execution:

> javac BoxDemo.java
> java BoxDemo
Variable Independence 1
Each object has its own copy of the instance variables: changing the
variables of one object has no effect on the variables of another object.

Consider this example:

class BoxDemo2 {
   public static   void main(String           args[])    {
       Box mybox1 = new Box();
       Box mybox2 = new Box();
       double vol;

       mybox1.width      = 10;
       mybox1.height      = 20;
       mybox1.depth      = 15;
Variable Independence 2
        mybox2.width    = 3;
        mybox2.height    = 6;
        mybox2.depth    = 9;

        vol = mybox1.width       * mybox1.height  * mybox1.depth;
        System.out.println("Volume        is " + vol);

        vol = mybox2.width       * mybox2.height  * mybox2.depth;
        System.out.println("Volume        is " + vol);
    }
}

What are the printed volumes of both boxes?
OBJECTS
    class Book
{

    }



class JavaBook
{
    public ststic void main(String args[])
        {
             Book b=new Book();
         }
}
Declaring Objects
Obtaining objects of a class is a two-stage process:

1) Declare a variable of the class type:

   Box myBox;

   The value of myBox is a reference to an object, if one exists, or null.
   At this moment, the value of myBox is null.

2) Acquire an actual, physical copy of an object and assign its address to
   the variable. How to do this?
Operator new
Allocates memory for a Box object and returns its address:

   Box myBox = new Box();

The address is then stored in the myBox reference variable.

Box() is a class constructor - a class may declare its own constructor or
rely on the default constructor provided by the Java environment.
Memory Allocation
Memory is allocated for objects dynamically.

This has both advantages and disadvantages:

1) as many objects are created as needed
2) allocation is uncertain – memory may be insufficient

Variables of simple types do not require new:

   int   n = 1;

In the interest of efficiency, Java does not implement simple types as
objects. Variables of simple types hold values, not references.
Assigning Reference Variables
Assignment copies address, not the actual value:

Box b1 = new Box();
Box b2 = b1;

Both variables point to the same object.

Variables are not in any way connected. After

b1 = null;

b2 still refers to the original object.
Methods

class Book             Class JavaBook
{                      {
Int pages;             Public static void main(String args[])
                         {
Public void doRead()         Book b=new Book();
{                            b.pages=200;
}                            b.doRead();
                           }
                       }
 }
Methods
General form of a method definition:

type name(parameter-list)            {
   … return value;   …
}

Components:
1) type - type of values returned by the method. If a method does not
    return any value, its return type must be void.
2) name is the name of the method
3) parameter-list        is a sequence of type-identifier lists separated by
    commas
4) return    value indicates what value is returned by the method.
Example: Method 1
Classes declare methods to hide their internal data structures, as well as for
their own internal use:

Within a class, we can refer directly to its member variables:

class Box {
   double width,     height,    depth;
   void volume() {
       System.out.print("Volume        is ");
       System.out.println(width        * height        * depth);
   }
}
Example: Method 2
When an instance variable is accessed by code that is not part of the class
in which that variable is defined, access must be done through an object:

class BoxDemo3 {
   public static    void main(String   args[])          {
       Box mybox1 = new Box();
       Box mybox2 = new Box();
       mybox1.width    = 10;    mybox2.width          = 3;
       mybox1.height    = 20;  mybox2.height           = 6;
       mybox1.depth = 15;       mybox2.depth          = 9;

        mybox1.volume();
        mybox2.volume();
    }
}
Value-Returning Method 1
The type of an expression returning value from a method must agree with
the return type of this method:

class Box    {
   double   width;
   double   height;
   double   depth;

    double volume()    {
       return width     * height   * depth;
    }
}
Value-Returning Method 2
class BoxDemo4 {
   public static    void main(String   args[])   {
       Box mybox1 = new Box();
       Box mybox2 = new Box();
       double vol;
       mybox1.width    = 10;
       mybox2.width    = 3;
       mybox1.height    = 20;
       mybox2.height    = 6;
       mybox1.depth = 15;
       mybox2.depth = 9;
Value-Returning Method 3
The type of a variable assigned the value returned by a method must agree
with the return type of this method:

        vol = mybox1.volume();
        System.out.println("Volume        is   " + vol);
        vol = mybox2.volume();
        System.out.println("Volume        is   " + vol);
    }
}
Parameterized Method
Parameters increase generality and applicability of a method:

    1) method without parameters

        int   square()     {   return   10*10;      }

    2) method with parameters

        int   square(int       i)   { return     i*i;   }

Parameter: a variable receiving value at the time the method is invoked.

Argument: a value passed to the method when it is invoked.
Example: Parameterized Method 1
class Box       {
   double      width;
   double      height;
   double      depth;

    double volume()      {
       return width       * height   * depth;
    }

    void     setDim(double   w, double h,       double   d) {
           width = w; height   = h; depth       = d;
    }
}
Example: Parameterized Method 2
class BoxDemo5 {
   public static   void main(String       args[])    {
       Box mybox1 = new Box();
       Box mybox2 = new Box();
       double vol;

        mybox1.setDim(10,     20, 15);
        mybox2.setDim(3,     6, 9);

        vol = mybox1.volume();
        System.out.println("Volume       is   " + vol);
        vol = mybox2.volume();
        System.out.println("Volume       is   " + vol);
    }
}
Constructor
 class One                     class College
  {
                                    {
  One()
{
//Initialization                           }
}

    }


class Book
{                              class AnyThing
  Book()
{
                               {
// Some Initialization
}
  }
                                       }
Constructor
A constructor initializes the instance variables of an object.

It is called immediately after the object is created but before the new
operator completes.

1) it is syntactically similar to a method:
2) it has the same name as the name of its class
3) it is written without return type; the default return type of a class
    constructor is the same class

When the class has no constructor, the default constructor automatically
initializes all its instance variables with zero.
Example: Constructor 1
class Box    {
   double   width;
   double   height;
   double   depth;

    Box() {
       System.out.println("Constructing        Box");
       width = 10; height = 10; depth        = 10;
    }

    double volume()   {
       return width    * height   * depth;
    }
}
Example: Constructor 2
class BoxDemo6 {
   public static   void main(String    args[])    {
       Box mybox1 = new Box();
       Box mybox2 = new Box();
       double vol;

        vol = mybox1.volume();
        System.out.println("Volume    is   " + vol);

        vol = mybox2.volume();
        System.out.println("Volume    is   " + vol);
    }
}
Parameterized Constructor 1
So far, all boxes have the same dimensions.

We need a constructor able to create boxes with different dimensions:

class Box     {
   double    width;
   double    height;
   double    depth;

    Box(double w, double       h, double d) {
       width = w; height       = h; depth = d;
    }

    double   volume()   { return    width     * height   * depth;   }
}
Parameterized Constructor 2
class BoxDemo7 {
   public static   void main(String args[])      {
       Box mybox1 = new Box(10, 20, 15);
       Box mybox2 = new Box(3, 6, 9);
       double vol;

        vol = mybox1.volume();
        System.out.println("Volume   is   " + vol);

        vol = mybox2.volume();
        System.out.println("Volume   is   " + vol);
    }
}
finalize() Method
A constructor helps to initialize an object just after it has been created.

In contrast, the finalize      method is invoked just before the object is
destroyed:

     1) implemented inside a class as:

        protected      void     finalize()     { …}

     2) implemented when the usual way of removing objects from memory
        is insufficient, and some special actions has to be carried out

How is the finalize         method invoked?
Class object method constructors in java

More Related Content

PPTX
PDF
Java threads
PPTX
Inner classes in java
PPTX
Threads in Java
PDF
Object Based Databases
PDF
Basics of JavaScript
ODP
Garbage collection
PPT
Core java concepts
Java threads
Inner classes in java
Threads in Java
Object Based Databases
Basics of JavaScript
Garbage collection
Core java concepts

What's hot (20)

PPTX
Exception Handling in Java
PDF
Introduction to Java Programming Language
PPTX
Constructor in java
PPTX
Properties and indexers in C#
PPT
Java Crypto
PPTX
constructors in java ppt
PDF
Java Collection framework
PDF
Chapter 02: Classes Objects and Methods Java by Tushar B Kute
PDF
Java exception handling ppt
PPTX
Constructor overloading & method overloading
PPTX
Java exception handling
PPTX
Core java complete ppt(note)
PPTX
5. stored procedure and functions
PPTX
Abstraction in java
PDF
Querying XML: XPath and XQuery
PDF
Sql Injection Myths and Fallacies
PDF
java-thread
PDF
PPTX
OOPS In JAVA.pptx
PPT
PL/SQL Introduction and Concepts
Exception Handling in Java
Introduction to Java Programming Language
Constructor in java
Properties and indexers in C#
Java Crypto
constructors in java ppt
Java Collection framework
Chapter 02: Classes Objects and Methods Java by Tushar B Kute
Java exception handling ppt
Constructor overloading & method overloading
Java exception handling
Core java complete ppt(note)
5. stored procedure and functions
Abstraction in java
Querying XML: XPath and XQuery
Sql Injection Myths and Fallacies
java-thread
OOPS In JAVA.pptx
PL/SQL Introduction and Concepts
Ad

Viewers also liked (20)

PPS
Introduction to class in java
PPTX
Constructor ppt
PPTX
Classes, objects in JAVA
PPT
Object and Classes in Java
PPTX
Java constructors
PPTX
Methods and constructors in java
PPTX
Constructor in java
PDF
Constructors and Destructors
PPTX
class and objects
PPTX
Constructors & destructors
PPT
Java: Objects and Object References
PPTX
Classes And Objects
PPTX
Method overloading and constructor overloading in java
PPTX
java Basic Programming Needs
PPT
Exception handling
PPT
String handling session 5
PPT
Java interfaces
PPT
Java packages
PPTX
Introduction to java
PDF
Methods in Java
Introduction to class in java
Constructor ppt
Classes, objects in JAVA
Object and Classes in Java
Java constructors
Methods and constructors in java
Constructor in java
Constructors and Destructors
class and objects
Constructors & destructors
Java: Objects and Object References
Classes And Objects
Method overloading and constructor overloading in java
java Basic Programming Needs
Exception handling
String handling session 5
Java interfaces
Java packages
Introduction to java
Methods in Java
Ad

Similar to Class object method constructors in java (20)

PPT
5.CLASSES.ppt(MB)2022.ppt .
PDF
Session 3 Constructors, Types, Overloading, Static MethodsNotes.pdf
PPTX
Chapter ii(oop)
PPTX
Mpl 9 oop
PPTX
JAVA Module 2____________________--.pptx
PPTX
JAVA Module 2 ppt on classes and objects and along with examples
PPTX
class object.pptx
PDF
Java-Module 3-PPT-TPS.pdf.Java-Module 3-PPT-TPS.pdf
PPTX
unit 2 java.pptx
PPTX
Classes, Objects and Method - Object Oriented Programming with Java
PPT
6.INHERITANCE.ppt(MB).ppt .
PDF
C# Summer course - Lecture 3
PPTX
PDF
Java misc1
DOCX
java classes
PPT
gdfgdfg
PPTX
Chapter4.pptxdgdhgfshsfhtgjsjryjusryjryjursyj
PPT
gdfgdfg
PDF
Class notes(week 6) on inheritance and multiple inheritance
PPTX
UNIT_-II_2021R.pptx
5.CLASSES.ppt(MB)2022.ppt .
Session 3 Constructors, Types, Overloading, Static MethodsNotes.pdf
Chapter ii(oop)
Mpl 9 oop
JAVA Module 2____________________--.pptx
JAVA Module 2 ppt on classes and objects and along with examples
class object.pptx
Java-Module 3-PPT-TPS.pdf.Java-Module 3-PPT-TPS.pdf
unit 2 java.pptx
Classes, Objects and Method - Object Oriented Programming with Java
6.INHERITANCE.ppt(MB).ppt .
C# Summer course - Lecture 3
Java misc1
java classes
gdfgdfg
Chapter4.pptxdgdhgfshsfhtgjsjryjusryjryjursyj
gdfgdfg
Class notes(week 6) on inheritance and multiple inheritance
UNIT_-II_2021R.pptx

Recently uploaded (20)

PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
Pre independence Education in Inndia.pdf
PDF
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PDF
Classroom Observation Tools for Teachers
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PPTX
Week 4 Term 3 Study Techniques revisited.pptx
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PPTX
master seminar digital applications in india
PDF
RMMM.pdf make it easy to upload and study
PDF
Basic Mud Logging Guide for educational purpose
PPTX
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PPTX
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PPTX
Institutional Correction lecture only . . .
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
2.FourierTransform-ShortQuestionswithAnswers.pdf
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
O7-L3 Supply Chain Operations - ICLT Program
Pre independence Education in Inndia.pdf
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
Renaissance Architecture: A Journey from Faith to Humanism
Classroom Observation Tools for Teachers
Module 4: Burden of Disease Tutorial Slides S2 2025
Week 4 Term 3 Study Techniques revisited.pptx
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
master seminar digital applications in india
RMMM.pdf make it easy to upload and study
Basic Mud Logging Guide for educational purpose
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
102 student loan defaulters named and shamed – Is someone you know on the list?
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
O5-L3 Freight Transport Ops (International) V1.pdf
Institutional Correction lecture only . . .
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
Abdominal Access Techniques with Prof. Dr. R K Mishra

Class object method constructors in java

  • 1. Write Once Run Anywhere Session 3
  • 2. OBJECTIVES  Classes  Objects  Methods  Constructors
  • 3. CLASSES class One class College { { } } class Book class AnyThing { { } }
  • 4. Class Definition A class contains a name, several variable declarations (instance variables) and several method declarations. All are called members of the class. General form of a class: class classname { type instance-variable-1; … type instance-variable-n; type method-name-1(parameter-list) { …} type method-name-2(parameter-list) { …} … type method-name-m(parameter-list) { …} }
  • 5. Example: Class A class with three variable members: class Box { double width; double height; double depth; } A new Box object is created and a new value assigned to its width variable: Box myBox = new Box(); myBox.width = 100;
  • 6. Example: Class Usage class BoxDemo { public static void main(String args[]) { Box mybox = new Box(); double vol; mybox.width = 10; mybox.height = 20; mybox.depth = 15; vol = mybox.width * mybox.height * mybox.depth; System.out.println("Volume is " + vol); } }
  • 7. Compilation and Execution Place the Box class definitions in file Box.java: class Box { … } Place the BoxDemo class definitions in file BoxDemo.java: class BoxDemo { public static void main(…) { …} } Compilation and execution: > javac BoxDemo.java > java BoxDemo
  • 8. Variable Independence 1 Each object has its own copy of the instance variables: changing the variables of one object has no effect on the variables of another object. Consider this example: class BoxDemo2 { public static void main(String args[]) { Box mybox1 = new Box(); Box mybox2 = new Box(); double vol; mybox1.width = 10; mybox1.height = 20; mybox1.depth = 15;
  • 9. Variable Independence 2 mybox2.width = 3; mybox2.height = 6; mybox2.depth = 9; vol = mybox1.width * mybox1.height * mybox1.depth; System.out.println("Volume is " + vol); vol = mybox2.width * mybox2.height * mybox2.depth; System.out.println("Volume is " + vol); } } What are the printed volumes of both boxes?
  • 10. OBJECTS class Book { } class JavaBook { public ststic void main(String args[]) { Book b=new Book(); } }
  • 11. Declaring Objects Obtaining objects of a class is a two-stage process: 1) Declare a variable of the class type: Box myBox; The value of myBox is a reference to an object, if one exists, or null. At this moment, the value of myBox is null. 2) Acquire an actual, physical copy of an object and assign its address to the variable. How to do this?
  • 12. Operator new Allocates memory for a Box object and returns its address: Box myBox = new Box(); The address is then stored in the myBox reference variable. Box() is a class constructor - a class may declare its own constructor or rely on the default constructor provided by the Java environment.
  • 13. Memory Allocation Memory is allocated for objects dynamically. This has both advantages and disadvantages: 1) as many objects are created as needed 2) allocation is uncertain – memory may be insufficient Variables of simple types do not require new: int n = 1; In the interest of efficiency, Java does not implement simple types as objects. Variables of simple types hold values, not references.
  • 14. Assigning Reference Variables Assignment copies address, not the actual value: Box b1 = new Box(); Box b2 = b1; Both variables point to the same object. Variables are not in any way connected. After b1 = null; b2 still refers to the original object.
  • 15. Methods class Book Class JavaBook { { Int pages; Public static void main(String args[]) { Public void doRead() Book b=new Book(); { b.pages=200; } b.doRead(); } } }
  • 16. Methods General form of a method definition: type name(parameter-list) { … return value; … } Components: 1) type - type of values returned by the method. If a method does not return any value, its return type must be void. 2) name is the name of the method 3) parameter-list is a sequence of type-identifier lists separated by commas 4) return value indicates what value is returned by the method.
  • 17. Example: Method 1 Classes declare methods to hide their internal data structures, as well as for their own internal use: Within a class, we can refer directly to its member variables: class Box { double width, height, depth; void volume() { System.out.print("Volume is "); System.out.println(width * height * depth); } }
  • 18. Example: Method 2 When an instance variable is accessed by code that is not part of the class in which that variable is defined, access must be done through an object: class BoxDemo3 { public static void main(String args[]) { Box mybox1 = new Box(); Box mybox2 = new Box(); mybox1.width = 10; mybox2.width = 3; mybox1.height = 20; mybox2.height = 6; mybox1.depth = 15; mybox2.depth = 9; mybox1.volume(); mybox2.volume(); } }
  • 19. Value-Returning Method 1 The type of an expression returning value from a method must agree with the return type of this method: class Box { double width; double height; double depth; double volume() { return width * height * depth; } }
  • 20. Value-Returning Method 2 class BoxDemo4 { public static void main(String args[]) { Box mybox1 = new Box(); Box mybox2 = new Box(); double vol; mybox1.width = 10; mybox2.width = 3; mybox1.height = 20; mybox2.height = 6; mybox1.depth = 15; mybox2.depth = 9;
  • 21. Value-Returning Method 3 The type of a variable assigned the value returned by a method must agree with the return type of this method: vol = mybox1.volume(); System.out.println("Volume is " + vol); vol = mybox2.volume(); System.out.println("Volume is " + vol); } }
  • 22. Parameterized Method Parameters increase generality and applicability of a method: 1) method without parameters int square() { return 10*10; } 2) method with parameters int square(int i) { return i*i; } Parameter: a variable receiving value at the time the method is invoked. Argument: a value passed to the method when it is invoked.
  • 23. Example: Parameterized Method 1 class Box { double width; double height; double depth; double volume() { return width * height * depth; } void setDim(double w, double h, double d) { width = w; height = h; depth = d; } }
  • 24. Example: Parameterized Method 2 class BoxDemo5 { public static void main(String args[]) { Box mybox1 = new Box(); Box mybox2 = new Box(); double vol; mybox1.setDim(10, 20, 15); mybox2.setDim(3, 6, 9); vol = mybox1.volume(); System.out.println("Volume is " + vol); vol = mybox2.volume(); System.out.println("Volume is " + vol); } }
  • 25. Constructor class One class College { { One() { //Initialization } } } class Book { class AnyThing Book() { { // Some Initialization } } }
  • 26. Constructor A constructor initializes the instance variables of an object. It is called immediately after the object is created but before the new operator completes. 1) it is syntactically similar to a method: 2) it has the same name as the name of its class 3) it is written without return type; the default return type of a class constructor is the same class When the class has no constructor, the default constructor automatically initializes all its instance variables with zero.
  • 27. Example: Constructor 1 class Box { double width; double height; double depth; Box() { System.out.println("Constructing Box"); width = 10; height = 10; depth = 10; } double volume() { return width * height * depth; } }
  • 28. Example: Constructor 2 class BoxDemo6 { public static void main(String args[]) { Box mybox1 = new Box(); Box mybox2 = new Box(); double vol; vol = mybox1.volume(); System.out.println("Volume is " + vol); vol = mybox2.volume(); System.out.println("Volume is " + vol); } }
  • 29. Parameterized Constructor 1 So far, all boxes have the same dimensions. We need a constructor able to create boxes with different dimensions: class Box { double width; double height; double depth; Box(double w, double h, double d) { width = w; height = h; depth = d; } double volume() { return width * height * depth; } }
  • 30. Parameterized Constructor 2 class BoxDemo7 { public static void main(String args[]) { Box mybox1 = new Box(10, 20, 15); Box mybox2 = new Box(3, 6, 9); double vol; vol = mybox1.volume(); System.out.println("Volume is " + vol); vol = mybox2.volume(); System.out.println("Volume is " + vol); } }
  • 31. finalize() Method A constructor helps to initialize an object just after it has been created. In contrast, the finalize method is invoked just before the object is destroyed: 1) implemented inside a class as: protected void finalize() { …} 2) implemented when the usual way of removing objects from memory is insufficient, and some special actions has to be carried out How is the finalize method invoked?