如何从Java方法返回.class?

Vin*_*ran -1 java

从java中的实用程序方法我打算返回.class,但我不知道如何实现它.当我尝试使用下面的方法时,它会给出编译错误.请建议什么是正确的方法?

T getProviderClass(String customerType){

        switch (customerType){
            case "FACEBOOK":{
                return FacebookApi.class;
            }
            case "GOOGLE":{
                return GoogleApi20.class;
            }
            default:return null;
        }
    }
Run Code Online (Sandbox Code Playgroud)

小智 5

使用java.lang.Class作为返回类型.

Class<?> getProviderClass(String customerType){
}
Run Code Online (Sandbox Code Playgroud)


use*_*685 5

而不是使用T你应该这样做:

Class<?> getProviderClass(String customerType) {
     switch (customerType) {
          case "FACEBOOK":{
               return FacebookApi.class;
          }
          case "GOOGLE":{
               return GoogleApi20.class;
          }
          default: return null;
      }
 }
Run Code Online (Sandbox Code Playgroud)