第三周学习总结
20145338《Java程序设计》第3周学习总结
教材学习内容总结
第四章 认识对象
要产生对象必须先定义类,类是对象的设计图,对象是类的实例。类定义时使用class关键词,建立实例要使用new关键词。以类名称声明的
变量,称为参考名称、参考变量或直接叫参考。
想在建立对象时,一并进行某个初始流程,像是指定数据成员值,则可以定义构造函数 构造函数是与类名称同名的方法,即构造函数的名称要与所在类的名称一致。
nextInt() 方法会看看标准输入中,有没有输入下一个字符串(以空格或换行分隔),有的话会尝试将之剖析为 int 类型, Scanner 对每个基本类型,都有相对应的 next xxx() 方法,如nextByte()、 nextFloat()、 nextBoolean()、 next()(以空格或换行分隔)、 nextLine()(以换行分隔)。
Java是使用分数与指数来表示浮点数,如果要求精确度,那要小心使用浮点数,别用 == 直接比较浮点数运算结果。使用 java.math.BigDecimal类得到想要的精确度。
=是用来指定参考名称参考某个对象,是用来比较两个参考名称是否参考同一对象。
如果要让基本类型对象一样操作,可以使用Long、Integer、Double、Float、Boolean、Byte等类来打包基本类型,这些类就是所谓的打包器。
数组在java中就是对象,索引由0开始,存取超出索引范围,就会抛出 ArrayIndexOutOfBoundsException错误。
System.arraycopy() 五个参数分别为来源数组、来源起始索引、目的数组、目的起始索引、复制长度。 Arrays.copyof(),建立新数组并进行复制。
在java中,字符串是java.lang.String 以“”包括的字符串,只有内容相同(序列、大小写相同),无论在程序代码中出现几次,JVM都只会建立一个String 实例,并在字符串池中维护(用“”写下的字符串称为字符串常量)。如果想比较字符串实际字符内容是否相同,不要使用,要使用equals()。
字符串对象一旦建立,就无法更改对象中的任何内容,但可以使用“+”来连接字符串(产生了新字符串对象)。使用javac指令没有指定-encoding选项时,会使用操作系统默认编码。
第五章 对象封装
构造函数实现对象初始化流程的封装。方法封装了操作对象的流程。java中还可以使用private封装对象私有数据成员。封装的目的主要是隐藏对象细节,将对象当做黑箱进行操作。
在java命名习惯中,方法名称首字母是小写,后面单词首字母大写;当定义取值的方法时,统一规定命名方式,以get开头,后加首字母大写的单词。
如果没有声明权限修饰的成员,只有在相同包的类程序代码中才可以直接存取。
创建对象时,数据成员就会初始化,如果没有指定初始值,则会使用默认值初始化。
封装目的 , 主要是隐藏对象细节,将对象当作黑箱进行操作。
this代表其所在函数所属对象的引用,简而言之就是this代本类对象的引用,当在函数内需要用到调用该函数的对象时,我们就可以使用this。 this()代表了调用另一个构造函数,至于调用哪个构造函数,则视调用this()时给的自变量类型与个数而定。注意:this()调用只能出现在构造函数的第一行。
static用于修饰成员(成员变量和成员函数),被声明为static的成员,不会让个别对象拥有,而是属于类。 在static方法中不能出现this关键字,static方法中不能用非static数据或方法成员。 import static语法是为了偷懒,但要注意名称冲突的问题。被声明为static的成员,是将类名称作为名称空间。
教材学习的问题与解决
由于浮点数误差的关系,如果要求精确度,那就要小心使用浮点数,而且别用==直接比较浮点数运算结果。
==是在比较两个名牌是否绑到同一对象上,equal是比较对象内容是否相同。
代码调试中的问题和解决过程
代码调试还没有遇到什么问题,因为都是抄书上的例题。
其他(感悟、思考等,可选)
越往后学习就会越吃力,四五章都是基础题 要努力搞懂。还是要多敲代码。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 100/100 | 2/2 | 20/20 | |
第二周 | 100/100 | 3/3 | 20/20 | |
第三周 | 200/200 | 4/4 | 20/20 |
posted on 2016-03-20 20:06 20145338索朗卓嘎 阅读(178) 评论(6) 编辑 收藏 举报