黑马程序员技术交流社区
标题:
抽象类和接口的一些理解,正确吗?
[打印本页]
作者:
梁健1
时间:
2012-9-19 11:45
标题:
抽象类和接口的一些理解,正确吗?
抽象类就像是某一类事物,比如人的共同的一些特性,说话,唱歌,跳舞,开车,姓名等;又比如一条狗,它可以狗叫,四条腿走路,咬人等;我的意思是说,抽象类就是对某一类事物的特性的概要描述,它针对的是“一”。
而接口是定义的一些某些事物的共同特性,比如吃饭,睡觉,这些不论是人还是狗都能实现这两种方法,它针对的是“多”。
这样理解正确吗?
作者:
李后量
时间:
2012-9-19 12:30
参考这篇帖子,
点击
,以后发帖之前先搜索下看有没有,如果没有的话再发
作者:
刘长路
时间:
2012-9-19 12:33
这样理解应该不会错,class是一类事物的共同特征,inrterface是多类事物的共同特征,但是二者之间的区别挺多的,需要慢慢理解,并且只有在不断地使用之中才能加深对二者的理解啊,具体的区别我总结了一下,希望能给到你帮助
抽象类是一类事物的高度聚合。
接口是定义的行为规范。
抽象类中的方法可以部分抽象。
接口中的方法必须全部抽象。
抽象类中的方法可以实现也可以不实现。
接口中的方法一定不能去实现。
抽象类只能单继承。
接口可以实现多继承。
抽象类中,新增一个方法的话,继承类中可以不用作任何处理。
接口来说,则需要修改继承类,提供新定义的方法。
不能创建抽象类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。
接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。
接口不光可以作用于引用类型,也可以作用于值类型。而抽象类来说,只能作用于引用类型。
(若有异议,希望能够共同探讨)
作者:
王荟越
时间:
2012-9-19 16:13
定义时,abstract抽象类,interface接口
我们只能说一个类 继承 抽象类。。一个类 实现 哪个接口
抽象类不一定只有抽象方法,还可以有普通方法,但是抽象类一定有抽象方法
接口可以看作是极端化的抽象类,接口
1>属性必须是常量(static final),且为public
2>方法全是抽象方法,且为public
3>无构造方法
作者:
霍永刚
时间:
2012-9-20 09:40
个人总结抽象类和接口的区别:
抽象类的成员可以具有访问级别,而接口的成员全部public级别
抽象类可以包含字段,而接口不可以,
抽象类可以继承接口,而接口不能继承抽象类
抽象类的成员可以具有具体实现,而接口不行
抽象的子类可以选择性实现其基类的抽象方法,而接口的子类必须实现
作者:
梁健1
时间:
2012-9-20 11:04
谢谢大家,说的很详细,非常感谢!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2