view raw
Pablo Fernandez Pablo Fernandez - 9 months ago 29
Java Question

How to determine by reflection if a Method returns 'void'

I have a

object and I would like to know if it's return type is

I've checked the Javadocs and there is a
method that returns a Class object. The thing is that they don't say what would be the return type if the method is void.


if( method.getReturnType().equals(Void.TYPE)){
    out.println("It does");

Quick sample:


import java.lang.reflect.Method;

public class X {
    public static void main( String [] args ) {
        for( Method m : X.class.getMethods() ) {
            if( m.getReturnType().equals(Void.TYPE)){
                System.out.println( m.getName()  + " returns void ");

    public void hello(){}
$java X
hello returns void 
main returns void 
wait returns void 
wait returns void 
wait returns void 
notify returns void 
notifyAll returns void