20165223 《JAVA程序设计》第一周学习总结

教材学习内容总结

通过网站JAVA第一章视频教程、教材、老师所给的教程及网上查询进行学习

  • 第一章要点

    • JAVA地位和特点

      • 地位:网络、语言、需求地位
      • 特点:简单、面向对象、平台无关、动态
    • 安装JDK
      • 三个平台:JAVA SE、JAVA EE、JAVA ME
      • JAVA集成开发环境:IntelliJ IDEA、MyEclipse、NetBean…
      • 安装过程:下载安装包、安装、设置环境变量
    • JAVA应用程序开发步骤
      • 编写源文件、编译源文件、运行程序
    • 简单的java应用程序
      • 使用 java SE jdk 开发程序

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

一、安装JDK

  • 安装过程及疑难

    • 第一次安装jre运行环境,更改路径如E:/jdk1.8,不要装在C盘里
    • 第二次提示安装的jre有别于第一次的jre,直接使用默认路径,并且安装后bin中没有javac编译器
    • 分开安装两个jre的原因:防止第二个jre把第一个jre覆盖。由于没有javac编译器,今后若卸载第一个JDK时,第二个jre仍存在,因此仍可以运行JAVA程序,但无法编译了
    • 设定jdk中javac的路径:搜索cmd打开命令行提示符,敲击javac发现无法使用,如图:

    • 设定环境变量:右击计算机-属性-高级系统设置-环境变量,点击系统变量-新建,变量名JAVA_HOME,变量值安装JDK的盘,如E:/jdk1.8,确定
    • 设定PATH:直接继续在系统变量菜单里找到PATH(一定存在),直接编辑更改%JAVA_HOME%\bin:\……即可,因此设置了JAVA_HOME之后PATH的更改变得容易

二、java程序编写步骤及难点

  • 编写源文件

    • 扩展名为.java
    • 使用文本编辑器(Edit或记事本)编写
    • 基本特点:书写形式上是由多个独立的类组成的,与先后顺序无关
    • 大括号独行习惯:{一般放在上一行的末尾,不用换行可以缩减行数;}必须独立占一行
    • 注意缩进,方便编写查看
    • 保存txt时,要注意以下四点
      • 第一是保存地址位置,需要另选一盘新建文件夹
      • 第二是文件名。若是单个类,则改成这个类的名字(英文).java;若有多个类组成且没有“public”公共类存在,选择某个类的名字(英文).java;若有public(有且只能有一个)则改成由public修饰的类的名字(英文).java
      • 第三是保存类型,选择所有文件
      • 第四是编码,默认ANSI
    • 源文件至多有一个public类
    • 注意大小写,输入法等
  • 编译源文件
    • 使用javac.exe(java编译器)编译源文件,得到字节码文件
  • 运行程序
    • 使用java SE平台中的java.exe(java解释器)解释执行字节码文件

虚拟机使用中遇到的问题和解决过程

一、安装Git

  • 在本机上安装

    • 由于大一时在信安协会已经初步安装过了git,因此很容易就在windows和linux下都安装上了git,但在主机Windows里设置环境变量的时候出现了一些问题(如图)

    • 新建设置完JAVA_HOME之后找到PATH,点击编辑发现出现了多条路径选择,后来发现直接点击右下角的编辑文本即可进入更改

    • 顺利安装并调试好了git

  • 在linux上安装

    • 直接输入安装命令:sudo apt-get install git
    • 输入配置指令:git config --global user.name "xxx"git config --global user.email "你的邮箱地址"
    • 完成安装与调试

二、使用vim编辑器编辑代码

由于我的虚拟机不知为何无法安装IDEA,因此这里先使用了vim编辑器完成学习,今后安装好后再另外补充

  • 方法步骤(举例)

    • 新建一个java文件:touch *.java
    • 进入vim编辑器编辑代码:vi *.java
    • 单击i进入编辑界面,编辑时注意缩进
    • 单击Esc退出编辑界面,输入:wq!保存并退出
  • 更多操作

三、编写并运行脚本文件

  • 通过vim编写脚本:vim run.sh
  • 给脚本加上执行权限:chmod +x run.sh
  • 测试脚本:./run.sh

  • 没有问题后进行提交

四、将本地代码提交到码云

  • 方法与步骤

    • 首先在Ubuntu上不要进入任何文件夹,直接克隆学习项目地址形成关联:git clone https://学习项目地址.git
    • 接着会在HOME中生成一个与学习项目地址一致的文件夹,如图

    • cd进入该文件夹,建立src和bin目录:mkdir src,mkdir bin
    • 进入vim编辑器编辑代码,保存后退出:vi src/*.java
    • 编译时直接将class生成在bin中:javac -d bin src/Hello.java
    • 执行:cd binjava *cd ..

    • 提交代码
      • git add .
      • git commit -m "输入文件名"
      • git push
      • 输入码云用户名和密码
      • 完成推送

  • 遇到的难题

  • git pull失败:查看是否有重复的文件,有就删去,再继续该步骤

  • git push失败:输入git pull --rebase origin master,再输入git push origin master即可

  • 出现合并冲突:这个仍然不太了解,参考了GIT中合并冲突决解勉强解决,需要进一步再理解

  • 此外在遇到各种问题的时候了解到git强大的分支概念,由于时间问题之后再深入探讨

代码托管

补充纠错:
由于上面忘了将在码云上提交的作业.doc拉回来,于是文档行数统计只有之前不小心git pull回来的2行。

在clone生成的文件夹内使用git pull后成功拉回文档,再次统计如下:

上周考试错题总结

对于程序代码完全不熟悉,稍微的一点小改动看不太出来或是挫人为另一情况导致答题错误。
详见博客:week1测试查漏补缺

感悟与思考

经过这一周的学习,我深刻的体会到了自己仍有很长的路要走。仅仅是安装虚拟机、jdk和git就已经让我感到困难,更不用说在实际操作过程中经常遇到的各种问题和错误提示。在遇到难题的时候我其实是有些害怕的,但在老师同学以及网络上许多大神教程的帮助下,仍然磕磕碰碰的走出了第一步。回顾这一周的学习,我看到自己从无到有的过程,以后也将继续努力,多练多学,掌握更多技巧。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 3000行 30篇 400小时
第一周 200/200 1/2 20/20

参考资料:

  1. Ubuntu下git的安装与使用
  2. 使用码云和博客云学习简易教程
  3. vim编辑器的使用教程
  4. JAVA第一章视频教程
  5. Git远程仓库的使用
  6. Ubuntu下安装jdk详解
  7. Linux Git使用教程
  8. Linux下实现文件上传至git
  9. 使用JDB调试java程序
  10. Intellj IDEA 简易教程

20165223《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. 使用jmeter来发送json/gzip格式数据 --------笔记

    一.使用jmeter来发送gzip数据 有时候我们需要模拟在客户端将数据压缩后, 发送(post)到服务器端. 通常这种情况,会发生在移动终端上. 这样做的好处, 是可以节省流量.  当然, 服务器返 ...

  2. MySQL Limit优化(转)

    原文:http://bbs.landingbj.com/t-0-240894-1.html 首先,我们看一个分页SQL: SELECT time,pageFROM `l_not_200_page`WH ...

  3. 使用PL/SQL连接Oracle时报错ORA-12541: TNS: 无监听程序

    因公司需求,安装oracle数据库,oracle数据库用账号密码可以登录,然后在pl/sql里面不能登录,显示无监听程序. 这就说明可能有些服务没有启动,开始运行services.msc ,进入后寻找 ...

  4. rem移动端适配方案

    一. rem vs em 单位 定义 特点 rem font size of the root element 以根元素字体大小为基准 em font size of the element 以父元素 ...

  5. Java中有关Null的9件事(转)

    对于Java程序员来说,null是令人头痛的东西.时常会受到空指针异常(NPE)的骚扰.连Java的发明者都承认这是他的一项巨大失误.Java为什么要保留null呢?null出现有一段时间了,并且我认 ...

  6. Unit 2.前端之html--table(表格),form(表单)标签

    一.table标签 作用:定义html表格.一个table标签元素至少包含 thead(表头),tbody(表主题),还可以有tfoot(表底部) html表格游table元素及一个或者多个tr,th ...

  7. jq简单仿上传文件

    html: <div> <input id="lefile" type="file" style="display:none&quo ...

  8. 前K个高频元素

    给定一个非空的整数数组,返回其中出现频率前 k 高的元素. 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 示例 2: 输入: nums = [1], ...

  9. 不使用DataContext直接将ViewModels绑定到ItemsControl控件

    在常规的MVVM设计模式中,都是通过DataContext将ViewModels的一个对象绑定到View的DataContext中,从而完成相应地绑定,在本文中我们将通过另外的一种思路来将ViewMo ...

  10. 如何在DataTemplate中绑定RadioButton的Checked事件

    在我们的项目中经常要用到数据模板,最近做的一个项目中在数据模板中要放一些RadioButton,其中每一个RadioButton设置了Checked事件,如果直接在View层写Checked事件的话不 ...