Flexible nature of java.lang.Object
Last Updated :
02 May, 2022
We all love the mechanism of python, where we don’t have to bother about the data types of the variables. Interestingly we have one class in Java too, which is pretty similar! It’s java.lang.Object.
Example:
Java
import java.util.*;
public class GFG {
public static void main(String arr[])
{
Object y;
y = 'A' ;
System.out.println(y.getClass().getName());
y = 1 ;
System.out.println(y.getClass().getName());
y = "Hi" ;
System.out.println(y.getClass().getName());
y = 1.222 ;
System.out.println(y.getClass().getName());
y = false ;
System.out.println(y.getClass().getName());
}
}
|
Output
java.lang.Character
java.lang.Integer
java.lang.String
java.lang.Double
java.lang.Boolean
Such behavior can be attributed to the fact that the Object class is a superclass to all other classes. Hence, a reference variable of type Object can be practically used to reference objects of any class. So, we could also assign y = new InputStreamReader(System.in) in the above code.
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...