Open In App

Class getCanonicalName() method in Java with Examples

Last Updated : 25 Jan, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

The getCanonicalName() method of java.lang.Class class is used to get the canonical name of this class, which is the canonical name as defined by the Java Language Specification. The method returns the canonical name of this class in the form of String. 
Syntax: 
 

public String getCanonicalName()

Parameter: This method does not accept any parameter.
Return Value: This method returns the canonical name of this class in the form of String. 
Below programs demonstrate the getCanonicalName() method.
Example 1:
 

Java




// Java program to demonstrate getCanonicalName() method
 
import java.util.*;
 
public class Test {
    public static void main(String[] args)
        throws ClassNotFoundException
    {
 
        // returns the Class object for this class
        Class myClass = Class.forName("Test");
 
        System.out.println("Class represented by myClass: "
                           + myClass.toString());
 
        // Get the canonical name of myClass
        // using getCanonicalName() method
        System.out.println("CanonicalName of myClass: "
                           + myClass.getCanonicalName());
    }
}


Output: 
 

Class represented by myClass: class Test
CanonicalName of myClass: Test

Example 2:
 

Java




// Java program to demonstrate getCanonicalName() method
 
import java.util.*;
 
class Main {
 
    public Object obj;
 
    Main()
    {
 
        class Arr {
        };
 
        obj = new Arr();
    }
 
    public static void main(String[] args)
        throws ClassNotFoundException
    {
        Main t = new Main();
 
        // returns the Class object
        Class myClass = t.obj.getClass();
 
        System.out.println("Class represented by myClass: "
                           + myClass.toString());
 
        // Get the canonical name of myClass
        // using getCanonicalName() method
        System.out.println("CanonicalName of myClass: "
                           + myClass.getCanonicalName());
    }
}


Output: 
 

Class represented by myClass: class Main$1Arr
CanonicalName of myClass: null

Reference: https://docs.oracle.com/javase/9/docs/api/java/lang/Class.html#getCanonicalName–
 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads