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

教材学习内容总结

本周学习量比前两周大,代码量也比较多,还出现了挺多术语,都要慢慢查。

第四章

第四章主要学习了java中的对象,有许多有趣的操作。比如书中85页的代码:

public cc.openhome;

class Clothes2 {
char size;
String color;
Clothes2(String color, char size){
this.color = color;
this.size = size;
}
} public class C4P85 {
public static void main(String[] atgs){
Clothes2 sun = new Clothes2("red",'S');
Clothes2 spring = new Clothes2("green",'M'); System.out.printf("sun (&s,%c)%n",sun.color,sun.size);
System.out.printf("spring (&s,%c)%n",spring.color,spring.size);
} }

在这段代码中,先指定了class类,并规定了Clothes2的输入顺序,因此在程序中输入时可直接输入需要指定的实例的值,不用挨个指定。

我们还学习了BigDecimal的使用,在计算时可以减少误差。

package cc.openhome;
import java.math.BigDecimal; public class C4P88 {
public static void main(String[] args){
BigDecimal op1 = new BigDecimal("1.0");
BigDecimal op2 = new BigDecimal("0.8");
BigDecimal result1 = op1.subtract(op2); System.out.println(result1); BigDecimal op3 = new BigDecimal("0.1");
BigDecimal op4 = new BigDecimal("0.1");
BigDecimal op5 = new BigDecimal("0.1");
BigDecimal result2 = new BigDecimal("0.3");
if(op3.add(op4).add(op5).equals(result2)){
System.out.println("等于0.3");
}
else{
System.out.println("不等于0.3");
}
} }

数组的复制、数组长度等内容比较好理解。

第五章

第五章进一步深入学习了对象的封装,以及类与方法的应用。

package cc.openhome;
class CashCard{
String number;
int balance;
int bonus;
CashCard(String number,int balance,int bonus){
this.number=number;
this.balance=balance;
this.bonus=bonus;
}
} public class C5P123 {
public static void main(String [] args){
CashCard[] cards={
new CashCard("A001",500,0),
new CashCard("A002", 300, 0),
new CashCard("A003", 1000, 1),
};
for (CashCard card:cards){
System.out.printf("(%s,%d,%d)%n",card.number,card.balance,card.bonus);
}
} }

上面的代码是先定义了CashCard构造函数,再直接用数组建立了CashCard对象,编写过程简明易懂。

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

  • 问题1:一些代码输入上的运用问题,如86页 “Math.random()x10” 是什么意思,编写class类时 “this” 的用法等。
  • 解答1:

Math.random() 意为随机生成0~1的数字,在后面乘某数字即把1扩大多少倍。 Math.random()x10 即生成0~10的数;Math.random()x40 即生成0~40的数。

“this” 关键字主要有三个应用:

(1)this调用本类中的属性,也就是类中的成员变量;

(2)this调用本类中的其他方法;

(3)this调用本类中的其他构造方法,调用时要放在构造方法的首行。

  • 问题2:数组复制时,新数组的长度对结果的具体影响。
  • 解答2:通过自己小幅更改104页代码试验出了结果:

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

  • 问题1.建立新的java.class的时候,没有对应的package。

  • 解决1:网上关于这个问题的解答较少,可能是我自己安装idea过程中的问题。解决方法是在src目录下先创建package,在package下面再创建java.class。



  • 问题2:126页的代码编写出现 'class' or 'interface' expected 错误。

  • 解决2:网上对这个问题的解释大多是在特殊情况下、较为复杂,与我的实际情况并不相符。我浏览多个网页后无意发现多打一个大括号也可能导致这种错误,检查后果然如此……

在图中错误的地方多打了一个反大括号,导致后面都出错了。

代码托管

  • 代码提交过程截图:

  • 代码量截图:

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 2000行 30篇 200小时
第一周 20/20 1/1 4/4
第二周 73/93 1/2 4/8
第三周 231/324 1/3 6/14

参考资料

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

  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. OC基础数据类型-NSValue

    1.NSValue:将指针等复杂的类型存储为对象 struct sct { int a; int b; }sctt; NSValue * value = [[NSValue alloc] initWi ...

  2. [DP]洛谷P1115最大子段和

    题目来源 https://www.luogu.org/problemnew/show/P1115 题目描述 给出一段序列,选出其中连续且非空的一段使得这段和最大. 输入输出格式 输入格式: 第一行是一 ...

  3. Python version 3.6 required, which was not found in the registry错误解决

    问题: 安装pywin32出现Python version 3.6 required, which was not found in the registry错误解决 解决: 建立一个文件 regis ...

  4. 【[TJOI2010]电影迷】

    一度自闭 这道题一看就是最小割无疑 我们假设源点\(S\)表示看这个电影,汇点\(T\)表示不看这部电影 如果一个电影的价值为正,我们就从源点点连一条容量为\(val\)的边,表示割掉这个边也就是选择 ...

  5. Pymyaql操作数据库

    Pymyaql操作数据库 Python3中专门用于操作Mysql数据库的模块. 一. 导入模块 import pymysql 二. 创建连接 conn=pymysql.connect(host=’12 ...

  6. SpringBoot实战(十一)之与JMS简单通信

    什么是JMS? 引用百度百科上的说明: JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之 ...

  7. 【转】Spring+Mybatis+SpringMVC+Maven+MySql搭建实例

    林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了如何使用Maven来搭建Spring+Mybatis+SpringMVC+M ...

  8. Dubbo实践(三)框架设计

    整体设计 图例说明: 图中左边淡蓝背景的为服务消费方使用的接口,右边淡绿色背景的为服务提供方使用的接口,位于中轴线上的为双方都用到的接口: 图中从下至上分为十层,各层均为单向依赖,右边的黑色箭头代表层 ...

  9. ASP.Net GridView 基础 绑定字段

    通过以前的学习,我们实现了效果如下: 现在我想修改显示/隐藏部分列,有两种做法: 一.在配置数据源的时候不是有查询哪些字段的吗,去除不需要的字段,重新绑定. 二.就是直接编辑列 下面是分析每种字段类型 ...

  10. 【Step By Step】将Dotnet Core部署到Docker上

    本教程的前提是,你已经在Linux服务器上已经成功的安装了Docker,我会大概介绍在此过程中用到的Docker命令,并不会介绍所有的Docker命令(因为我也不会). 一.在Docker中运行Dot ...