第06次 预习、实验与作业:接口与嵌套类

一.课前问题列表

1.1回顾以前数据结构的知识,所有排序算法的基本操作是什么?这个基本操作和Comparable接口又有什么关系?这个基本操作得到的结果有哪几种?

1)所有排序算法的基本操作是比较和交换。

2)Comparable接口定义了元素之间的比较规则,从而使得排序算法能够通过比较来确定元素的相对顺序,并通过交换操作来实现排序。其中compareTo()方法是用于定义两个对象之间的大小关系的。在排序算法中,通过调用compareTo()方法来比较两个元素的大小,然后根据比较结果决定是否进行交换操作,以达到排序的目的。

3)得到的结果有大于、小于、等于三种。

1.2详细描述:为什么某个类实现了Comparable接口,就可以对该类的集合(如数组、ArrayList)使用Arrays.sort进行排序?Comparator接口相较于Comparable接口有什么优势?

1)实现了Comparable接口的类可以使用Arrays.sort()进行排序,因为该方法内部会调用对象的compareTo()方法进行比较大小来进行排序。

2)Comparator接口相较于Comparable接口的优势是可以在排序时灵活地指定比较规则,而不需要修改被排序的对象本身。也就是说,使用Comparator接口可以实现针对同一类的不同排序方式,来灵活实现自己的目的

1.3你觉得为什么有了抽象类还需要接口?接口相较于继承有什么不同,体现了什么关系?

1)抽象类和接口都是Java中用于实现多态的机制。它们最主要的区别是抽象类可以包含非抽象方法及属性,而接口只能包含抽象方法及常量。此外,一个类只能继承一个抽象类,但可以实现多个接口。接口更加灵活,不直接参与类的继承关系。这使得在设计程序时更能体现"高内聚、低耦合"的思想,进一步提高代码的可重用性和灵活性。

2)继承是一种"is-a"关系,表示子类是父类的一种特殊实现。而接口则更多地表示类之间的"can-do"关系,也就是类具有一些共同的操作或功能。通过使用接口,可以使不同的类具有相同的核心功能,这样可以使得代码更加灵活和可扩展。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值