java中因为有了interface的加入使得对类的功能扩展和对类的继承体系的优化提供了好的途径。
               java是单一继承,C++是允许多重继承的,这就使给C++中的类做容器提供了难度。继承应该是同类继承,不然就会破坏体系。在C++中可能为了继承一些相关的功能,可能就会出现继承的父类混乱的局面,从而影响了整个继承体系的合理结构,导致类的界限不明确。所以在C++类的创造中,极致的抽象化是很必要的。
              java的interface是对常量和功能的封装,在C++中可以用虚基类来模拟(我们称之为接口类)。
              interface不依附于哪一个类而存在,所以在继承体系中不应该出现借口的标志,而在C++中则不行,借口类还是类,如果有个类继承了接口类,你必须说他是父类,而不是实现了某某某借口,这个有点头疼。
              

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐