2015-06-21 18 views
5

Aşağıdaki imzayla nasıl bir yöntem oluştururum?JavaPoet Genel Parametre Ekle

public <T extends MyClass> void doSomething(T t) 

Şimdiye kadar var:

MethodSpec.methodBuilder("doSomething") 
     .addModifiers(Modifier.PUBLIC) 
     .addTypeVariable(TypeVariableName.get("T", MyClass.class)) 
     .build() 

DÜZENLEME Bu Yukarıdaki kod üreten budur (Ben parametre ekleyin bilmiyorum):

public <T extends Myclass> void doSomething() 

cevap

9

değerini yeniden kullanabilmeniz için bir değişkene dönüştürdüğünüz TypeVariableName ayıklayın. Eğer, bir Genel yapı yazdığınız geçmek istiyorum takip yolu kullanırsanız

Sonra bu tip

MethodSpec spec = MethodSpec.methodBuilder("doSomething") 
          .addModifiers(Modifier.PUBLIC) 
          .addTypeVariable(typeVariableName) 
          .addParameter(typeVariableName, "t") // you can also add modifiers 
          .build(); 
1

bir parametreyi ekleyin.

MethodSpec loadListInteger = MethodSpec.methodBuilder("loadListInteger") 
        .addModifiers(Modifier.PUBLIC) 
        .returns(void.class) 
        .addParameter(ParameterizedTypeName.get(List.class, Integer.class), "list") 
        .build(); 
İlgili konular