Passing Object as Parameter
Passing Object Example
class BOX { int height; int width; BOX(int h, int w) { // parameterized constructor height = h; width = w; } void area(BOX b1) { // area function having object b1 in parameter int areabox = b1.height * b1.width; // initialize areabox having product result System.out.println("Area of Box : " + areabox); } } class BoxExample { public static void main(String args[]) { BOX b1 = new BOX(10, 20); // constructor calling with parameter b1.area(b1); // calling fuction with object } }
Output of the program :
Area of Box : 200
Explanation :
- We can pass Object of any class as parameter to a method in java.
- We can access the instance variables of the object passed inside the called method.
areabox = b1.height * b1.width
- It is good practice to initialize instance variables of an object before passing object as parameter to method otherwise it will take default initial values.
Different Ways of Passing Object as Parameter :
1 : By directly passing Object Name
class BOX { int height; int width; BOX(int h, int w) { // parameterized constructor height = h; width = w; }
void area(BOX b1) { int areaOfBox = b1.height * b1.width; System.out.println("Area of Box : " + areaOfBox); } class BoxExample { public static void main(String args[]) { BOX b1 = new BOX(10, 20); b1.area(b1); }
2 : By passing Instance Variables one by one
class BOX { int height; int width; void area(int height, int width) { int areaOfBox = height * width; System.out.println("Area of Box : " + areaOfBox); } } class BoxExample { public static void main(String args[]) { BOX r1 = new BOX(); BOX r2 = new BOX(); b1.height = 20; b1.width = 10; r2.area(b1.height, b1.width); } }
Actually this is not a way to pass the object to method. but this program will explain you how to pass instance variables of particular object to calling method.
3 : We can pass only public data of object to the Method.
Suppose we made width variable of a class private then we cannot update value in a main method since it does not have permission to access it.
private int width;
after making width private –
class BOXExample { public static void main(String args[]) { BOX b1 = new BOX(); BOX b2 = new BOX(); b1.height = 20; b1.width = 10; //it is not access because width is private b2.area(b1.height, b1.width); } }
Comments
Post a Comment