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


    学习内容总结

    1. 在linux的环境下学习怎么安git、jdk、Intellj IDEA
    2. 精读教材1、2章

    课前准备部分

    git的学习

    学习进度

    1. 系统学习学到创建版本库-廖雪峰的官方网站
    2. git推送学到最后一步上传

    关键笔记保存

    • ^X(离开):Ctrl+X
    • git commit -m "当这里的内容有空格时双引号必须得打上"
    • 常见命令图示
    • 命令学习笔记保存在learngit文件夹里

    Linux下安装jdk8教程推荐

    Linux下安装IDEA教程推荐

    关键学习笔记保存

    • *.tar.gz解压到指导目录的命令事例:tar -zxvf ./text.tar.gz -C /home/app/test/
    • 安装时有个选项是选择JetBrain Account还是Activation code,选择后者输入注册码

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

    第一章

    • 1.“”这段话是什么样意思?(JDR、平台 or 产品???)

    • 各个厂商可以根据JSR编写不同的JDR,在其JDR之上制作的开发产品可以在标准的JRE上运行

    • 意思是 只要是在遵循JCP规范的基础之上,各个厂商都可以根据自己的需求在不同的JAVA平台(各标准平台;就像JAVA SE一样???)上制作开发产品,只要做出来的开发产品兼容标准的JDK/JRE,就可以在标准的JRE上执行、兼容,这就意味着同一个产品跨平台也能使用

    • [推荐?]只要你这个开发产品兼容标准的JDK/JRE,就能在标准的JRE上执行或兼容,不必担心换一个平台就运行不了;所以各厂商可以各自制作成品,。。。

    • 这个开发产品(操作成品)指的是什么???

    • 2.“Sun JDK的实现,...,就是JDK的参考实现”,什么叫参考实现?

    • 就是RI的意思

    • 那JDK7的版本指定了OpenJDK7为官方参考实现又是什么意思???

    • 3.“任何想要提议加入JAVA的功能或特性,必须以JSR正式文件的方式提交”“有兴趣的厂商或组织可以根据JSR实现产品”JSR规范的是什么?实现什么产品,基于JAVA还是JSR还是什么?

    • 【待回答】JAVA?基于JSR?

    • 4.“有兴趣的厂商或组织也可以根据JSR自行实现产品,例如IBM就是根据JSR实现了自家的IBM JDK”,好像是可以根据JSR编写各自厂商的JDR?那可以编写除了JSR以外的产品么???

    • 【待验证】可以

    • 5.为什么OpenJDK7会有授权冲突发生?我知道Sun JDK采用JRL,OpenJDK7采用GPL,但这跟两个授权间存在冲突的程序代码有什么关系?OpemJDK7不就采用GPL一个授权(?)么?

    • 【待验证】两个授权冲突是指个人研究使用的授权和商业使用的授权(或者是指GNU Gneral Public License version2 和 Ocracle Binary Code License这两个授权?那Sun JDK又用的是什么授权?授权在JDK里究竟是怎么一个回事?),这两个授权在代码上存在冲突,因此不得不删掉许多,OpenJDK7还删掉了其 他的一些东西(不是因为这个原因删掉的);另,GPL是协议的名称,不是授权。(授权,就是指的是许可证?)

    • 6.JVM究竟是什么?Java虚拟机?还是操作系统???

    • 【待验证】两者都是,因为虚拟机虚拟的就是操作系统

    • 7.API是什么?

    • 爱问知识人-请问API是什么意思?可得答案

    第二章

    • 1.实例是什么?
    • 2.linux下的JAVA编程与教材中Windows下的不同,该如何做?
    • 通过类比的方法学习借鉴
    • 编写一个简单的JAVA程序的基础流程(在Terminal(终端)上):
    vim HelloWorld.java
    # 进入vim编辑器以后
    public class HelloWorld{
        public statics void main(String[] args){
            System.out.println("Hello World!");
        }
    }
    # :wq保存退出编辑器
    # 编译
    javac HelloWorld.java
    #执行JAVA类
    java HelloWorld
    

    参考资料

    • 3.linux下的CLASSPATH与windows下的不同

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

    • 用javac命令编译不成功

    第三章~第十八章(每章提一个问题,共15个问题)

    • 1.在变量方面,Java与C的最大区别在哪里?布尔运算吗?
    • 2.这个类、实例该怎么结合理解?
    • 3.封装可以一起隐藏多个类吧?
    • 4.能自己详细的把继承的不同种情况都列一列么?
    • 5.如何良好利用接口编程?
    • 6.异常处理的基本流程?
    • 7.deque方法与Queue方法的异同?
    • 8.关于流通俗易懂的讲是怎么回事?
    • 9.线程与并行API的关系?
    • 10.DRY原则与Lambda有什么关系?
    • 11.怎么编写格里高利历?
    • 12.NIO与IO的关系?
    • 13.API算是函数,日志API又是什么?
    • 14.Linux下怎么整合数据库?
    • 15.这里的枚举与C的相比如何?

    代码托管

    (此为在windows环境下成功后的截图)

    • 代码提交过程截图(有待解决):

      • 运行 git log --pretty=format:"%h - %an, %cd : %s" 并截图
    • 代码量截图:

      • 运行 find src -name "*.java" | xargs cat | grep -v ^$ | wc -l

    上周考试错题总结

    暂无考试

    学习进度条

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

    • 实际学习时间:15小时

    • 小结:学习成果不理想,要寻找相关linux环境下的书

    学习感想

    初设的linux的虚拟机内存太小,运行Intellj IDEA太慢,不利于学习在IDEA上编写JAVA,想再重设一个虚拟机或者换一个装Linux的电脑

    参考资料

  • 相关阅读:
    bzoj4282 慎二的随机数列
    bzoj2839 集合计数
    bzoj1735 [Usaco2005 jan]Muddy Fields 泥泞的牧场
    bzoj3732 Network
    Kruskal重构树
    bzoj1568 [JSOI2008]Blue Mary开公司
    bzoj4576 [Usaco2016 Open]262144
    p2522 [HAOI2011]Problem b
    bzoj2463 谁能赢呢
    p4301 [CQOI2013]新Nim游戏
  • 原文地址:https://www.cnblogs.com/protectmonarch/p/6458598.html
Copyright © 2020-2023  润新知