20155203 2016-2017-3 《Java程序设计》第三周学习总结

教材知识要点总结

第四章

  1. 文档主文档名必须与公开类名称相同。一个原始码中可以定义多个类,但是只能有一个公开类。但编译以后产生的*.class的文件个数和类的个数是相同的。
  2. 使用java.util.Scanner时,可以使用next***()扫描下一个字符串。同时也可以使用next()直接获取下一个字符串。
  3. java语言中Java SE提供的标准类使一些在c语言中不方便的情况有了更快的解决。直接通过一个类来避免再编写一个或重复编写多个含义相同的函数。
  4. ‘=’是用子啊制定参考名称参考某个对象,‘==’使用在比较两个参考名称是否参考同一个对象,实际上就是并不对对象本身进行比较,当然这个特点的前提是必须要有对象,而不是简单的定义赋值。同时,以“”包括的字符串只要内容相同,就只建立一个实例。使用equals()可以比较两对象内涵值。
  5. 打包的目的是为了实现将基本变量转化为对象,使用面向对象的操作方法,方便操作。但输出是以变量原本的形式输出,可以在运算时进行自动拆箱。
  6. 用new关键词来新建对象时,应注意到的是,新建的只是标签并未绑定任何对象之前不算建立了对象。
  7. 字符串在java中是对象。若已存在字符型数组,则可以用new关键字将其创建为String实例。
scanner的基本方法 表示含义
read() 以int类型返回读入的字符
nextInt() 将标准输入中的下一个字符串剖析为int型
next() 直接取得上一个字符串
nextLine() 取得用户输入的整行文字
BigDecimal的基本方法 表示含义
plus()
substract()
multiply()
divide()
equals() 比较两个对象是否相等
Integer的基本方法 表示含义
compareTo() 小于传入对象返回-1,否则返回1
intValue() 把Integer类型转化为Int类型
valueOf() 将参数给的值转化成方法前标识的类型
数组的基本方法 表示含义
a[].length 表示数组a的长度
Arrays.copyOf() 复制传入数组

第五章

  1. 使用自定义封装类编译程序时:
javac -sourcepath <源文件地址> -cp <类的地址> -d <位码文档存放地址> 文件名

2.封装对象后,用户端将无法访问private声明下的对象,使用前一定要将类的声明改为public.

部分课后题:

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

  • 问题1:教材P89的代码阐明了‘=’与‘==’的区别,但是应该如何区别对象和普通变量,或者说二者在定义中有什么样的区别?
  • 解决方案:我们定义类的对象的时候,对象就会有那些属性和方法,哪些都是对人的抽象,通过对象我们可以访问属性和方法,但是我们无法看到对象的内部细节即封装性。而在定义普通变量时就不会有这么多的方法和属性
  • 问题2:在java语言中定义一维数组在既不知道数组长度且对数组中具体有哪些元素也未知的情况下如何定义。例如 ,教材课后题中的斐波那契数列,需要用户输入长度再输出。
  • 未解决
  • 问题3:教材137页this()所代表的另一个构造函数为什么只能出现在构造函数的第一行?

-this()指的是 构造器, 构造器是没有返回值的

this 是指对当前对向的引用,是一个引用变量 注意区别

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

  • 问题1:

错误:



改正:



  • 问题2:(重复定义,Java语言中可以在使用时定义变量)

错误:



改正:

  • 问题三:(已经在Some.java中声明过了为什么还会出现这样的错误提示)





    未解决

  • 问题四:第五章课后操作题:迷宫

程序可以编译,可以运行,但是没有输出;

未解决

代码托管

  • 代码提交过程截图:(由于我最后一次上传时反复上传不成功,为了防止覆盖,我就将几天的代码重新都放在一个文件夹里,删除了git文件夹,再用-f参数强推了代码,所以只有一次上传记录,但是每个文件夹我都标记了时间。)



  • 代码量截图:

上周考试错题总结

  • 填空:Linux Bash中,查找当前目录中前天创建的Java文件的命令是(find . –name *.java -ctime 2)

原因:忘记了具体的命令细节

  • 0x10%9 的结果是( 7 )
  • 0x10&9 的结果是(0)

原因:看错了题,x看成了*也是因为基础知识不扎实的原因

  • ~0b1011的十进制值是(-12)

原因:不认真看书,按过去的理解做题。

其他(感悟、思考等,可选)

java语言在各方面的应用都更为灵活,定义变量可以在用的地方直接定义;对于对象的方法省去了许多重复步骤。

第五章的学习很多都用到了之前的打包管理的知识:当自定义一个类的时候,必须打包才能在下一个程序的编译中使用。同时让我明白了扎实的基础知识对于后面的学习真的至关重要。

在敲代码的过程中确实感觉到了使用命令提示符和记事本编译程序的不便之处,所以在下周的编程中一定要尽快学会在IDEA中的编程。

因为一直以来只使用C语言编程,所以总是会将思路先转化成C语言的描述方法。对Java语言的特点还有待进一步的熟悉和把握。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 2500行 30篇 400小时
第一周 80/100 1/1 20/20
第二周 180/250 2/2 30/38 可以用Java语言独立的编写一些具有基本结构的程序
第三周 504/500 3/3 22/60
第四周
  • 计划学习时间:38小时

  • 实际学习时间:30小时

参考资料

20155203 2016-2017-3 《Java程序设计》第三周学习总结的更多相关文章

  1. Java程序设计第三周学习总结

    1. 本周学习总结 2. 书面作业 Q1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; ...

  2. 对于“2017面向对象程序设计(Java)第三周学习总结”存在问题的反馈

    对于“2017面向对象程序设计(Java)第三周学习总结”存在问题的反馈 一:教学中存在的学习问题 “1.由于同学们平时练习不足,上课总是出现跟不上老师的节奏的现象. 2.个别同学上课不认真听讲,打开 ...

  3. 20155207 2016-2017-2 《Java程序设计》第九周学习总结

    20155207 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立 ...

  4. 20155201 2016-2017-2 《Java程序设计》第一周学习总结

    20155201 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 每一章的问题: 第一章 Java ME都有哪些成功的平台? 第二章 哪些情况可以使用impo ...

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. Azure 负载均衡器介绍

    您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn. Azure 负载均衡器 ...

  2. php中的extract函数

    extract函数用来将一个数字分解成多个变量直接使用,下面是W3C的解释:PHP extract() 函数从数组中把变量导入到当前的符号表中.对于数组中的每个元素,键名用于变量名,键值用于变量值.第 ...

  3. 验证 Xcode是否有效方法

    苹果给出了验证 Xcode 的方法,需要用户在终端中执行下面的命令: spctl --assess --verbose /Applications/Xcode.app 如果 Xcode 从 Mac A ...

  4. ssh整合之Session延迟加载问题的解决

    问题描述:在使用Hibernate和Struts是经常会遇到如下BUG: org.apache.struts2.json.JSONException: org.apache.struts2.json. ...

  5. Java 使用poi导入excel,结合xml文件进行数据验证的例子(增加了jar包)

    ava 使用poi导入excel,结合xml文件进行数据验证的例子(增加了jar包) 假设现在要做一个通用的导入方法: 要求: 1.xml的只定义数据库表中的column字段,字段类型,是否非空等条件 ...

  6. JavaScript浏览器检测之客户端检测

    客户端检测一共分为三种,分别为:能力检测.怪癖检测和用户代理检测,通过这三种检测方案,我们可以充分的了解当前浏览器所处系统.所支持的语法.所具有的特殊性能. 一.能力检测: 能力检测又称作为特性检测, ...

  7. Codeforces-19D Point---线段树

    题目链接: https://cn.vjudge.net/problem/CodeForces-19D 题目大意: n个操作,在200000*200000的平面上加删点 find 严格在坐标右上角,x最 ...

  8. Linux调整系统时间

    1.yum search ntp(搜索可安装的ntpn) 2.yum install ntp.x86_64 3.service ntpd start 4.ps -ef | grep ntpd 5.da ...

  9. bzoj 3339 Rmq Problem / mex

    题目 我的树状数组怎么那么慢啊 就是一道水题,我们考虑一下对于一个区间\([l,r]\)什么样的数能被计算 显然需要对于一个\(j\),需要满足\(j<l\)且\(nxt_{j}>r\), ...

  10. x-frame-options、iframe与iframe的一些操作

    iframe的子操作父窗口,父操作子窗口: test.php: <!DOCTYPE html> <html> <head> <title>test< ...