Overriding return type in extended interface - Bad idea?

后端 未结 4 1347
天命终不由人
天命终不由人 2020-12-16 14:05

In Java, you can do the following :

public interface IEngine{}
public interface ICoolEngine extends IEngine{}

public interface Car
{
   IEngine getEngine();         


        
4条回答
  •  感情败类
    2020-12-16 14:53

    What you're doing is completely OK.

    I'd prefer to put it this way:

    public interface IEngine { }
    public interface ICoolEngine extends IEngine { }
    
    public interface ICar {
       T getEngine();
    }
    
    public interface ICoolCar extends ICar { }
    

    I used generics because as you used an annotation I guessed you're working on Java 5+

提交回复
热议问题