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/340 1/3 9/30
  • 计划学习时间:9小时

  • 实际学习时间:9小时

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

参考资料

20155228 2016-2017-2 《Java程序设计》第3周学习总结的更多相关文章

  1. 20155334 2016-2017-2 《Java程序设计》第九周学习总结

    20155334 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章:整合数据库 16.1 JDBC入门 JDBC(Java DataBase Conn ...

  2. 20155321 2016-2017-2 《Java程序设计》第九周学习总结

    20155321 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 厂商在实现JDBC驱动程序时,依方式可将驱动程序分为四种类型: JDBC-OD ...

  3. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  4. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  5. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  6. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  7. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  8. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  9. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  10. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

随机推荐

  1. java之反射的基本介绍

    什么是反射 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法:这种动态获取的以及动态调用对象的方法的功能称为Java的反射 ...

  2. python摸爬滚打之day010----函数进阶

    1.函数动态传参 *args : 将所有的位置参数打包成一个元组的形式. **kwargs : 将所有的关键字参数打包成一个字典的形式. 形参的接收顺序:    位置参数 > *args > ...

  3. Automation服务器不能创建对象(金税盘)

    1. 安装防伪开票组件接口软件: 2. 把接口的注册文件放到%防伪开票系统的安装目录% \BIN下 3. 把%防伪开票系统的安装目录%\bin下的TaxCardX.dll文件复制至 c:\window ...

  4. Scala笔记

    定义包 package com.runoob { class HelloWorld } 引用包 import java.awt.Color // 引入Color import java.awt._ / ...

  5. HSSF与XSSF导出excel文档

    Apache POI Apache POI 是用Java编写的免费开源的跨平台的 Java API,它可以创建和维护操作各种符合Office Open XML(OOXML)标准和微软的OLE 2复合文 ...

  6. 异步fifo的Verilog实现

     一.分析 由于是异步FIFO的设计,读写时钟不一样,在产生读空信号和写满信号时,会涉及到跨时钟域的问题,如何解决? 跨时钟域的问题:由于读指针是属于读时钟域的,写指针是属于写时钟域的,而异步FIFO ...

  7. CentOS 7.2编译安装nginx1.10.3+MySQL5.5.38+PHP5.5.38

    1.关闭firewallad 关闭防火墙 systemctl stop firewalld.service 禁止firewall开机启动 systemctl disable firewalld.ser ...

  8. 别让Open Sans字体拖慢wordpress后台速度

    最近打开wordpress后台是不是很慢?国内GG登不上了?这两者有没什么直接的联系?没错,WordPress后台是自动加载的谷歌Open Sans字体,据说gg服务器已经迁移到阿嘛丽可,需要一些小手 ...

  9. AFNetWorking上传JSON串

    AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; manager.responseSerializer = [AFJSON ...

  10. react 首页加载loading

    首页加载loading,放在#root里面,代码如下: <!DOCTYPE html> <html lang="en"> <head> < ...