Объявление методов в интерфейсах

Добрый вечер! Требуется в интерфейсе создать метод, чтобы после реализации этого интерфейса неким классом на вход метода в качестве параметра принимался объект этого же самого класса и выдавался объект этого самого класса. Ведь если я напишу, допустим

JavaВыделить код

1
2
3
4
5
6
7
8

public interface Num {
 
    public Num add (Num b);
    public Num ded (Num b);
    public Num mult (Num b);
    public Num div (Num b);
 
}

и реализую этот интерфейс классом, допустим, Complex, то это методы будут принимать любой Num и выдавать тоже тип Num, который потом придётся явно преобразовывать в Complex. Как реализовать то, что я хочу? Спасибо.