图1中idea中红框内的图标是什么意思??????我在图2模仿了collection和abstractcollection和set的关系为什么没有出现那个图标???

图片说明


图片说明

如下代码是摘取InputStream相关片段:

ObjectInput_.java

public interface ObjectInput_ {
    public int read();
}

InputStream_.java

public abstract class InputStream_  {
    public int read(){
        return 0;
    }
}

ObjectInputStream_.java

public class ObjectInputStream_ extends InputStream_ implements ObjectInput_ {
    public int read()  {
        return 0;
    }
}

图片说明

如果把ObjectInputStream_类删了,就不显示那个图标了,是因为ObjectInputStream_既继承了InputStream_又实现了ObjectInput_

而你给的AbstractCollection例子能显示是因为其子类AbstractSet同时实现了Set

public abstract class AbstractSet<E> extends AbstractCollection<E> implements Set<E>

github上有idea的源码,可以下下来看看逻辑,比方上面的判断是在文件:
java\java-impl\src\com\intellij\codeInsight\daemon\impl\JavaLineMarkerProvider.java

图片说明

你是怎么定义的,是菱形继承关系么
这个图标是同级重写方法的意思。
看这个图
https://blog.csdn.net/hou973561160/article/details/80177880

1、红框(向上箭头)是代表接口实现
2、sun接口是继承Father接口,isEmpty是重写而不是实现