Void
i JDK? Att det finns wrappers för primitiver känner vi som javautvecklare till väl, men Void
? När används den?Förklaringen är vid reflection (Reflection API). Beakta följande klass:
public class VoidTest { public static void main(String[] args) { try { Class clazz = VoidTest.class.getMethod("returnNothing", null).getReturnType(); System.out.println(clazz == Void.TYPE); System.out.println(clazz == Void.class); } catch (SecurityException e) { e.printStackTrace(); } catch (NoSuchMethodException e) { e.printStackTrace(); } } public void returnNothing(){ System.out.println("Nothing will be returned"); } }
Om inte Wrapperklassen
Void
fanns skulle det bli krångligt att få tillbaka ett vettigt värde i anropet Method.getReturnType()
i vårt exempel.
Inga kommentarer:
Skicka en kommentar