首先还是说一下和主题无关的东西吧。
2018年7月10日到7月14日,这是我在软帝学习的第一个星期,我这个人有比较严重的选择困难症,刚开始我是报名了的,但是后来因为我比较懒,想着报了这个班不是给自己找麻烦吗?我就取消了报名,直到快要去实习了,我再三思索之后才又报了名。至于为什么重新报名,可能是因为怕大学毕业了之后找不到好工作吧。
第一个星期很快就过去了,至少现在看来,我这个选择是明智的,因为我真正意义上学会了大学里学了3到4遍的东西,哪怕这些知识很基础,对于我来说也全都是刚开始接触的新知识,说实话,我在这一个星期里面编的程序比我在大学3年里编的都要多。
这个星期的小总结:
第一个星期讲了一些Java的基本知识、流程控制和数组,主要以数组为主。
基本数据类型(简单类型)
-
整数型(byte-1字节、short-2字节、int-4字节、long-8字节)
-
浮点型(float-4字节、double-8字节)
-
字符型(char-2字节)
-
布尔型(boolean-1bits
循环类型
-
for循环
-
while循环
-
do...while循环
-
forEach循环(主要用于数组或者集合遍历操作,迭代)
-
递归(recursion)
-
-
continue:跳过循环语句中的一次循环
-
break:在循环语句中可以用于结束一层循环
-
return: 用于表示方法的结束,一旦执行到return,则方法结束;在同一个代码片段中return之后不允许执行任何其他代码
数组是用于存储一组相同数据类型的数据结构,数组是一种引用数据类型。
数组的声明语法:
数据类型[] 变量名;
横向关系
-
依赖关系
-
关联关系
-
组合关系
-
聚合关系
纵向关系
-
继承关系
-
实现关系
继承是面向对象语言的三大特征之一,通过继承关系可以实现方法和属性的复用,从而提高类的可扩展性,子类继承父类之后,可以不受限制的使用父类中的非私有(private)元素继承语法
在某些情况下父类中的方法不一定能够完全满足子类需求,此时,子类中可以通过对父类的方法覆盖从而完成另一种方法实现,这个操作就称之为方法重写(override)
-
所有的Java类都直接或者间接继承了Object,Object类中为子类提供了一些用于重写的方法(比如,toString、equals、hashcode等),以实现子类对象之间的操作
==是一个比较运算符,在进行基本数据类型比较时,比较的是两个数据的值,在比较两个引用时,比较的是两个对象的内存地址;equals是Object类的一个方法,默认的实现使用的是==,可以在子类中通过对equals方法重写以达到自定义的比较目的;
在java中每一个类都存在一个this对象,该this对象表示为当前类的一个实例,可以在类的内部通过this调用当前类自身的其他构造器,方法以及属性,this关键字只允许出现在普通方法(实例方法)和构造器中;