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

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

1、学习考核方式,理解成绩构成

  1. 首先是100分的构成,主要分为周考的总计60,实验的15分,团队项目(博客报告和课堂展现)25分。
  2. 其次是扣分项目,大概分为课堂表现、做业完成,若是态度端正的话,是不容易扣分的。
  3. 最后是加分项目,加分项目有很是多的种类,只要是积极学习均可以得到加分,好比积极写博客、极提出或回答问题,总之加分和减分关键在于态度,有一个好的态度这10分仍是很容易获得的。html

  4. 要特别提出的一点是待及格学生的管理办法,这一点十分新颖,这样的管理办法很好的避免了平时悠闲考前加急的现象,能让咱们把功夫下在日常。我很是支持,可是仍是不但愿本身成为这里的一员。java

2、学习课前准备,掌握学习方法

  1. 课前准备:老师所提的前四个要求,咱们在上学期期末就应该都作到了。
  2. 学习方法:积极主动敲代码,使用JUnit学习Java这篇文章让我告诉了我一个很是不错的实践代码的方法,就是敲书上的代码,从我C语言的学习经从来看,学习编程实践真的必不可少,而书的确是一个很是方便的实践工具;经过学姐学长们整理的问题博客学习,也是一个很好的办法,可让我少走许多弯路,避免犯一样的错误;后面的文章比较有趣的是最绿色最高效,用win+r启动经常使用程序和文档让我很好的利用起了win+r组合键。

3、学习教材1、二章

第一章

Java平台

  1. java最先叫作oak,生日公认是1995.5.23。
  2. java SE分为:JVM(虚拟机)、JRE(执行环境)、JDK(工具,包括JRE)、Java语言
  3. 其余的Java平台有:庞大的Java EE、小型的Java ME,有不一样的适用方向。
  4. JCP委员会保持了Java的跨平台优点
  5. 学习Java的一条路径:
  • 深刻了解JVM、JRE、JDK;
  • 理解封装、继承、多态;掌握经常使用Java SE API;(以上三种后续应该有更深刻的了解)
  • 学习容器观念:书上的说法我仍是没有理解,因而在这篇博客中Java 容器的概念我获得的更形象的解释,更能理解林老师的解释:linux

    Web容器是Servlet/JSP惟一认识的HTTP服务器,是使用Java撰写的应用程序,运行于JVM之上。git

  • 研究原始码项目
  • 学习设计模式与重构:这一点感受相似于算法,就是根据经验找到合理的编程算法。
  • 熟悉相关开发工具:我选择跟着课原本使用NetBeans IDE。算法

JVM/JRE/JDK

  1. JVM详解:实质上是操做系统,充当翻译官的角色,将 .java 文件翻译成.class使Java程序完成跨平台(JVM的可执行文件就是 .class文件)
  2. 区分JRE与JDK:JDK包括了Java程序语言、工具程序与JRE,JRE则包括了部署技术、Java SE API与JVM。

JAVA SE的组成
3.安装JDK:编程

JDK 安装完成

第二章

从Hello World开始

  1. 一个简单的Hello World程序分为如下几步:
  • 定义类:定义关键词(public class)+类名称(HelloWorld)
  • 定义区块,用“{}”
  • 定义main(),也就是程序的进入点
  • 撰写描述
    大致上与C语言的模式相似。
    2.path:环境变量,分为用户环境变量、系统环境变量(优先执行),计算机会在输入指令后沿着这些path寻找可执行文件。
    未设置path成功编译

    设置完成path并成功编译

    3.classpath:就是JVM系统的path,搜索的可执行文件为 .class 文件
    也可用“.”来表示先搜索所在文件夹,如 “.;(某地址)”

搜索.jar文件时能够直接描述文件地址+文件名来找。若是编译时须要使用其余类连接库,必须指定classpath。
windows

管理原始码与位码文档

  1. 将.class文件和.java文件分开管理:用-source指定从某文件夹找源文件,而-d指定了编译完成的位码存放文件夹
  2. 使用package管理类:
    表示Console类将放在cc.openhome.util类下,也就是说Console这个类将放在cc.openhoome.util包(package)

IDE的使用

  1. 选择了NetBeansIDE
    简单的HelloWorld程序
    设计模式

  2. -version变量能够显示执行的JRE版本;-verbose变量能够确认位码文档的版本号。服务器

在windows下安装git并托管代码

主要参考了胡东晖学长的博客使用git推送代码到开源中国以及IDEA环境下使用gitjvm

成功安装git

成功托管代码

码云界面

一些问题

  1. 仍是但愿能听听老师对容器的讲解。
  2. 我比较困惑的一点就是咱们的参考书中所有使用的是Windows系统在学习java,而老师推荐的是linux系统,若是是自主学习的话仍是跟着书本上来学要方便一些,可是不知道用Windows学习会不会比Linux学习效果差?
  3. 对于“类”这个定义不理解。
  4. 为何double类型的数值进行运算得不到“数学上精确”的结果?
  5. 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
  6. 为何不能够说实现接口的子类从接口那里继承了常量和方法?
  7. 何为多态的扩拓展性?
  8. 受检异常是怎么产生反作用的?
  9. 若是对象没法操做Comparable怎么办?
  10. 字符处理装饰器有什么做用?
  11. 因为线程没法取得锁定时为何会形成阻断?
  12. 接口的定义,默认方法和静态方法有什么区别?
  13. 应该怎么理解API?
  14. 为何调用channel的write方法以前必须调用buffer的flip方法?
  15. java如何实现国际化?
  16. 用户没法提供 JDBC URL、名称、密码时,该如何取得connection
  17. 静态、动态代理的区别
  18. 如何实例化enum。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 33/33 1/1 18/18
  • 附上脚本运行图(此图为第二周运行脚本结果,第一周为33行)

参考资料

相关文章
相关标签/搜索