持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第4天,点击查看活动详情
顺序表(一)
思考1 构造函数作用是什么?
首先构造函数名与类名一样,无返回值,可多个。我在前几天敲代码时没有出现构造函数,其实在未定义构造函数时会有一个缺省无参构造函数。其构造函数最大的作用是:在创建对象时(new)初始化对象
思考2 Object类
Object类是所有类的超类(一般我们创建的类都是隐式继承),所有类都可以使用Object类中的成员方法和变量,也可以重写其中的方法,例如今天的代码就重写了toString.若不重写toString方法,则会返回类名+hash值
//Object类中的toString方法
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
链表
1 成员内部类
在c语言中,对链表的数据结构是用结构体来表示,在java中使用内部类来表示链表结构体,如文章中的Node类可以访问外部类中所有的成员变量和成员方法。(除此外还有局部,静态,匿名内部类)
2.链表的插入和删除
用c语言来表示链表的插入(s)):
tempNewNode->next = tempNode->next;
tempNode->next = tempNewNode
//java
tempNewNode.next = tempNode.next;
tempNode.next = tempNewNode;
删除:
tempNode = tempNode->next->next;
free(tempDeleteNode);
//java
tempNode.next = tempNode.next.next;
从以上的对比发现,java实现链表主要采用的是引用对象。关于链表的基本操作,因为java的util类中有链表自带的方法,很少会去敲这些代码,在写后感触很深。如链表:在c和java中链表表示不一样,但是本质的逻辑操作都是一样的,关键在于如何定义这个链表结构体。
总结:
-
逐步建立面向对象的思想 ,理解构造函数。
-
顺序表,链表的查找插入删除 在 java实现过程中结合条件,分支语句以及常用的关键字的使用。
3.在写程序时,要对代码进行保护,考虑到可能出现的非法操作,越界等问题