The only way you can access an object is through a reference variable. A reference variable is declared to be of a specific type and that type can never be changed. Reference variables can be declared as static variables, instance variables, method parameters, or local variables.
A reference variable that is declared as final can’t never be reassigned to refer to a different object. The data within the object can be modified, but the reference variable cannot be changed.
package org.kodejava.basic;
public class ReferenceDemo {
public static void main(String[] args) {
// Declaration of Reference variable
Reference ref1, ref2;
// ref3 is declared final, ref3 can't be reassigned
// or refer to different object
final Reference ref3;
// assign ref1 with object Reference
ref1 = new Reference("This is the first reference variable", 1);
// access method getNumber() of object Reference through
// variable ref1
int number = ref1.getNumber();
System.out.println("number= " + number);
// assign ref2 with object Reference
ref2 = new Reference("This is the second reference variable", 2);
// passing ref2 as method parameter of printText() method
ReferenceDemo.printText(ref2);
// assign ref3 with object Reference
ref3 = new Reference("This is the third reference variable", 3);
// try to reassign ref3 will cause a compile-time error
// ref3 = new Reference("Try to reassign", 3);
}
public static void printText(Reference reference) {
String text = reference.getText();
System.out.println(text);
}
}
package org.kodejava.basic;
public class Reference {
private int number;
private String text;
Reference(String text, int number) {
this.text = text;
this.number = number;
}
public String getText() {
return text;
}
public int getNumber() {
return number;
}
}
As you can see, learning Java is rather easy, as it is a well-structured programming language with many automated processes. All you need is dedication and a little free time. If you are still in school, a write my essay service can definitely help you with the latter.
- How do I get number of each day for a certain month in Java? - September 8, 2024
- How do I get operating system process information using ProcessHandle? - July 22, 2024
- How do I sum a BigDecimal property of a list of objects using Java Stream API? - July 22, 2024
so reference variable work as a pointer?
If you compare to other language like C++ you can say that reference is sort of like pointer but you can not do arithmetic on it.
why we can’t use reference variable to call methods/variable
in above program we are using reference copy to call method of class Reference.
Reference ref ;(initialisation is not neccessary.)
ref.gettext();(calling method with object reference.)
Static keyword can be used with the variables and methods but not with the class. Anything declared as static is related to class and not objects.
Nice