zoukankan      html  css  js  c++  java
  • 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的电脑

    参考资料

  • 相关阅读:
    Android 开发 深入理解Handler、Looper、Messagequeue 转载
    Android 开发 Handler的基本使用
    Java 学习 注解
    Android 开发 AlarmManager 定时器
    Android 开发 框架系列 百度语音合成
    Android 开发 框架系列 Google的ORM框架 Room
    Android 开发 VectorDrawable 矢量图 (三)矢量图动画
    Android 开发 VectorDrawable 矢量图 (二)了解矢量图属性与绘制
    Android 开发 VectorDrawable 矢量图 (一)了解Android矢量图与获取矢量图
    Android 开发 知晓各种id信息 获取线程ID、activityID、内核ID
  • 原文地址:https://www.cnblogs.com/protectmonarch/p/6458598.html
Copyright © 2011-2022 走看看