Passing an Object to The Method in Java

In Java, objects are fundamental building blocks that let us organize our code and build complicated data structures. In Java programming, passing objects to methods is a crucial idea since it allows us to operate on those objects and change their characteristics. With code samples and explanations, we will examine several approaches to passing objects to methods in this article.

Understanding Object References

In Java, you send a reference to an object rather than the actual object when you pass it to a method. This implies that any modifications made to the method's object will also impact the original object. Let's examine several object-passing techniques and their effects to provide clarification.

Person.java

PassObjectByValueExample.java

Output:

Person's name: Bob

In this example, even though we passed the person object to the modifyPersonName method, any changes made to the object's name attribute are reflected outside the method.

2. Passing by Reference

Java always passes objects by reference because the reference to the object is passed to the method. However, you cannot modify the reference itself within the method. This means you can't make the reference point to a different object.

MyData.java

PassObjectByReferenceExample.java

Output:

Data value: 100

As you can see, we passed the data object to the modifyDataValue method. Any changes made to the object's value attribute are reflected outside the method.

3. Returning Modified Objects

In Java, it is also common to return modified objects from methods. The approach does not modify the original object but creates a new object with the desired changes.

Rectangle.java

ReturnModifiedObjectExample.java

Output:

Original: 10x20
Resized: 30x40

In this example, the resize method returns a new Rectangle object with the modified dimensions.

4. Passing Object References in Arrays or Collections

You can also pass object references in arrays or collections. This allows you to work with multiple objects simultaneously.

Student.java

PassObjectInArrayExample.java

Output:

Student name: Alice Smith
Student name: Bob Smith
Student name: Charlie Smith

In this example, we passed an array of Student objects to the updateStudentNames() method, and it modified the names of the students.

5. Passing Objects as Method Parameters

We can send objects of custom classes as method arguments in addition to basic data types like int, double, and String. It allows us to access and modify the object's attributes from within the function.

Book.java

PassObjectAsParameterExample.java

Output:

Book Title: Java Programming

In this example, we passed a Book object as a parameter to the printBookTitle method, which printed the book's title.

Conclusion

One of the most important aspects of object-oriented programming in Java is passing objects to methods. It's important to keep in mind that Java always passes objects by reference, which implies that any modifications made to an object within a method have an impact on the original object. Depending on your needs, you can decide between altering the original object and delivering a changed duplicate. You may effectively work with objects in your Java programs by comprehending the concepts and techniques discussed in this tutorial.