--- old/src/share/classes/java/lang/reflect/Constructor.java 2013-03-06 15:27:50.808104046 +0100 +++ new/src/share/classes/java/lang/reflect/Constructor.java 2013-03-06 15:27:50.644100852 +0100 @@ -532,6 +532,7 @@ * {@inheritDoc} * @since 1.8 */ + @Override public AnnotatedType getAnnotatedReturnType() { return getAnnotatedReturnType0(getDeclaringClass()); } --- old/src/share/classes/java/lang/reflect/Executable.java 2013-03-06 15:27:51.304113705 +0100 +++ new/src/share/classes/java/lang/reflect/Executable.java 2013-03-06 15:27:51.140110510 +0100 @@ -476,6 +476,20 @@ return declaredAnnotations; } + /** + * Returns an AnnotatedType object that represents the potentially + * annotated return type of the method/constructor represented by this + * Executable. + * + * If this Executable represents a constructor, the AnnotatedType object + * represents the type of the constructed object. + * + * If this Executable represents a method, the AnnotatedType object + * represents the use of a type to specify the return type of the method. + * + * @since 1.8 + */ + public abstract AnnotatedType getAnnotatedReturnType(); /* Helper for subclasses of Executable. * --- old/src/share/classes/java/lang/reflect/Method.java 2013-03-06 15:27:51.804123441 +0100 +++ new/src/share/classes/java/lang/reflect/Method.java 2013-03-06 15:27:51.644120325 +0100 @@ -629,6 +629,7 @@ * {@inheritDoc} * @since 1.8 */ + @Override public AnnotatedType getAnnotatedReturnType() { return getAnnotatedReturnType0(getGenericReturnType()); }