您的位置:首页 > 编程语言 > Java开发

20155228 2016-2017-2 《Java程序设计》第3周学习总结

2017-03-12 16:04 381 查看

20155228 2016-2017-2 《Java程序设计》第3周学习总结

教材学习内容总结

认识对象

类与对象

类和对象的关系:类是对象的设计图,对象是类的实例

参考:将“名牌”指定到新建的对象上

定义值域成员:在新建的类中定义变量

构造函数:构造函数是与类名称同名的方法

在操作对象时,=是用来指定参考名称参考某个对象,==是用来比较两个参考名称是否参考同一个对象,!=是比较两个参考名称是否没有参考同一个对象。

基本类型打包器

如果要让基本类型像对象一样操作,可以使用Long、Lnteger、Double、Float、Boolean、Byte等类来打包,这些类就是所谓的打包器。

数组对象

数组复制不能直接将A指定等于B,而是需要使用特定的命令。

在Java中数组一旦确定长度就确定了,不能再修改了。

System.arraycopy();
Arrays.copyOf();

字符串对象

在Java中为了效率考虑,以引号包括的字符串,只要内容相同,无论在代码中出现几次,JVM都只会建立一个实例,并在字符串内维护。

在Java中,字符串对象一旦建立就无法更改对象中的任何内容,对象上没有任何办法可以改变字符串内容。

对象封装

何为封装

构造函数可以封装对象初始流程,构造函数是与类名称同名的方法,不用声明返回类型。

在类中定义方法可以封装对象操作流程。

private是用来封装私有数据防止用户直接存取,如果没有提供方法存取private成员,用户就不能存取,如果有提供方法,用户也只能按照方法定义的流程存取数据。

语法类细节

public权限修饰:可以用在类、方法、数据还有构造函数上,使得其他包的类可以直接使用。

关于构造函数:如果写了构造函数的话在新建对象时就需要通过构造函数流程,设定构造函数参数的值。

构造函数与重载:定义多个构造函数,参数类型或者个数不同,用一致的名称来调用类似功能的方法。

使用this:可以在构造函数中调用另一个已定义的构造函数。

static成员:被声明为static的成员,不会被个别对象拥有。通过类名称与点运算符来取得static成员。

不定长度自变量:使用不定长度自变量时,方法上声明的不定长度参数必须是参数列的最后一个。

教材学习中的问题和解决过程

关于装箱和自动装箱在细节上的差异:自动装箱是装箱的简化,不需要再按照一般的类类型新建对象使用new的模式新建对象。但是在自动装箱时,如果传入的值在定义的数值范围内,程序就会检查前面的缓存中有没有打包过相同的值,如有就不会再新建对象。



关于类类型建立数组:和基本类型建立数组时不赋值的话就用默认值不同,类类型在建立数组时不赋初值的话建立的实例个数就是0个。



代码调试中的问题和解决过程

课后练习选择题第十题:把题目中的代码敲进去发现编译错误。仔细检查发现在调用方法时的不应该是用返回值的名称,而应该是类名称.方法名称,但是编译还是错误。后来发现这是在用static的格式调用方法,所以方法定义时要加上static。



代码托管

代码量截图:



上周考试错题总结

题目:2.判断:教材P51,第8题,执行命令java –cp classes cc.openhome.Main和cd classes java cc.openhome.Main cd ..等价。(OK)

分析:这道题我试了一下的确是等价的。



题目:3.CH03 判断:Java中, 数字235的类型是int。(OK)

分析:教材P67:程序中写下一个整数时默认使用不超过int类型长度。

题目:6.CH03 填空:~0b1011的十进制值是(-12)

分析:计算机中数据以补码形式存储,补码运算就是逐位取反。1011的补码是1011取反为0100还原为1100所以是-12

学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行30篇400小时
第三周210/3401/39/30
计划学习时间:9小时

实际学习时间:9小时

改进情况:上周老师在博客中要求我加强练习,所以这周就多花了些时间写代码,并提高了上传代码的频率。

参考资料

Java学习笔记(第8版)

《Java学习笔记(第8版)》学习指导
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: