Snailclimb / jsoncat

仿 Spring Boot 但不同于 Spring Boot 的一个轻量级的 HTTP 框架
412 stars 124 forks source link

为什么要使用抽象类继承接口,然后让其他资源加载器继承抽象类,并将方法定义为protect? #34

Closed Robisses closed 1 year ago

Robisses commented 1 year ago

实际实现的方法是protect loadResources方法,然后让public调用protect方法,为什么要这么做呢?为什么不直接让继承类实现接口中的方法呢?有没有大佬能帮忙解释一下

Snailclimb commented 1 year ago

实际实现的方法是protect loadResources方法,然后让public调用protect方法,为什么要这么做呢?为什么不直接让继承类实现接口中的方法呢?有没有大佬能帮忙解释一下

使用抽象类继承接口的主要目的是让子类实现某些必要的方法,同时将这些方法的实现细节延迟到子类中。这样,可以提高代码的可扩展性和可维护性。同时,通过将方法定义为protected,可以确保只有子类可以访问这些方法,从而防止其他类对这些方法的误用。