
- Java.lang Package classes
- Java.lang - Home
- Java.lang - Boolean
- Java.lang - Byte
- Java.lang - Character
- Java.lang - Character.Subset
- Java.lang - Character.UnicodeBlock
- Java.lang - Class
- Java.lang - ClassLoader
- Java.lang - Compiler
- Java.lang - Double
- Java.lang - Enum
- Java.lang - Float
- Java.lang - InheritableThreadLocal
- Java.lang - Integer
- Java.lang - Long
- Java.lang - Math
- Java.lang - Number
- Java.lang - Object
- Java.lang - Package
- Java.lang - Process
- Java.lang - ProcessBuilder
- Java.lang - Runtime
- Java.lang - RuntimePermission
- Java.lang - SecurityManager
- Java.lang - Short
- Java.lang - StackTraceElement
- Java.lang - StrictMath
- Java.lang - String
- Java.lang - StringBuffer
- Java.lang - StringBuilder
- Java.lang - System
- Java.lang - Thread
- Java.lang - ThreadGroup
- Java.lang - ThreadLocal
- Java.lang - Throwable
- Java.lang - Void
- Java.lang Package extras
- Java.lang - Interfaces
- Java.lang - Errors
- Java.lang - Exceptions
- Java.lang Package Useful Resources
- Java.lang - Useful Resources
- Java.lang - Discussion
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Java.lang.Class.asSubclass() Method
Description
The java.lang.Class.asSubclass() method casts this Class object to represent a subclass of the class represented by the specified class object.It is useful when a client needs to "narrow" the type of a Class object to pass it to an API that restricts the Class objects that it is willing to accept.
Declaration
Following is the declaration for java.lang.Class.asSubclass() method
public <U> Class<? extends U> asSubclass(Class<U> clazz)
Parameters
NA
Return Value
This method returns this Class object, cast to represent a subclass of the specified class object.
Exception
ClassCastException − if this Class object does not represent a subclass of the specified class (in this "subclass" includes the class itself).
Example
The following example shows the usage of java.lang.Class.asSubclass() method.
package com.tutorialspoint; import java.lang.*; public class ClassDemo { public static void main(String[] args) { try { ClassDemo cls = new ClassDemo(); ClassDemo subcls = new SubClass1(); // class ClassDemo Class c = cls.getClass(); System.out.println(c); // sub class SubClass1 Class c1 = subcls.getClass(); System.out.println(c1); // represent a subclass of the specified class object Class retval = c1.asSubclass(c); System.out.println(retval); } catch(ClassCastException e) { System.out.println(e.toString()); } } } class SubClass1 extends ClassDemo { // sub class }
Let us compile and run the above program, this will produce the following result −
class com.tutorialspoint.ClassDemo class com.tutorialspoint.SubClass1 class com.tutorialspoint.SubClass1