Chen Kinnrot
Chen Kinnrot

Reputation: 21015

Check if a type is an interface

I want to validate a parameter sent to a method, it must be an interface type. What to ask?

void (Class<I> interfaceType){
  if (thisisnotaninterface){
    throw...
  }
}

Upvotes: 13

Views: 5243

Answers (2)

Aviram Segal
Aviram Segal

Reputation: 11120

Just use Class#isInterface() to check that

And seriously, you should be reading the Javadocs before asking here.

Upvotes: 12

Rohit Jain
Rohit Jain

Reputation: 213223

You have got a Class#isInterface() method that does exactly what you want: -

if (!interfaceType.isInterface()) {
    throw...
}

Upvotes: 16

Related Questions