1.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java Tue Jan 01 17:50:29 2013 -0800 1.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java Fri Jan 04 23:06:05 2013 -0800 1.3 @@ -321,7 +321,8 @@ 1.4 code.addContent(" "); 1.5 } 1.6 if (member.isMethod()) { 1.7 - if (((MethodDoc)member).isAbstract()) { 1.8 + if (!(member.containingClass().isInterface()) && 1.9 + ((MethodDoc)member).isAbstract()) { 1.10 code.addContent("abstract "); 1.11 } 1.12 // This check for isDefault() and the default modifier needs to be 1.13 @@ -329,7 +330,7 @@ 1.14 // method summary section. Once the default modifier is added 1.15 // to the Modifier list on DocEnv and once it is updated to use the 1.16 // javax.lang.model.element.Modifier, we will need to remove this. 1.17 - else if (((MethodDoc)member).isDefault()) { 1.18 + if (((MethodDoc)member).isDefault()) { 1.19 code.addContent("default "); 1.20 } 1.21 } 1.22 @@ -561,11 +562,14 @@ 1.23 if (member instanceof MethodDoc && !member.isAnnotationTypeElement()) { 1.24 int methodType = (member.isStatic()) ? MethodTypes.STATIC.value() : 1.25 MethodTypes.INSTANCE.value(); 1.26 - methodType = (classdoc.isInterface() || ((MethodDoc)member).isAbstract()) ? 1.27 - methodType | MethodTypes.ABSTRACT.value() : 1.28 - methodType | MethodTypes.CONCRETE.value(); 1.29 - if (((MethodDoc)member).isDefault()) { 1.30 - methodType = methodType | MethodTypes.DEFAULT.value(); 1.31 + if (member.containingClass().isInterface()) { 1.32 + methodType = (((MethodDoc) member).isAbstract()) 1.33 + ? methodType | MethodTypes.ABSTRACT.value() 1.34 + : methodType | MethodTypes.DEFAULT.value(); 1.35 + } else { 1.36 + methodType = (((MethodDoc) member).isAbstract()) 1.37 + ? methodType | MethodTypes.ABSTRACT.value() 1.38 + : methodType | MethodTypes.CONCRETE.value(); 1.39 } 1.40 if (Util.isDeprecated(member) || Util.isDeprecated(classdoc)) { 1.41 methodType = methodType | MethodTypes.DEPRECATED.value();