抽象类与接口的区别可不可以这样理解:
一个其它的普通的类只能extends一个抽象类,但这个普通类可以implements多个接口;实现多个接口其实是变相的实现了继承多个类,而继承抽象类只能是同时继承一个抽象类
可以这样理解吗 还有其它的主要区别吗
一个其它的普通的类只能extends一个抽象类,但这个普通类可以implements多个接口;实现多个接口其实是变相的实现了继承多个类,而继承抽象类只能是同时继承一个抽象类
可以这样理解吗 还有其它的主要区别吗
1,抽象类可以给出一些成员的实现 接口不可以
2,抽象类可以部分实现 接口必须全部实现
3,一个类只能继承一个抽象类但是可以实现多个接口
从意义上讲(形态)
1,类是对对象的抽象,抽象类是对类的抽象,接口是对行为的抽象.
2,抽象类是从子类中发现公共的东西,泛化出父类的,而接口是不知道子类的情况下预先定义的(依赖倒转)ps:参考<<大话设计模式>>总结而出.可能理解上有些出入 仅供参考
1.类的继承类似于家族的继承,类是单继承如同一个个只有一个亲生父亲,在程序中子类会继承父类所有信息,不过对于构造函数和私有数据来说
子类不可以访问,但并不说没有继承
2.借口是类家族外部的功能定义,不如说实现了某某借口意思是他将要拥有此接口的功能,这好比你想学习编程必须找个师傅,这个师傅就是一个接口,他不同于
父类,你可以有很多师傅,不如说你想学开车,你想学厨师 你必须拜师来学习,也就是说你必须实现你师傅的这些功能不同的接口
3. 父亲只能有一个,但师傅可以有多个。
我想你应该明白了,理解不了程序,你就理解生活!
--xuejianxinokok @tianjin