I have a question and any insight i could gain from you
java masters out there would be much appreacated.

I know that Java does not support multiple class inheritance but the language supports
multiple interface inheritance. For given reasons
i guess because multiple inheritance
adds alot of complexity to a language....
in my opinion.

I was thinking about when it would be more appropriate to use an interface
over an abstract class or visa versa.
I know that you define an interface
as part of a public API and then later
add a new method to the interface
you break any classes that implemented
the previous version of the interface.

so i thought a good idea
would be to create an interface
then create an abstract class
that implements that interface.

for instance:

public interface computations{
public double add(double x, double y);
public double multiply(double x, double y);
public double subtract(double x, double y);
}

public abstract class abstractcomputation implements computations{
protected double x,y;

public double add(double x, double y) {this.x = x + x; this.y = y + y; }

public double multiply(double x, double y) { this.x = x * x; this.y = y * y; }

public double subtract(double x, double y) { this.x = x - x; this.y = y - y; }

}

so if a new method is later add to
the interface and implementation
is not provided for the new method the
class is already abstract to begin with.

1.) can this be done?

2.) has anyone ever used any technique simliar to this in there code?

thanks all........