20145327 《Java程序设计》第三周学习总结
20145327 《Java程序设计》第三周学习总结
教材学习内容总结
对象:存在的具体实体,具有明确的状态和行为。
类:具有相同属性和行为的一组对象的集合,用于组合各个对象所共有操作和属性的一种机制。
从类看对象:类定义可以视为一个具有类似特性与共同行为的对象的模板,可用来产生对象。
从对象看类:类的产生,是从少数实例,推广到大量相似实例的抽象化过程。
类是对象的设计图,对象是类的实例,生成对象要先定义类。
P84 图4.2 c1是引用,在栈上;new Clothes()在堆上生成对象。
如果有多个class,也只能有一个类前面加public
两个基本的标准类:java.util.Scanner与java.math.BigDecimal。包名称为java开头的类,表示标准API提供的类。
不能用直接比较浮点数运算结果。用在对象类型,是比较两个名称是否参考同一对象,而!=正好相反,是比较两个名称是否没参考同一对象。equals()可以自行定义如何比较两对象的内含值。
为了让Java 基本类型像类一样使用int-Integer;long-Long;byte-Byte;float-Float;double-Double;boolean-Boolean。
Integer提供compareTo()方法,可与另一个Integer对象进行比较,如果打包值相同就返回0,小于compareTo()传入对象打包值就返回-1.否则就是1.与==或!=只能比较是否相等或不相等,compareTo()方法返回更多信息。
数组在Java中就是对象。
要声明二维数组,就是在类型关键词旁加上【】【】 。
在类中定义方法,如果不用返回值,方法名称前可以声明void 。
在Java命名规范中,取值方法的名称形式是固定的,也就是以get开头,之后接上首字母大写的单词。
创建对象与使用对象:
package cc.openhome;
class Clothes{ //定义Clothes类
String color;
char size;
}
public class Field {
public static void main(String[] args){
Clothes sun = new Clothes(); //建立对象
Clothes spring = new Clothes();
sun.color = "red";
sun.size = 'S';
spring.color = "green";
spring.size = 'M';
System.out.printf("sun (%s, %c)%n", sun.color, sun.size);
System.out.printf("spring (%s, %c)%n", spring.color, spring.size);
}
}
运行结果:

数组对象--for循环:
package cc.openhome;
public class Score {
public static void main(String[] args) {
int[] scores = {88,81,74,68,78,76,77,85,95,93};
for(int i = 0; i < scores.length;i++){
System.out.printf("学生分数:%d %n",scores[i]);
}
}
}
运行结果:

数组的复制:
package cc.openhome;
import java.util.Arrays;
public class CopyArray {
public static void main(String[] args) {
int[] scores1 = {88,81,74,68,78,76,77,85,95,93};
int[] scores2 = Arrays.copyOf(scores1,scores1.length);
for(int score : scores2){
System.out.printf("%3d",score);
}
System.out.println();
scores2[0] = 99;
for(int score : scores1){
System.out.printf("%3d",score);
}
}
}
运行结果:

代码托管:

教材学习中的问题和解决过程
CashCard.java,CardApp.java: 用方法(函数)封装操作
DRY是去除重复代码的有效手段
代码调试中的问题和解决过程
P124 代码 按照书上敲的,可是运行错误
package cc.openhome;
public class CashApp {
public static void main(String[] args) {
CashCard[] cards = {
new CashCard("A001",500,0),
new CashCard("A002",300,0),
new CashCard("A003",1000,1),
new CashCard("A004",2000,2),
new CashCard("A005",3000,3),
};
for(CashCard card : cards){
System.out.printf("(%s,%d,%d)%n",card.number,card.balance,card.bonus);
}
}
}

尚未解决 且这个代码中的;为什么是在}后 new对象后的符号为什么是,
其他(感悟、思考等,可选)
四五章的学习感觉到明显的吃力了许多,好多代码都看不懂理解不了。第四章是第五章的基础,一环扣一环,老师课上讲的堆与栈真的是非常重要,如果不能理解,那么对象就不能理解清楚。要静下心来,慢慢的看,多敲代码,多动手实践,相信会越来越好的。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 100/100 | 1/2 | 20/20 | |
| 第二周 | 250/350 | 1/3 | 20/40 | |
| 第三周 | 500/850 | 1/4 | 25/65 |
参考资料
20145327 《Java程序设计》第三周学习总结的更多相关文章
- Java程序设计第三周学习总结
1. 本周学习总结 2. 书面作业 Q1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; ...
- 20145327 《Java程序设计》第九周学习总结
20145327 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据库厂商则对接口进行操作,开发人员无需接触底层 ...
- 20145327 《Java程序设计》第二周学习总结
20145327 <Java程序设计>第二周学习总结 教材学习内容总结 JAVA类型:基本类型与类类型(也称参考类型). 基本类型分为:整数(short,int,long).字节(byte ...
- 20145327 《Java程序设计》第一周学习总结
20145327 <Java程序设计>第一周学习总结 教材学习内容总结 Java根据领域不同,区分为Java SE.Java EE与Java ME三大平台.Java SE是各应用平台的基础 ...
- 对于“2017面向对象程序设计(Java)第三周学习总结”存在问题的反馈
对于“2017面向对象程序设计(Java)第三周学习总结”存在问题的反馈 一:教学中存在的学习问题 “1.由于同学们平时练习不足,上课总是出现跟不上老师的节奏的现象. 2.个别同学上课不认真听讲,打开 ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
随机推荐
- Eclipse常用快捷键(转载)
编辑相关快捷键 Eclipse的编辑功能非常强大,掌握了Eclipse快捷键功能,能够大大提高开发效率.Eclipse中有如下一些和编辑相关的快捷键. 1. [ALT+/] 此快捷键为用户编辑的好帮手 ...
- 170420、maven内置常量
Maven工程插件配置中通常会用到一些Maven变量,因此需要找个地方对这些变量进行统一定义,下面介绍如何定义自定义变量. 在根节点project下增加properties节点,所有自定义变量均可以定 ...
- 170328、Maven+SpringMVC+Dubbo 简单的入门demo配置
之前一直听说dubbo,是一个很厉害的分布式服务框架,而且巴巴将其开源,这对于咱们广大程序猿来说,真是一个好消息.最近有时间了,打算做一个demo把dubbo在本地跑起来先. 先copy一段dubbo ...
- 160307、Java调用Oracle存储过程返回结果集
一:无返回值的存储过程调用 存储过程: CREATE OR REPLACE PROCEDURE PRO_1(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) AS BEGI ...
- Groovy中的脚本与类
包名 当你在groovy中定义类的时候需要指定包名,这和java中类似不多介绍. 导入 groovy中的导入也跟java类似,有一下五种: 默认导入 groovy默认导入了一下几个包和类: impor ...
- Python全栈day9(Python基础)
Python基础 一,Windows安装Python3.5 下载地址:https://www.python.org/ftp/python/3.5.2/python-3.5.2rc1-amd64.exe ...
- TCP implements its own acknowledgment scheme to guarantee successful data delivery
wTCP本身已经确保传输的成功性. HTTP The Definitive Guide 4.2.4 Delayed Acknowledgments Because the Internet itsel ...
- [报错] Xcode Error-Could not insert new outlet connection: Could not find any information for the class named "xxx"
当从StoryBoard或xib中需要将控件绑定类文件时(OC中是.m文件,Swift中是.swift文件) 当按住control键将控件往类文件中拖拽后,填写控件的name后,点击connect时 ...
- JPA 入门程序及相关注解
1. 概述 JPA(Java Persistence API):用于对象持久化的API; JPA本质上是一种ORM规范,不是ORM框架;提供了一些编程的API接口; Hibernate是实现; 1.1 ...
- Django 框架之 Models
1. 数据库配置 Django默认支持sqlite, mysql, oracle, postgresql 数据库: Django默认使用sqlite数据库,引擎名称:django.db.backend ...