20145118 《Java程序设计》
第3周学习总结
教材学习内容总结
第四章开始接触到了Java的核心内容---对象这个概念,在这里为避免混淆,列举面向过程和面向对象的区别:
面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在整个解决问题的步骤中的行为。
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用。
重点概念:
1.类定义时使用class关键词,对象是类的实例,要产生对象必须先定义类。
2.对象与实例几乎是等义的名词。
3.只要有一个类定义,编译程序就会产生一个.class文档。
4.对象指定与相等性的区别!!重点区分。
在用于基本类型时,=是将值复制给变量,==是比较两个变量储存的值是否相同.
在操作对象时,=是用在指定参考名称参考某个对象,==是用在比较两个参考名称是否参考同一个对象,而equals才是比较两个对象中所包含的内容是否相等.
5.构造函数实现对象初始化流程的封装,封装的目的在于隐藏对象细节,将对象当作黑箱进行操作.
6.基本类型中的打包应用
7.this的使用方法:this代表其所在函数所属对象的引用,this代本类对象的引用,当在函数内需要用到调用该函数的对象时,我们就可以使用this。而 this()代表了调用另外一个构造函数。
上述代码是自己仿照书中例子写的this应用例子.
8.二维数组应用实例
9.定义类时如果没有构造某个函数,程序会自动生成一个默认构造函数,但该函数无参数且内容为空.
10.public类是公开类,在构造函数中声明它时,其他包就可以直接调用这个构造函数;在方法上声明它时,其他包的方法中就可以直接调用该方法.
11.在Java中,字符串本质时打包字符数组的对象,具有对象操作特性,但同时还有一些特别需要注意的性质,见下文代码调试.
教材学习中的问题和解决过程
在第四章的学习中,我在浮点数精确度的部分有些纠结,在判断运算结果时总会出错...Java中浮点数默认为double类型,且Java遵守IEEE 754浮点数运算规范,使用分数与指数来表示浮点数!!(即使程序中显示的是0.1,但实际内部表示为1\10!)
以后若想要得到”字面上的结果”,需要使用标准类java.math.BigDecimal
(标准API由许多类组成,可以直接取用以免去重新打造基础的需求,一般包名称为java开头的类,表示标准API提供的类.)
代码调试中的问题和解决过程
字符串应用实例:
其他(感悟、思考等,可选)
本周学习到的知识不像上周与C语言中的有许多重合,尤其是接触到了对象、类类型这些概念,在看书时我通过理解概念、阅读代码等方法花了不少时间才有了比较清晰的思路,但是至少有一点点进步是可以根据书上的代码做一些小的改动,得到自己的正确的代码,不至于无从下手.希望以后通过这样逐渐的积累我可以自己独立完成代码.
另外,我终于把git关联了~~感谢大神同学的助攻!截图如下:
下一步要做的就是熟悉常用的git命令了!
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 |
目标 | 5000行 | 20篇 | 200小时 |
|
第三周 | 120/100 | 1/1 | 9/10 | 敢于自己动手在源代码的基础上做些小小的改动 |
第二周 | 100/100 | 1/1 | 7/10 |
|
第一周 | 100/100 | 1/1 | 14/20 |
|
参考资料
-
l
-
l
...