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

教材学习内容总结

1~18章的提问:

  • 第一章:怎样撰写Java才不会沦于死背API文件、使用“复制、粘贴”?
  • 第二章:“类”很抽象,“类”到底是什么,怎样定义?
  • 第三章:都说java语言的地位很高,那么在语法上有什么优于c语言的地方?
  • 第四章:装箱、打包、拆箱是未在c语言中接触的东西,有什么用?
  • 第五章:封装与类的联系?
  • 第六章:子类继承父类,那么可不可以将两者交换,会有错误的发生么?
  • 第七章:接口枚举常数与enum枚举常数的区别?
  • 第八章:程序中因错误而异常时,怎样保护好资源不受损,不丢失?
  • 第九章:Queue继承自Collection,当Queue操作失败时,会优先抛出异常,还是返回特定值?
  • 第十章:FeilInputStream和FeilOutputStrea不使用时没有用close()关闭会有什么影响?
  • 第十一章:停止、暂停、重启线程时最好需要自行操作,如果调用stop()、suspend()、resum()会带来什么问题?
  • 第十二章:有一些接口是单一的,那么相比于多借口,优劣有些什么?
  • 第十三章:系统所认知、认识的时间与人类认知、认识的时间有什么差距?
  • 第十四章:假若在缓冲Buffer容量时指定了的它容量,然后容量超出会带来什么影响?
  • 第十五章:为什么查看Date的API文件时不再建议使用Deprecated,,?
  • 第十六章:SQL语句中有些参数不同,其余子句皆同时,使用java.sql.PreparedStatement的好处?
  • 第十七章:在加载类时,有什么情况下会所有类加载器都找不到指定类?
  • 第十八章:Node可能会具有共变性或逆变性,两者有没有?

    第一章 Java平台概论

  • java是Sun公司的绿色项目。1995年5月23日是Java的的诞生日

    为什么需要Java程序设计语言?

    java已不仅是个程序语言,也代表了解决问题的平台,更代表了原厂、各个厂商、社群、开发者与用户沟通的成果。

java自诞生以来已经在IT市场存活了20年之余,java在编程语言的地位是不动摇的。

java是一门非常好铺垫的语言,在学习其他语言感觉非常轻松。

Java解决了什么问题?

  • Android应用
  • 金融服务行业的服务器应用程序,第三方交易应用程序
  • Java Web应用程序。许多政府、医疗、保险、教育、国防以及其他部门都有他们自己用Java写的Web应用程序。

    Java三大平台:

  • Java SE(Java 2 Platform Standard Edition)
  • Java EE(Java 2 Platform Enterprise Edition)
  • Java ME(Java 2 Platform Micro Edition)

    Java SE的四个主要部分是:JVM、JRE、JDK、Java语言

    学习Java API的重要性

  • API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
  • Java API在Java安全性模型方面也有贡献

    了解JCP与JSR、RI、TCK的关系

  • JSR必须经过JCP投票通过才能成为最终的标准文件
  • JSR成为最终文件后对其成果做出免费且开发原始码的参考实现,称为RI,由TCK作为技术兼容测试工具箱。

    JVM/JRE/JDK

  • JVM是Java程序唯一认识的操作系统,其可执行文件为.class文档,还负责Java程序的各种资源管理。
  • JDK包括了Java程序语言、工具程序与JRE,JRE则包括了部署技术、Java SE API与JVM。
  • JDK本身附的JRE称为Private JRE。只要安装JDK,一定就有Private JRE

    面向对象技术

  • 封装是将对象运行所需的资源封装在程序对象中——基本上,是方法和数据。对象是“公布其接口”。其他附加到这些接口上的对象不需要关心对象实现的方法即可使用这个对象。
  • 继承是面向对象软件技术当中的一个概念。继承可以使得子类具有父类的属性和方法或者重新定义、追加属性和方法等。
  • 多态是“多种状态”。在面向对象语言中,接口的多种不同的实现方式即为多态。

    只执行Java程序,不下载JDK可以吗?

    java中JDK是java development kit的简称,代表开发环境工具,包括编译源程序和运行及调试所需要的环境所需要的环境。

    第二章 从JDK到IDE

    从Hello World 开始

这周在安装jdk,git,idea上面花了很大的功夫,所以当在idea上运行出“hello world”的时候内心是无比的激动,这也算是正式进入学习java的道路了。

定义:

  • 定义类: 是用来定义类的关键词。
  • 定义区块:使用大括号“{”与“}”
  • 定义main()方法:Java程序执行的起点是main()方法;

规定main()的形式是:

public static viod main (String[] args)

  • Java的编译工具是javac
  • Java原始码扩展名为Java,经过编译程序翻译为扩展名为.class的位码。
我发现很多时候,我们写命令时,总会忘记在所在的路径下写,这时操作系统会依照PATH环境变量中设定的路径顺序,一次寻找各路径下sh有这个指令。

如需在JVM中执行某个可执行文件(.class),通过CLASSPATH指定该文件的路径信息,这样虚拟系统就会去寻找文档。

对比 PATH CLASSPATH
操作系统 windows JVM
可执行文件 .exe、.bat .class

-classoath的缩写形式:-cp

管理原始码与位码文档

分类小能手--package

类原始码具有四种管理

  • 原始码文档要放置在与package所定义名称层次相同的文件夹层级中;
  • package所定义名称与class所定义名称,会结合而成类的完全吻合名称;
  • 位码文档要放置在于package所定义名称层级相同的文件夹层级中;
  • 套在包间可以直接使用的类或方法必须声明为public

使用IDE

dist:封装了位码文档的JAR文档;
src:原始码文档,会自动根据package定义名称分类放置.

学习中的问题和解决过程

问题一:这是在安装windows的jdk后:

这个问题下个星期会解决,原因见文章“其他”

问题二:解压虚拟机上jdk的问题:

方案:下面这条指令是两条指令

tar -xzvf jdk-8u121-linux-x64.tar.gz; mv jdk-8u121 ~/jdk

我在解压时一起输入上去,所以一直失败。

问题三:在根目录命令./statistics时没有权限

方案:运行命令chmod +x statistics后再命令./statistic

代码托管

在托管代码时出现以下问题:认证失败

上网查之后建议我重新执行Git config命令配置用户名和邮箱:

但是在于码云连接时出现下列问题

所以,截至发博客前,这个问题尚未解决,我会近两天解决问题,将代码托管于码云上


周末时未解决托管代码的问题。现在是星期二,我将这个问题解决了,并且给出上周托管的代码及代码量的截图
上周错误的原因在于托管代码时我将开源中国的用户名弄错,导致在输入账户时出错,所以没能上传代码

  • 代码提交过程截图:

  • 代码量截图:

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

这周的学习感触最深就是在下载东西上,当时以为都要下载,所以我在虚拟机上下载的同时也在windows系统上下了。发现虚拟机jdk上解压时出错,没有得到解决。就去看windows版本,发现windows的jdk安装有误,一直无法解决,最终不得不在虚拟机上重来。但是在学习过程中发现,书上的内容是按照windows系统讲解的,所以很多时候与虚拟机有差别,所以我把windows上的jdk问题解决好后,会选择使用windows版本。

学习进度条

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

  • 实际学习时间:20小时

参考资料

20155229 2016-2007-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. Python2.7 - IMOOC - 3

    第三章 Python变量和数据类型 3-4.变量 变量名必须是大小写英文.数字和下划线(_)的组合,且不能用数字开头. 同一个变量可以反复赋值,而且可以是不同类型的变量,例如: a = 123 # a ...

  2. lvs安装文档

    安装lvs应用模块 1.安装依赖包: [root@client lvs]# yum -y install ipvs* 2.验证本机ip_vs模块是否加载 [root@client lvs]# -.el ...

  3. 英语的各种 n. adj. vt. vi. 等词性解释

    n. 名词 v. 动词(既可作及物动词,也可作不及物动词的就用这个表示) pron. 代词 adj. 形容词(后接名词) adv. 副词(修饰动词.形容词或其他副词) abbr. (这是一个缩写符号) ...

  4. 浅谈 JavaScript 中的继承模式

    最近在读一本设计模式的书,书中的开头部分就讲了一下 JavaScript 中的继承,阅读之后写下了这篇博客作为笔记.毕竟好记性不如烂笔头. JavaScript 是一门面向对象的语言,但是 ES6 之 ...

  5. win10 系统下获取系统版本号为6.2的问题

    近期赶时髦升级了win10,用着挺爽.但是某天在测试一个bug时发现要对win10做特殊处理,于是直接调用了GetVersionEx,并取出版本号进行判断,但是发现得到的版本竟然是6.2.当时就被雷到 ...

  6. MyBatis(1)-简单入门

    简介 什么是 MyBatis ? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.My ...

  7. 折腾一下WebSocket的ArrayBuffer传输方式

    前言   之前写WebSocket都是基于文本传输的,后来准备升级项目,于是打算尝试一下arraybuffer传输方式,由于是第一次使用javascript处理字符串转arraybuffer,不过真的 ...

  8. curl http code 0

    使用curl进行post请求后,接收status code ,结果返回的结果是0 ,但是请求返回的数据是正常的. 检查后发现是执行顺序问题: $response = [ 'statusCode' =& ...

  9. 安卓混合开发——原生Java和H5交互,保证你一看就懂!

    ** 在Android开发中,越来越多的商业项目使用了Android原生控件与WebView进行混合开发,当然不仅仅就是显示一个WebView那么简单,有时候还需要本地Java代码与HTML中的Jav ...

  10. NodeJS平台下的前后端文件共享

    一.前后端文件共享的需要背景——为什么需要共享? 项目基本JS/NodeJS全端开发,有部分代码前后端都需要用得到 有一些配置是在前后端都需要用得到的 区别其他开发平台,NodeJS平台下的前后端文件 ...