自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 Lecture 11 - Inheritance IV Iterators Object Methods

但是我们并没有写出迭代器,也没有给出hasNext和next的method,我们需要完善代码。子类就声明一下,确保java认为子类里有能迭代的方法。这节课主要就是在搭建ArratSet,完整代码如下。左右两种遍历方式一样。

2024-11-17 17:23:48 159

原创 Lecture 10 - Inheritance III Subtype Polymorphism Comparators Comparable 笔记

改进2:把NameComparator 设置成static,这样就不需要一个具体的实例变量去接受这个方法了,如果把NameComparator改成私有的,我们需要再创个方法去访问它,不让外部条件直接访问原始类。值得注意的是,这些都是比较器,并不属于Dog,可以看一下箭头的指向,并且比较器之间是没有关系的。但是,这个方法不通用,只有可以进行OurComparable的才能比较求最大值,这很不通用。注意,这里f是个object,我们需要对象内部的方法,所以我们使用关键词apply。于是求最大值的方法也在改变。

2024-11-17 12:47:08 530

原创 cs61b lec9 Inheritance II Extends Casting Higher Order Functions

(子类无法调用父类中private的量)但需要注意:构造器(也就是决定RotatingSLList 的结构的那一个构造,它的名字必须和类的名字相同)没有被继承,也就是说子类和父类的结构可以不一样,并且RotatingSLList中新创子类独有的method并没有覆盖父类中的method。如果说VerboseDog extends Dog,这是会出现的错误,它调用bark时,又在调用父类中的barkmany,再接着调用父类的bark,然后就死循环了。当一个类继承另一个类(非接口)时,用extends关键词。

2024-11-15 14:59:17 1733

原创 cs61b lec8 Inheritance, Implements(继承 实现) 笔记

1.遍历求字符串长度最大值 ,复杂度均为O(n),但是sllist需要从头开始访问(单向)复杂度O1~On,alist可以直接根据下标进行访问,为O12.java允许method的参数不同但是名字相同,它们的功能基本一样。这样就是overload。但有很大缺陷,就很可能导致你在其中一个函数进行了修改,但是另一个版本的忘了修改,使得method更难维护。3.综上所述我们想要引入一通用的方法,使得list都能执行一套模版。

2024-11-14 20:38:34 1261

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除