java servlet过滤器在实现filter接口时,为什么不必要实现init和destroy方法?

实现类不是抽象类,为什么可以不用实现接口的所有方法呢?
图片说明

还有,这个绿圈上面的D是代表什么?

init方法是初始化,destroy方法是消亡,初始化方法执行方式有两种方式,一般的是在服务器启动后第一个用户请求改Servlet是调用,二是设置该Servlet在服务器启动后自动执行。 destroy方法中的代码块也只能执行一次,在Servlet对象被销毁时调用,destroy方法执行后jvm虚拟机的垃圾回收机制择时回收,doFiler法法是你的业务逻辑代码,也就是dopost和doget方法。一般接口中不能又实现,但是在jdk1.8中有个新特性,在方法的前面加default后可以给一个方法写实现,也许是init()和destroy()也有默认值吧