20165312 2017-2018-2 《JAVA程序设计》第4周学习总结
一、课本五六章知识点总结
1.第五章
- 继承是一种由已有的类创建新类的机制
- 子类继承父类的成员变量和方法
- 子类继承的方法只能操作子类继承和隐藏的成员变量
- 子类重写或新增的方法只能操作子类继承和新声明的成员变量。但不能直接操作隐藏的成员的变量
- 子类通过方法的重写可以把父类的状态和行为改变为自身的装填
- 使用关键字super操作隐藏的成员变量
- “开-闭原则”:让设计的系统对扩展开放,对修改关闭
- final类不能被继承,final方法不允许子类重写,final变量为常量
2.第六章
- 用
interface定义一个接口,接口的定义包括接口声明和接口体。接口声明:interface 接口名接口体中包含常量的声明和抽象方法。 - 接口由类来实现以便使用接口中的方法。如果一个类实现了接口,那么该类可以直接在类体中使用该接口的常量。程序可以用接口名访问接口中的常量。
- 一个非抽象类实现了某个接口,这个类必须重写这个接口中的所有方法。而且方法的访问权限一定为public
- 接口回调:当接口变量中存放了实现接口的类的嗯对象的引用后,接口变量就可以调用类实现的接口方法
- 若一个方法的参数是接口类型,可以将任何实现该接口的类的实例的引用传递给该接口参数,那么接口参数就可以回调类实现的接口方法
- 接口产生的多态:不同的类在实现同一个接口时可能具有不同的实现方式
- 面向接口编程的核心思想:使用接口回调
- 利用接口也可以体现程序设计的“开-闭”原则
3.上周测试题查漏补缺
- 表达式15&250的值为()
A. FF
B. 0
C. 255
D. 1
解析:此题没有正确答案,15为00001111,250为11111010,按位与之后为00001010,答案为10.做题目的时候就很困惑,因为计算出来没有正确答案。
- 表达式-2 >> 1的值为()
A . 2^31 – 1
B . 2^15 – 1
C . 1
D . -1
解析:D 带符号右移(“ >> ”),即有符号位时,负数符号位补1,正数符号位补0, -2 的二进制求法是正数取反加1,因此 2 的二进制表示为0000 0000 0000 0000 0000 0000 0000 0010 ,取反加一为1111 1111 1111 1111 1111 1111 1111 1110 ,即 -2 的二进制表示。带符号右移之后为 1111 1111 1111 1111 1111 1111 1111 1111 ,除符号位之外,减一取反,得到带符号十进制数为-1。
- 表达式-2 >>> 1的值为()
A . 2^31 – 1
B . 2^15 – 1
C . 1
D . -1
解析:A 无符号右移 (“>>>”) ,即无论正负数,右移之后符号位均补 0 。-2 的二进制无符号右移一位之后为 0111 1111 1111 1111 1111 1111 1111 1111,即 2^31 - 1。
- 观察以下方法的定义,则该方法的返回类型为()
ReturnType method(byte x, double y) {
return (short)x/y*2;
}
A . double
B . short
C . int
D . byte
解析:D。y的精度高,所以返回类型为double。
- 下列说法正确的是()
A . float a = 3.5;会导致编译错误。
B . byte b = (byte)(-150);则b的值为106。
C . byte c = 10;int d =
(int)c;会导致精度的损失。
D . 精度由高到低排序为:double float long int char short byte
解析:ABD A项:必须有后缀f或F。B项:超出byte变量的取值范围,b的值为106。C项:int精度比byte高,不会导致精度的损失。
- 关于课本P23示例程序的说法,正确的是()
A . 程序等待用户在命令行输入数据时,是在Scanner reader = new Scanner(System.in);一句发生阻塞。
B . 在命令行运行该程序时,使用ctrl+c可以结束阻塞。
C . 输入0.00也可以结束程序的执行,输出sum的值。
D . 当用户输入0.3并回车后,程序再次阻塞,该阻塞是由于执行了x = reader.nextDouble();一句。
解析:BCD A项:执行nextDouble()方法时发生阻塞。
- 下列错误的初始化语句是( )
A . char str[]="hello";
B . char str[100]="hello";
C . char str[]={'h','e','l','l','o'};
D . char str[]={'hello'};
解析:ABD 这题目易漏选A ,A选项定义的是char类型数组,赋值是String类型,所以会报错。B同上。D选项'hello'不是char类型,char类型只有一个字符,也不是String类型,String类型使用“hello”。
- 下列关于课本P29示例程序的说法,正确的是()
A . 如果注释掉第一行“import java.util.*;”,则“System.out.println(Arrays. toString(a));”和“Scanner scanner = new Scanner(System.in);”两句会报错。
B . 折半查找时,必须保证数组是有序的。
C . 该程序所示的排序方法为冒泡排序法。
D . count>N/2说明查找结束,没有找到该数字。
解析:ABCD
码云链接:https://gitee.com/BESTI-IS-JAVA-2018/cxgg20165312.git
本周代码截图:

参考资料:
1.char str[100]="hello" char str[]="hello" 分别如何理解?
20165312 2017-2018-2 《JAVA程序设计》第4周学习总结的更多相关文章
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 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入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
随机推荐
- 【PAT】我要通过!
“答案正确”是自动判题系统给出的最令人欢喜的回复.本题属于PAT的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”. 得到“答案正确”的条件是: 1 ...
- less的基本语法
参考:http://old.zhufengpeixun.cn/qianduanjishuziliao/mobileDevelopment/2016-07-22/528.html
- CST时区,MYSQL与JAVA-WEB服务器时间相差13个小时的问题
最近倒腾了一台阿里云主机,打算在上面装点自己的应用.使用docker安装了安装mysql后,发现数据库的存储的时间与java-web应用的时间差8个小时,初步怀疑是docker容器时区的问题.经过一系 ...
- [python] 使用Jieba工具中文分词及文本聚类概念
声明:由于担心CSDN博客丢失,在博客园简单对其进行备份,以后两个地方都会写文章的~感谢CSDN和博客园提供的平台. 前面讲述了很多关于Python爬取本体Ontology.消息盒Inf ...
- 事件驱动模型和异步IO多路复用
事件驱动模型 协程:遇到IO操作就切换. 但什么时候切回去呢?怎么确定IO操作完了? 很多程序员可能会考虑使用“线程池”或“连接池”.“线程池”旨在减少创建和销毁线程的频率,其维持一定合理数量的线程, ...
- java中的Iterator和ListIterator的区别
(一)iterator迭代器 Collection的iterator方法返回一个实现了一个Iterator接口的对象 Iterator接口中包含三个方法: 1)E next() 2)boolean h ...
- tp5 Excel导入
/** * 导入Excel功能 */ public function import(){ if (!empty($_FILES)) { $file = request()->file('impo ...
- 3.4 unittest之装饰器(@classmethod)
3.4 unittest之装饰器(@classmethod) 前言前面讲到unittest里面setUp可以在每次执行用例前执行,这样有效的减少了代码量,但是有个弊端,比如打开浏览器操作,每次执行用例 ...
- git 在某个分支下创建新分支
首先要强调一个观念,那就是在某个分支A下创建新的分支B,是指使用A分支下的代码,并不是A/B这样的层级结构. 比如,我想要在非主分支dev 下面创建子分支dev_dev >>>1.创 ...
- sql server中用聚合函数查询退休人的开销信息
1创建表 create database Mathgouse MathgoCREATE TABLE A(ID INT PRIMARY KEY IDENTITY,--自增主键ID_CARD VARCHA ...