20155229 2016-2007-2 《Java程序设计》第一周学习总结
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程序设计》第一周学习总结的更多相关文章
- 201521044152<java程序设计>第一周学习总结
本周学习总结 java开发时间虽然很短,但是发展迅速,已成为现在非常流行的一门语言,很开心能有幸学习java.第一周学习了java的平台,运行环境jdk以及jrt等等新名词,还了解了eclipse的基 ...
- 201621123007 Java程序设计第一周 学习总结
第一周-Java基本概念 201621123007 <Java程序设计> 第一周学习总结 1. 本周学习总结 java是面向对象的一类语言,三大特征:封装性,继承性,多态性. jdk jr ...
- 20145304 刘钦令 Java程序设计第一周学习总结
20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第一周学习总结
丁宣元 <面向对象程序设计(java)>第一周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...
- 扎西平措 201571030332《面向对象程序设计 Java 》第一周学习总结
<面向对象程序设计(java)>第一周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 ...
- 201871010135 张玉晶 《面向对象程序设计(java)》 第一周学习总结
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/wyt0455820/ ...
- 杨其菊201771010134《面向对象程序设计(java)》第一周学习总结
第一部分:课程准备部分 填写课程学习 平台注册账号, 平台名称 注册账号 博客园:www.cnblogs.com 安迪儿 程序设计评测:https://pintia.cn/ 迷路的麋鹿回不来家了 代码 ...
- 201871010124 王生涛《面向对象程序设计JAVA》第一周学习总结
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://edu.cnblogs.com/campus/xbsf/ ...
- 201871010126 王亚涛 《面向对象程序设计(java)》 第一周学习总结
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/wyt0455820/ ...
- 201871010132-张潇潇《面向对象程序设计(java)》第一周学习总结
面向对象程序设计(Java) 博文正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cn ...
随机推荐
- Monster: half man, half beast and very scary.
Monster: half man, half beast and very scary. 怪物,半人半兽很吓人.
- 78、WebClient实现上传下载 System.Net、System.Uri类
高层类.使用简单.均支持异步版本.支持http,https,fpt,files等URI. 一.下载 方法: Stream= client.OpenRead(serverUri): 打开一个可读的流.对 ...
- 根据自增ID生成不重复序列号
网上看到一个例子,源地址:https://www.aliyun.com/jiaocheng/536419.html 借鉴修改一下 实现根据long类型的用户ID生成6位随机邀请码,并且根据邀请码能算出 ...
- 【Oracle123】向OracleDB导入*.csv文件数据
SQL*Loader Control File Reference https://docs.oracle.com/cd/B10501_01/server.920/a96652/ch05.htm Or ...
- multimap详讲
multimap和map的区别: 首先认识一下multimap和map的区别: 1> multimap不提供operator[ ]运算符.因为这个运算符的语义在同一个键可以保存多个 ...
- linux日志log查询常用命令
一般的log文件都是需要过滤 1.grep 过滤查找 查询ip 221.2.100.138的log grep '221.2.100.138' web.access.log grep 221.2.10 ...
- PHP+JQUERY+AJAX上传、裁剪图片(2)
<script type="text/javascript"> var imgCut = { imgOpt : { imgPrototypeId : 'imgProto ...
- Dubbo实践(十七)telnet
telnet的介绍可以参看<java网络编程3>中有一段介绍telnet,我们可以理解为,telnet命令是通过socket协议与服务器端通信.Dubbo提供了telnet命令去查看服务功 ...
- zabbix 表结构详情(基本)
zabbix表结构 1.acknowledges 记录告警的确认信息 2.actions 记录了当触发器触发时,需要采用的动作. mysql> desc actions; +---------- ...
- .Net Core应用程序发布时不同方式的差别
.Net Core的文档更新的真是快..每次看的时候都觉得之前是不是梦游看的...每次发布应用程序的时候都要翻看下文档..至少rid是死活记不住.还是留个RID的索引吧..还有发布的索引 ,这样就好复 ...