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


教材学习内容总结

本周学习内容的主要是:
一、浏览教材,根据自己的理解每章提出一个问题。
在浏览教材后,我提出了以下问题:

  1. 我们是否可以把API理解为已经标准化的“函数”?存于库中并在我们需要的时候进行调用?
  2. 过多的使用import声明会不会造成编译混乱?
  3. 类型转换从理论上来说并不安全,为什么编译程序会允许这样的编译方式,为什么不专门设置一种函数,让所有类型转换都通过这种函数进行提供安全性保证呢?
  4. 为什么不同的数据类型会对应但意义上相同但形式上不同的初始值?
  5. 如何用一种生活中的例子在形容封装?封装应该遵循什么样的思想?
  6. 重新定义细节是否可以理解为对父类一种变相的改变或者说是引导?
  7. “继承”和“操作接口”关系的不同是为了什么?
  8. 错误信息是按照什么标准(格式)呈现出来的?这种标准是对于所有JAVA程序都是一样的吗?其他语言的错误信息呢?
  9. 数据结构对于对象的搜索、排序这样的行为是否会有一定的影响?
  10. 如何理解串流?
  11. 资源在多线程下使用是如何决定使用的先后的?
  12. 如果Lambda表达式过多会产生什么样的影响?
  13. 为什么Java会提供多种时间处理API?为什么不统一使用一种标准化的API?
  14. NIO是如何提高输入输出的处理效率的?
  15. 怎样理解调用logger实例log()方法?
  16. 取得connection操作对象为什么还需要提供JDBC URL?
  17. 反射是否可以理解为通过外部获得内部信息?
  18. 如何理解自定义泛型可以仅定义在方法?
    二、认真学习第一第二章

第一章的重点主要是理解JVM、JRE与JDK和JAVA语言的定义和之间的联系。简单的来说JVM是Java虚拟机,JRE是环境,JDK是编译工具,这是三者是相辅相成的,而理解了这三者的关系有利于后面的学习。

其次是理解Java SEAPI构架。教材中的解释是各式链接库(library)。我通过百度了解到它是一种类似于标准化的函数的存在,可以为我们写程序提供便利性,并且应用广泛。

最后是安装JDK,我是从官网下载的,下载速度十分缓慢,以至于我装完git并且上传了一个.c文件都没有下好。安装过程没有想象中的那么难,按部就班按照往事的教程就可以了,但是是否理解命令行中每一条命令又是另一回事了。其中一些比较好理解,如之前学过的复制粘贴文件,解压tar文件,通过cd移动工作路径等等,但是还是有一些难以一时间全部理解的命令,希望通过今后的学习了解一下。

第二章的重点是了解PATH这种概念,学会设置PATH、CLASSPATH、SOURCEPATH。我把“PATH”理解为一种路径,是用于引导程序寻找可执行文件的“路”。

其次是定义类这个问题,通过书上的详细理解了一下。

最后是管理原始码和位码文档,这个我感觉就涉及到一种“干净整洁”的标准,往往干净整洁的卫生环境能让人工作效率提高,而干净整洁的文档管理也可以提高人的工作效率。包括老师让我们建立自己的git的时候,在本地建立如“bin”“src”等文档存放不同的文件一样,也是一种良好的管理习惯。

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

主要有一个问题,就是安装JAVA的过程中发现主要有两种安装思路,一种是通过sudo apt-set安装,一种是直接在网上下载tar安装包,进行解压编译安装,我两种都试了一下,都可以完成安装。

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

在准备进行代码托管测试的时候,由于那时候Java还没下好,就编了个.c的hallo java文件,结果在vim编完保存时遇到一个问题:

开始是以为没有root权限,尝试用了sudo来创建.c文件结果还是不行,但其实问题很简单,我打错了创建地址,因为我用的是相对路径,而当时工作路径并不是和我创建的文件在一个层级上所以导致了这个问题。
后面安装git的过程比较顺利,最终成功的git add了:

代码托管


这是第二周补的。并没有按照老师的要求来,很抱歉。
代码确实只有HELLO WORLD了,因为当时还在折腾git……以后继续努力!

IDEA的安装

开始的时候是按照老师给的博客来操作的,申请一个免费的正版,但是首先没有edu邮箱,去网络中心激活邮箱后,发现收不到验证邮件,我试着用QQ邮箱发了一封测试邮件到我的edu邮箱,但是发现收不到,并且被退回了,所以申请免费版的方法失败了。
然后我就在网上下载了破解版先用着:


运行idea.sh就可以进入了:

上周考试错题总结

上周无考试

感悟

其实对于快速浏览书本并提出问题这种学习方法一直略有耳闻,这次亲身体验确实是非常不适应,主要是不知道该如何问,提什么样的问题,太深的不理解,太浅的没意义,确实是一个有挑战的方法,但有是很有效果的,至少让我对于全书有了一个大概的印象,对于今后的学习有了一定的方向。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 4/200 1/2 10/20
第二周 0/500 0/4 0/38
第三周 0/1000 0/7 0/60
第四周 0/1300 0/9 0/90

参考资料

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

  1. 201521044152<java程序设计>第一周学习总结

    本周学习总结 java开发时间虽然很短,但是发展迅速,已成为现在非常流行的一门语言,很开心能有幸学习java.第一周学习了java的平台,运行环境jdk以及jrt等等新名词,还了解了eclipse的基 ...

  2. 201621123007 Java程序设计第一周 学习总结

    第一周-Java基本概念 201621123007 <Java程序设计> 第一周学习总结 1. 本周学习总结 java是面向对象的一类语言,三大特征:封装性,继承性,多态性. jdk jr ...

  3. 20145304 刘钦令 Java程序设计第一周学习总结

    20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...

  4. 201871010106-丁宣元 《面向对象程序设计(java)》第一周学习总结

    丁宣元 <面向对象程序设计(java)>第一周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...

  5. 扎西平措 201571030332《面向对象程序设计 Java 》第一周学习总结

    <面向对象程序设计(java)>第一周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 ...

  6. 201871010135 张玉晶 《面向对象程序设计(java)》 第一周学习总结

    项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/wyt0455820/ ...

  7. 杨其菊201771010134《面向对象程序设计(java)》第一周学习总结

    第一部分:课程准备部分 填写课程学习 平台注册账号, 平台名称 注册账号 博客园:www.cnblogs.com 安迪儿 程序设计评测:https://pintia.cn/ 迷路的麋鹿回不来家了 代码 ...

  8. 201871010124 王生涛《面向对象程序设计JAVA》第一周学习总结

    项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://edu.cnblogs.com/campus/xbsf/ ...

  9. 201871010126 王亚涛 《面向对象程序设计(java)》 第一周学习总结

    项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/wyt0455820/ ...

  10. 201871010132-张潇潇《面向对象程序设计(java)》第一周学习总结

    面向对象程序设计(Java) 博文正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cn ...

随机推荐

  1. scala当中的Actor并发编程

    注:Scala Actor是scala 2.10.x版本及以前版本的Actor. Scala在2.11.x版本中将Akka加入其中,作为其默认的Actor,老版本的Actor已经废弃. 1.什么是Sc ...

  2. 随手练——HDU-2037 、P-2920 时间安排(贪心)

    普通时间安排 HDU-2037 :http://acm.hdu.edu.cn/showproblem.php?pid=2037 选取结束时间早的策略. #include <iostream> ...

  3. 随手练——POJ - 2676 数独 (回溯法)

    POJ - 2676 : http://poj.org/problem?id=2676: 解题思想 (大力出奇迹): 1. 依次在空格里面填上“1~9”,并检查这个数字是否合法(其所在的行.列,以及3 ...

  4. 《metasploit渗透测试魔鬼训练营》学习笔记第七章--社会工程学

    五.社工工程学     5.1社会工程系框架          5.1.1信息搜集                 maltego是一个高度自动化的信息搜集工具,集成在BT5中,如果国内网络环境使用时 ...

  5. [Python 网络编程] TCP、简单socket模拟ssh (一)

    OSI七层模型(Open System Interconnection,开放式系统互联) 应用层 网络进程访问应用层: 为应用程序进程(例如:电子邮件.文件传输和终端仿真)提供网络服务: 提供用户身份 ...

  6. 用Maven创建动态Web工程

    前言 maven是一个强大的工具.如果你知道如何使用它,你只要付出最小的努力,但可以获得最大的回报.一般来说,maven可以帮助你管理项目,包括管理依赖库.构建工程等. 下面将通过一个简单的教程来描述 ...

  7. 获取某商家当前每个月销量sql语句。

    用两个mysql函数 FROM_UNIXTIME( ordertime )将日期格式转换成时间戳 month( FROM_UNIXTIME( ordertime ) ) 获取当前日期的月 select ...

  8. 深入理解Java虚拟机(一) 运行时数据区划分

    前言:从我学Java的第一天开始,我的大学老师就告诉我 Java语言相比C.C++的语言有一个非常强大的功能,那就是自动内存管理:我们用Java编码时不需要申请或释放内存等,这些工作全部交由我们的Ja ...

  9. Java解析Excel之应用Reflection等技术实现动态读取

    目录树 背景 技术选型 问题分析 技术要点及难点分析 源码分析 测试用例 背景 Tip:因为产品提的需求我都开发完了,进行了项目提测:前天老大走过来说:你用spring-boot开发一个解析Excel ...

  10. XIB

    Xib加载的几种方法 - 简书 一天一点xib_10说说原理.优化方面的东西吧 - 简书 自定义View的封装和xib文件的使用详解|xiaoyou's blog 纯代码封装自定义View和XIB封装 ...