>1) Removing methods from a super interface doesn't keep you
from adding
>similar methods to subclasses
Are you saying people using the methods you want to remove in
TreeNode would have to then subclass it?
>implementation); in the supplied patch, the methods are
still in the
>class TreeNodeBase.
... and what happens to people doing this?
TreeNode basicTeeNode = new TreeNodeBase();
TreeNode customTreeNode = new CustomTreeNodeBase();
list.add(treeNode);
list.add(treeNode2);
for(i = list.iterator(); i.hasNext();){
TreeNode anyTreeNode = (TreeNode)i.next();
anyTreeNode.methodYouRemoved();
}
>2) Removing methods from an interface only influences places
where
>those methods are called on a variable that has the
interface as it's
>static type.
Java 101: interfaces can't have static methods.
Dennis Byrne