20145324 《Java程序设计》第3周学习总结

教材学习内容总结

第四章

1、要产生对象必须先定义类,类是对象的设计图,对象是类的实例,建立实例要用new

2、参数名称与对象数据成员同名时,在数据成员前加this

3、标准类:①java.util.Scanner P87

②java.math.BigDecimal 更高的精确度 plus() substract() multiply() divide() (a.add(b).add(c).equals(result))

4、用于基本类型:=是将值复制给变量 ==是比较两个变量储存的值是否相同

用于操作对象:=是用在将某个名牌绑到某个对象 ==是用在比较两个名牌是否绑到同一对象

equals()比较内含值是否相同

5、数组 int[] 二维数组 int[][](几列、每列多少个元素)

6、int baby :babys 会将babys数组第一个元素,指定给baby变量后执行循环体

7、new Integer[3][2]代表着一个Integer[][]类型的对象,其中有3个Integer[]类型索引,分别参考至长度为3的Integer一维数组对象,而每个Integer一维数组 的索引都参考至null,所以有0个Integer实例

8、数组复制:①建立新的数组 ②System.arraycopy() ③Arrays.copyOf (浅层复制)

9、字符串本质是打包字符数组的对象,是java.lang.String类的实例

10、使用+连接字符串会产生新的String实例

第五章

1、取值方法的名称是固定的,以get开头加首字母大写的单词

2、在Java中使用public声明,使某类对象成员是公开成员,则可以在其他包的程序代码中存取该包的类或对象成员

3、创建对象时,数据成员会初始化,如果没有指定初始值,则会使用默认值初始化

4、编译程序在处理重载方法时的顺序 P136

5、使用不定长度自变量时,方法上声明的不定长度参数必须是参数列最后一个,也不可以使用两个以上不定长度自变量

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

p92

在运算时,也可以进行自动装箱与拆箱,如

Integer i=10;

System.out.println(i+10);

System.out.println(i++);

上例会显示20与10

为什么不是显示20与11呢?

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

输入书中代码会出现下图中的问题,无法运行

class CashCard1 {
String number;
int balance;
int bonus; CashCard1(String number, int balance, int bonus) {
this.number = number;
this.balance = balance;
this.bonus = bonus;
} void store(int money) {
if (money > 0) {
this.balance += money;
if (money >= 1000) {
this.bonus++;
}
} else {
System.out.println("储值是负的");
}
} void charge(int money) {
if (money > 0) {
if (money <= this.balance) {
this.balance -= money;
} else {
System.out.println("钱不够了!");
}
} else {
System.out.println("扣负数,这不是叫我存钱吗?");
}
} int exchange(int bonus) {
if (bonus > 0) {
this.bonus -= bonus;
}
return this.bonus;
} public class CashApp1 {
public static void main(String[] args) {
CashCard1[] cards = {
new CashCard1("A001", 500, 0),
new CashCard1("A002", 500, 0),
new CashCard1("A002", 1000, 1)
};
Scanner scanner = new Scanner(System.in);
for (CashCard1 card : cards) {
System.out.printf("为(%s,%d,%d)储值:", card.number, card.balance, card.bonus);
card.store(scanner.nextInt());
System.out.printf("明细(%s,%d,%d)%n", card.number, card.balance, card.bonus);
}
}
}
}

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

第四章的内容理解起来更容易一些,第五章就有些困难,多看几遍教材结合代码学起来会容易一点

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 500行 16篇 220小时
第一周 30/20 1/1 10/10
第二周 82/102 1/2 10/20
第三周 158/260 1/3 10/30

参考资料

20145324 《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. JAVA基础之multipart,urlencoded以及JSON

    一.(enctype) 表单的默认编码方式  ajpplication/x-www-form-urlencoded 上传文件的编码方式  multipart/form-data 互联网应用常用编码   ...

  2. 随笔 javascript-抽象工厂模式

    随笔   javascript-抽象工厂模式 抽象工厂模式笔记   1.抽象工厂模式创建多个抽象类,创建出的结果是一个类簇(这里是抽象类的集合)   2.抽象工厂中传入的父类是否是抽象工厂方法创建的抽 ...

  3. window 如何枚举设备并禁用该设备和启用该设备?如何注册设备热拔插消息通知?

    目前实现的功能: 1.设备枚举 2.设置设备禁用和启用 3.注册设备热拔插消息通知 4.获取设备 vid pid 数值 需要链接的库 SetupAPI.lib DeviceManager 类如下: D ...

  4. Linux时间管理涉及数据结构和传统低分辨率时钟的实现

    上篇文章大致描述了Linux时间管理的基本情况,看了一些大牛们的博客感觉自己写的内容很匮乏,但是没办法,只能通过这种方式提升自己……闲话不说,本节介绍下时间管理下重要的数据结构 设备相关数据结构 // ...

  5. 7.Git工作区和暂存区

    Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 先来看名词解释. 1.工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的test文件夹就是一个工作区 ...

  6. shell_03

    函数: fanction print_welcome(){ echo welcome now time is `date` } print_welcome 函数调用 print _welcome 00 ...

  7. matlab实现MSER(最大极值稳定区域)来进行文本定位

    一.自然场景文本定位综述   场景图像中文本占据的范围一般都较小,图像中存在着大范围的非文本区域.因此,场景图像文本定位作为一个独立步骤越来越受到重视.这包括从最先的CD和杂志封面文本定位到智能交通系 ...

  8. 六、Mosquitto 高级应用之SSL/TLS

    mosquitto提供SSL支持加密的网络连接和身份验证.本章节讲述次功能的实现. 在此之前需要一些准备工作. 准本工作: 一台 Linux 服务器. 安装好 openssl (不会明白怎么安装 op ...

  9. pytorch rnn

    温习一下,写着玩. import torch import torch.nn as nn import numpy as np import torch.optim as optim class RN ...

  10. oracle dataguard参数

    在整个dg配置中,最复杂的也许就是参数的配置了,并且有许多参数都可以延伸出去讲很多,所以今天我们来看看dg的参数配置,顺便加上一点dataguard进程相关的信息,帮助理解. 在配置dg的过程中,我们 ...