20145105 《Java程序设计》第3周学习总结
20145105 《Java程序设计》第3周学习总结
教材学习内容总结
第四章 认识对象
一、类与对象
要产生对象必须先定义类,类是对象的设计图,对象是类的实例。
(一)定义类
1.类定义时使用class关键词
2.建立实例时使用new关键词
3.在类中定义的变量,叫做值域成员或对象数据成员
ps:一个原始码中可以有多个定义类,但只能有一个是公开类,且文档中的主文档名必须与公开类相同
(二)使用标准类
1.使用java.util.Scanner(创建实例)
2.使用java.math.BigDecimal(得到更好的精确度)
(三)对象指定与相等性
1."=",用于指定参考名称参考某个对象
2."==",用于比较两个参考名称是否参考同一对象
二、基本类型打包器
(一)打包基本类型
让基本类型像对象一样操作,可以使用Long、Integer、Double、Float、Boolean、Byte等类来打包
(二)自动装箱、拆箱
1.使用Integer wrapper = 10打包基本类型
2.使用Number类来自动装箱
3.自动拆箱:即自动取出打包器中的基本形态信息
三、数组对象
(一)数组基础
1.数组基本上是用来收集数据,是具有索引的数据结构
2.数组是对象,而不是单纯的数据集合
3.一维数组使用一个索引存取数组元素,二维数组使用两个索引存取数组元素
(二)操作数组对象
1.使用java.util.Arrays的fill()方法来设建数组的元素值
2.int[]之类声明的变量就是参考变量
(三)数组复制
1.自行使用循环做值的复制
2.使用System.arraycopy()方法,使用原生方式复制每一个索引元素
3.使用Arrays.copyOf()
四、字符串对象
(一)字符串基础
1.字符串本质是打包字符数组的对象,是java.lang.String类的实例
(二)字符串特性
1.用""写下的字符串称为字符串常量
2.在java中,字符串对象一旦建立,就无法更改对象中任何内容,对象上没有任何方法可以更改字符串内容。可以使用 + 连接字符串,改用StringBuilder来改善
第五章 对象封装
一、何谓封装
封装(Encapsulation)实际上是使用方法(Method)将类的数据隐藏起来,控制用户对类的修改和访问数据的程度,隐藏对象细节,将对象当作黑箱进行操作
1.通过构造方法(构造函数)封装初始化流程
2.通过成员方法(函数)封装操作
3.通过成员变量封装数据
ps:(1)private关键字:是一个权限修饰符。用于修饰成员(成员变量和成员函数)。被私有化的成员只在本类中有效
(2)功能:将成员变量私有化,对外提供对应的set ,get 方法对其进行访问。可提高对数据访问的安全性
二、类语法细节
(一)public权限修饰
如果没有声明权限修饰的成员,只有在相同包的类程序代码下才可以直接存取,也就是“包范围权限”。如果想在其他包的类程序代码中存取某包的类或对象成员,则该类或对象成员必须是公开成员,在java中要使用public加以声明。
(二)关于构造函数
1.函数名与类名相同
2.不用定义返回值类型
3.不可以写return语句
4.多个构造函数是以重载的形式存在的
(三)构造函数与方法重载
重载构造函数:视使用情景或条件不同,创建对象时也许希望有对应的初始流程。可以定义多个构造函数,只要参数类型或个数不同。
(四)使用this
1.this代表其所在函数所属对象的引用,换言之:this代表类对象的引用
2.当在函数内需要用到调用该函数的对象时就用this
(五)static类成员
1.用于修饰成员(成员变量和成员函数)
2.被修饰后的成员具备以下特点:
(1)随着类的加载而加载
(2)优先于对象存在
(3)被所有对象所共享
(4)可以直接被类名调用
3.使用注意:
(1)静态方法只能访问静态成员
(2)静态方法中不可以写this,super关键字
(3)主函数是静态的
教材学习中的问题和解决过程
四、五两章有很多的新名词,接受起来较为困难,有很多地方看几遍都看不懂,通过对比学习教材和视频,才理解一些晦涩难懂的内容。
代码调试中的问题和解决过程
向同学学习了idea的使用方法,学会了在src文件夹内新建class,才能运行代码,因为是抄写书上代码,所以在编写与运行过程中没出现什么问题。
其他(感悟、思考等,可选)
之前虽然不会用idea,百度也找不到有针对性的新手教程,但是一直拖着没有问同学,这次学会了使用方法,在代码编写和运行的过程中减少了很多不必要的麻烦,节约了很多时间。今后我发现问题也要及时解决,减少在拖沓的操作中浪费的时间,提高学习效率。
学习进度条
| | 代码行数(新增/累积)| 博客量(新增/累积)|学习时间(新增/累积)|重要成长|
| -------- | :----------------:|:----------------:|:---------------: |:-----:|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 70/70 | 1/1 | 14/14 | |
| 第二周 | 150/220 | 1/2 | 18/32 | |
| 第三周 | 400/620 | 1/3 | 35/67 | |
参考资料
20145105 《Java程序设计》第3周学习总结的更多相关文章
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20145218《Java程序设计》第一周学习总结
20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...
- 《Java程序设计》第九周学习总结
20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
- 《Java程序设计》第二周学习总结
20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...
随机推荐
- OracleServiceORCL这个服务竟然不见了
OracleServiceORCL这个服务竟然不见了,后数据库连接不成功,晕死,以前使用数据库还能看到,现在竟然不见了?Why?我猜测原因有二: ①:电脑已经装了Oracle数据库后又装了MySql数 ...
- Docker源码分析(八):Docker Container网络(下)
1.Docker Client配置容器网络模式 Docker目前支持4种网络模式,分别是bridge.host.container.none,Docker开发者可以根据自己的需求来确定最适合自己应用场 ...
- sencha touch 问题汇总
做sencha touch有一段时间了,目前而言,sencha touch在android上问题比较严重,在此对android中sencha touch的问题做一些汇总: 1.内存问题: 打包成安装程 ...
- nutch 1.7导入Eclipse
1.下载Nutch1.7的包 apache-nutch-1.7-src.zip,解压之后应该包括 bin,conf,src等目录 2.将解压之后的 apache-nutch-1.7 文件夹放到ecli ...
- Android自动读取短信验证码
Android自动读取短信验证码 extends:http://www.cnblogs.com/jiayaguang/p/4366384.html,http://blog.csdn.net/yung ...
- This function has none of DETERMINISTIC, NO SQL
错误信息: [Err] 1418 - This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declara ...
- mysql表大小写问题
查看大小写区分 mysql> show variables like "%case%"; linux在mysql安装完后默认:区分表名的大小写,不区分列名的大小写 改变表名的 ...
- nginx安装和测试 (已验证)
进入:/usr/local/nginx 目录注意:为了保证各插件之间的版本兼容和稳定,建议先通过以下版本进行测试验证. 一.下载版本 下载nginx: wget http://nginx.org/do ...
- javascript飞机大战-----006创建敌机
先写一个敌机类 /* 创建敌机: */ function Enemy(blood,speed,imgs){ //敌机left this.left = 0; //敌机top this.top = 0; ...
- linux下的进程,子进程,线程
1.相同点:(a)二者都具有ID,一组寄存器,状态,优先级以及所要遵循的调度策略.(b) 每个进程都有一个进程控制块,线程也拥有一个线程控制块.(c) 线程和子进程共享父进程中的资源:线程和子进程独立 ...