20144303 《Java程序设计》第三周学习总结

教材学习内容总结

•对象是存在的具体实体,具有明确的状态和行为,类是具有相同属性和行为的一组对象的集合,用于组合各个对象所共有操作和属性的一种机制
•类与对象的关系:要产生对象必须先定义类,类是对象的设计图,对象是类的实例
•类在定义时要使用关键词class,而具体对象就是对应java在堆内存中用new建立的实体
•无论System.arraycopy()还是Arrays.copyof(),用在类类型声明的数组时,都是执行浅层复制。
•为了让Java 基本类型像对象一样操作,可以使用Long、Integer、Double、Float、Boolean、Byte等类来打包基本类型,这些类就是所谓的打包器。
•在Java中,字符串是java.lang.String实例,用来打包字符数组。
•在Java中,以""包括的字符串,只要内容相同(序列、大小写相同),无论在代码中出现几次,JVM都只会建立一个String实例。
•在Java中可以使用System.arraycopy()的方法来进行数组值的复制,它会使用原生方式复制每个索引元素,比使用循环更快。在JDK6以上的版本中,还有个更方便的Arrays.copyOf()的方法,能够帮你建立新的数组。无论System.arraycopy()还是Arrays.copyOf(),用在类类型声明的数组时,都是执行浅层复制
•封装(Encapsulation)实际上使用方法将类的数据隐藏起来,控制用户对类的修改和访问数据的程度,隐藏对象细节,将对象当作黑箱进行操作。
•如果没有声明权限修饰的成员,只有在相同包的类程序代码中才可以直接存取,也就是“包范围权限”。如果想在其他包的类程序代码中存取某包的类或对象成员,则该类或对象成员必须是公开成员,在Java中要使用public加以声明。
•如果定义类时,没有撰写任何构造函数,编译程序会自动加入一个无参数、内容为空的构造函数,称为默认构造函数。可以定义多个构造函数,只要参数类型或个数不同,这称为重载构造函数。
•this代表其所在函数所属对象的引用,简而言之就是this代本类对象的引用,当在函数内需要用到调用该函数的对象时,我们就可以使用this。
•this()代表了调用另一个构造函数,至于调用哪个构造函数,则视调用this()时给的自变量类型与个数而定。
•static用于修饰成员(成员变量和成员函数),被声明为static的成员,不会让个别对象拥有,而是属于类。
•在static方法中不能出现this关键字,static方法中不能用非static数据或方法成员。

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

这两章的内容有很多难以区分,比如类与对象、面向对象和面向过程。有很多比较难理解,比如自动装箱、装封等等。只能通过反复看书,多动手实践解决这些问题。不理解的多看几遍,比较难区分的就概括出他们各自的特点。

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

这段代码中的int number = (int)(Math.random()10);,不懂什么意思。
解决过程:通过百度,这段代码中,Math是数学类,random()是Math类中的一个方法,random本身只产生(0~1)之间的小数,random()
10 意思是产生0~10之间的小数 ,int(random()*10)的意思是强制取整,把小数部分去掉只去整数部分,所以就变成了产生0~9之间的整数

其他(感悟、思考等,可选)

相比前几周的学习,本周的学习量加大了不少,难度也有所提高,不再像是之前简单的看看概念,读懂代码就可以了。对于有些代码,还是得自己动手敲一遍才能更深刻的理解掌握,才能发现问题并解决问题。

代码托管截图:

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 20/20 1/1 5/5
第二周 50/70 1/2 7/12
第三周 300/370 1/3 12/24

参考资料

最新文章

  1. Java为什么会引入及如何使用Unsafe
  2. windows安装pip 和easy_install
  3. DDoS攻防战(一):概述
  4. UISegmentedControl 分段器加载不同的viewcontroller
  5. Binary image
  6. Wpf中MediaElement循环播放
  7. 影响布局的inline-block的空白符的问题
  8. MYSQL知识点
  9. PHP程序猿必须学习的第二课——站点安全问题预防
  10. Archive for required library: ‘WebContent/WEB-INF/lib/xxx.jar cannot&n
  11. WinForm实现类似QQ停靠,显示隐藏过程添加特效效果
  12. 【百度地图API】如何激发手机的高分辨率
  13. AsyncTask的新认识
  14. CSS 效果汇总
  15. CSS动画属性性能详细介绍
  16. 鸟哥Linux私房菜基础学习篇学习笔记3
  17. ubuntu下cannot find lib....so.x 寻找动态链接库
  18. [java 2019-04-09] 代码生成word文档中的表格嵌套问题
  19. 初学HTML-8
  20. javaweb中为mysql的curd多个值的语句

热门文章

  1. java递归构建菜单树
  2. Every write operation executed on a document, deletes included
  3. 虚拟网卡 TUN/TAP 驱动程序设计原理
  4. python学习笔记(二)— 字典(Dictionary)
  5. How many---hdu2609(最小表示)
  6. access join形式删除数据
  7. Elasticsearch提示low disk watermark [85%] exceeded on [UTyrLH40Q9uIzHzX-yMFXg][Sonofelice][/Users/baidu/Documents/work/soft/data/nodes/0] free: 15.2gb[13.4%], replicas will not be assigned to this node
  8. Python中的高级数据结构(转)
  9. JSP学习(第二课)
  10. SQL事务回滚 写法(转)