20175310 《Java程序设计》第1周学习总结(2)

教材学习内容总结

本周学习了教材的第一章内容,通过看微课的方式,自主学习,教材上讲的比较简单,主要的问题都在调试代码上,还有一两个问题还没解决,在下面有提到,希望老师指点。

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

一、看完第一章的微课视频后,做了【强化练习】。



共10道题,前九题都没有疑问,第10题的问题没能解决。

- 问题1:

不知道我的答案对不对,其中书上说classpath中的“.;”是指可以加载应用程序当前目录及其子目录的类,那么“.;”是不是一定要写在classpath中,不写的话有没有错?

- 问题1解决方案:

尚未解决

二、编写“Hello程序”并编译运行

1、打开记事本,将教材P9的程序输入。

2、保存时,选择另存为,文件名改为Hello.java,注意后缀名要改成.java(不是Hello.java.txt),保存类型为所有文件,编码是ANSI。

3、打开cmd,首先输入javac,判断path路径是否正确。如下图,若出现一堆选项,则说明path路径正确。

4、用常用的命令提示符口令,进入Hello.java文件所在的文件夹。

5、输入dir可以看到当前文件夹所包含的文件,现在作业文件夹下只有Hello.java一个文件。

6、输入javac Hello.java编译文件,若没有提示文字出现说明编译正确。

7、此时再次输入dir,可以发现现在作业文件夹里有三个文件,分别是Hello.java Hello.class Student.class,后面两个后缀名是class的文件就是编译Hello.java后产生的字节码文件。

8、输入java Hello运行程序,程序运行成功。

9、此外,输入javap Hello.class可以对字节码文件进行反编译。

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

一、安装git

1、Windows下安装Git,到Git for Windows下载安装Windows 版git。安装完右击桌面,点击「Gib Bash」图标:

2、在Git Bash中可以运行Linux 命令,我们使用git --version查看一下安装的版本,证明Git命令可用,这样就说明Git装好了。

二、在Linux操作系统中安装Git

1、打开终端后输入git -- version

- 问题2:

提示说目前还没有安装git

- 问题2解决方案:

输入sudo apt install git安装git输入密码开始安装

安装完后,再次输入git --version 就可以看到Git安装成功了



2、安装完成后进行git配置,输入指令git config --global user.name "20175310xcy"git config --global user.email "2591038766@qq.com"



3、创建验证用的公钥,使用命令ssh-keygen -C '2591038766@qq.com' -t rsa,会在用户目录~/.ssh/下建立相应的密钥文件。



使用命令cd ~/.ssh进入~/.ssh文件夹,输入gedit id_rsa.pub打开id_rsa.pub文件,复制其中所有内容。接着访问http://git.oschina.net/profile网页,点击SSH公钥把刚才复制的内容粘贴进去就OK了。





可以使用ssh -T git@git.oschina.net命令来测试连接是否畅通。

- 问题3:

我看参考博客中这里若是连接畅通应该显示“Welcome to Git@OSC, 20175310xcy”,但是我试了几次都没有成功,不知道是怎么回事。

- 问题3解决方案:

尚未解决

4、使用git init指令初始化一个git仓库,接着输入git add .添加文件,输入git commit -m "第一周作业"提交至仓库。



通过git status查看是否还有需要提交的文件。



5、输入git remote add origin https://git.oschina.net/20175310xcy/hello_xcy.git,git push origin master即可上传文件到码云

- 问题4:

操作后发现不能上传成功,它显示远程:未找到存储库,我在网上看到输入git remote set-url origin git@github.com:20175310xcy/hello_xcy.git就可以,设置之后发现出现了新的问题,没有访问权限。

- 问题4解决方案:

在网上试了很多方法还是没用,最后我换了个办法,不用SSH,改用HTTP。直接克隆的话会显示Repository Not Found fatal: repository“http://git.oschina.net/20175310xcy/hello_xcy.git ”not found.之后我重新从上面的步骤1一步一步做下来,重新安装并配置了git,此时再次克隆就成功了。

三、调试教材上代码,并把代码上传到码云上

1、接下来,参考《代码驱动的程序设计学习》,新建一个体现自己学号姓名的文件夹



在该文件夹中输入mkdir 20175310CSAPP2E 建立教材的项目文件夹。根据C项目的规范,我们在20175310CSAPP2E文件夹下建立相应的文件夹:

src:存放源代码文件

include: 存放头文件

bin:存放编译后的目标文件、可执行文件等

lib:存放项目所需的静态库、动态(共享)库

res: 存放项目所需的图标、声音、图片等资源

docs: 存放项目相关的参考资料、帮助文档,比如大家的学习博客就可以放在这里



输入tree即可查看20175310CSAPP2E文件夹下建立的相应文件夹

- 问题5:

输入tree后显示未安装tree

- 问题5解决方案:

sudo apt install tree





2、用vi src/Hello.java编辑代码,输入以下程序:

1 public class Hello {
2 public static void main(String []args){
3 System.out.println("Hello Java World!");
4 }
5 }

此时输入tree就可以看到刚刚编辑的Hello.java文件。



3、接下来到src目录中使用javac Hello.java编译程序

- 问题6:

输入后发现javac还没安装无法编译

- 问题6解决方案:

按照下面给的提示输入了sudo apt install gcj-4.9-jdk



结果出现了下面的错误



从网上搜了回答,输入sudo rm /var/cache/apt/archives/locksudo rm /var/lib/dpkg/lock强制解锁,然后就可以安装啦



4、安装完成之后就可以编译运行啦



5、通过git add .,git commit把刚才的工作纳入版本控制,通过git push把文件上传到码云上。



6、到码云上,我们可以看到本地的代码已经上传到网站上了。



7、通过编译运行vim run.sh写一个脚本简化。

#!/bin/sh
javac -d bin src/Hello.java
cd bin
java Hello
cd ..

chmod +x run.sh给脚本加上执行权限。脚本测试没有问题,使用git add .,git commit -m "add run script" 把脚本纳入版本控制中。



8、使用vim src/Hello.java编辑Hello.java代码,加入一行打印自己学号姓名的代码:

1 public class Hello {
2 public static void main(String []args){
3 System.out.println("Hello Java World!");
4 System.out.println("Hello 20175310xcy!");
5 }
6 }

代码托管

其他

第一次尝试以自学的方式学习编程,感觉难度较大,还需多加练习。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 6/6 2/2 30/30
第二周 0/6 0/2 0/30
第三周 0/6 0/2 0/30
第四周 0/6 0/2 0/30

20175310 《Java程序设计》第1周学习总结(2)的更多相关文章

  1. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  2. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  3. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  4. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  5. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  6. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  7. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  8. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  9. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

  10. 《Java程序设计》第二周学习总结

    20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...

随机推荐

  1. Java Servlet 过滤器与 springmvc 拦截器的区别?

    前言:在工作中,遇到需要记录日志的情况,不知道该选择过滤器还是拦截器,故总结了一下. servlet 过滤器 定义 java过滤器能够对目标资源的请求和响应进行截取.过滤器的工作方式分为四种 应用场景 ...

  2. BZOJ3884(SummerTrainingDay04-C 欧拉定理)

    上帝与集合的正确用法 根据一些书上的记载,上帝的一次失败的创世经历是这样的: 第一天,  上帝创造了一个世界的基本元素,称做“元”. 第二天,  上帝创造了一个新的元素,称作“α”.“α”被定义为“元 ...

  3. js实现获取URL参数

    function GetQueryString(name) { var reg = new RegExp("(^|&)"+ name +"=([^&]*) ...

  4. js-权威指南学习笔记21

    第二十一章 多媒体和图形编程 1.为了强制让图片缓存起来,首先利用Image()构造函数来创建一个屏幕外的图片对象,之后将该对象的src属性设置成期望的URL. 2.由于各家浏览器制造商未能在对标准音 ...

  5. mysql如何修改开启允许远程连接

    关于mysql远程连接的问题,大家在公司工作中,经常会遇到mysql数据库存储于某个人的电脑上,大家要想连接mysql服务,装有mysql服务的电脑就必须开启远程连接 第一步,用dos连接上你的数据库 ...

  6. LeetCode 题解之Most Common Word

    1.题目描述 2.题目分析 首先将输入句子拆分成单词,在这个过程中将所有大写字母变换成小写字母,将每一个单词作为一个字符串放入一个 map<string,int> 容器中,最后遍历容器,查 ...

  7. mysql主从不同步问题 Error_code: 1236

    第一种情况,开启GTID,从库与主库不同步. 1.在从库上查看从的状态   mysql> show slave status \G *************************** 1. ...

  8. 学习笔记:The Best of MySQL Forum

    http://mysql.rjweb.org/bestof.html I have tagged many of the better forum threads. 'Better' is based ...

  9. [原创]使MySQL注释语句在后台能够输出的方法

    开启general log或slow log的时候,前端发出的sql语句中的注释都别屏蔽掉了. 本意加注释我们想通过注释来快速知道sql是由哪个业务模块发出的.这点对dba和研发很有帮助. 一种变通的 ...

  10. C# 引用的程序集没有强名称

    首先查一下什么是强名称程序集,见百度百科帖子:http://baike.baidu.com/view/1145682.htm简单来说,就是为了解决Windows Dll Hell问题的,即不同公司开发 ...