day20191006假期作业收尾
国庆作业:(轻重缓急,重点代码看懂理解了。每天重心就是代码,理解代码,理解,understand the code。花时间花功夫。只要功夫深,铁杵磨成针。)
一.使用DAO设计模式操作数据库CRUD(增删改查)
1. 查询所有
2. 根据ID查询
3. 新增数据
4. 根据ID修改数据
5. 根据ID删除数据
PS: 试卷的练习范围 2017年份的所有试卷, 操作单表(从表);
2017年份的所有试卷数据库创建好,测试数据加好;
二.各组设计的项目和模块
三.默写
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
作业分析:
1.DAO设计模式 是什么?弄懂
2.
课程代码作业:
课程知识默写:
章节:Ch01-集合框架和泛型
题目1)Java 集合框架是什么?说出一些集合框架的优点?
答:每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久,它还包括在Java并发包中,阻塞接口以及它们的实现。集合框架的部分优点如下:(1)使用核心集合类降低开发成本,而非实现我们自己的集合类。
(2)随着使用经过严格测试的集合框架类,代码质量会得到提高。
(3)通过使用jdk附带的集合类,可以降低代码维护成本。
(4)复用性和可操作性。
题目2)集合框架中的泛型有什么优点?
答:Java1.5引入了泛型,所有的集合接口和实现都大量地使用它。泛型允许我们为集合提供一个可以容纳的对象类型,因此,如果你添加其它类型的任何元素,它会在编译时报错,这避免了在运行时出现ClassCastException,因为你将会在编译时得到报错信息。泛型也使得代码整洁,我们不需要使用显式转换和instanceOf操作符。它也给运行时带来好处,因为不会产生类型检查的字节码指令。
题目 3) Java 集合框架的基础接口有哪些?
答:(1)Collection 为集合层级的根接口。一个集合代表一组对象,这些对象即为它的元素。Java 平台不提供这个接口任何直接的实现。
(2)Set 是一个不能包含重复元素的集合。这个接口对数学集合抽象进行建模,被用来代表集合,就如一副牌。
(3)List 是一个有序集合,可以包含重复元素。你可以通过它的索引来访问任何元素。List更像长度动态变换的数组。
(4)Map 是一个将 key 映射到 value 的对象.一个 Map 不能包含重复的 key:每个 key最多只能映射一个 value。
(5)一些其它的接口有 Queue、Dequeue、SortedSet、SortedMap 和 ListIterator。
题目 4) 为何 Map 接口不继承 Collection 接口?
答:(1)尽管 Map 接口和它的实现也是集合框架的一部分,但 Map 不是集合,集合也不是Map。因此,Map 继承 Collection 毫无意义,反之亦然。
(2)如果 Map 继承 Collection 接口,那么元素去哪儿?Map 包含 key-value 对,它提供抽取 key 或 value 列表集合的方法,但是它不适合“一组对象”规范。
题目 5) Iterator 是什么?
答:Iterator 接口提供遍历任何 Collection 的接口。我们可以从一个 Collection 中使用迭代器方法来获取迭代器实例。迭代器取代了 Java 集合框架中的 Enumeration。迭代器允许调用者在迭代过程中移除元素。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
章节 Ch03 - 输入和输出处理
题目 1)java 中有几种类型的流?JDK 为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?
答:(1)字节流,字符流。
(2)字节流继承于 InputStream OutputStream,
(3)字符流继承于 Reader Writer。在 java.io 包中还有许多其他的流,主要是为了提高性能和使用方便。
题目 2) 什么是 java 序列化,如何实现 java 序列化?
答:序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。
序列化的实现:将需要被序列化的类实现 Serializable 接口,该接口没有需要实现的方法,implements Serializable 只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个 ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream 对象的 writeObject(Object obj)方法就可以将参数为 obj 的对象写出
(即保存其状态),要恢复的话则用输入流。
题目 3) 使用处理流的优势有哪些?如何识别所使用的流是处理流还是节点流?
答:优势:对开发人员来说,使用处理流进行输入/输出操作更简单;使用处理流的执行效率更高。
判别:处理流的构造器的参数不是一个物理节点,而是已经存在的流。而节点流都是直接以物理 IO 及节点作为构造器参数的。
题目 4) 什么是标准的 I/O 流?
答:在 java 语言中,用 stdin 表示键盘,用 stdout 表示监视器。他们均被封装在 System 类的类变量 in 和 out 中,对应于系统调用 System.in 和 System.out。这样的两个流加上System.err 统称为标准流,它们是在 System 类中声明的 3 个类变量:
public static InputStream in;
public static PrintStream out;
public static PrintStream err;
题目 5) 什么能被序列化?什么不能被序列化?
答: 能被序列化:①属性(包括基本数据类型、数组、对其它对象的引用);②类名;不能被序列化:①static 的属性;②方法;③加了 transient 修饰符的属性。
要想序列化对象,必须先创建一个 outputstream,然后把它嵌进 objectoutputstream。这时就能用 writeobject()方法把对象写入 outputstream,。读的时候需要把 inputstream 嵌
到 objectinputstream 中,然后在调用 readobject()方法。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
章节:Ch04-XML
题目1)XML 是什么?
答:XML是可扩展标记语言(Extensible Markup language),可以根据自己的需求扩展XML,XML中可以定义自定义标签。而在HTML等标记语言中必须使用预定义标签,而不能使用自定义标签。
题目2)DTD与XML Schema有何区别?
答:DTD与XML Schema的区别:DTD(Document Type definition)是文档类型描述是定义XML 文件结构的传统方式。DTD不使用XML编写,而XML Schema本身就是XML文件,这表示XML解析器等已有的XML工具可以用来处理XML Schema,并且XML Schema 是设计与DTD之后的,它提供了更多的类型来映射XML文件不同的数据类型。
题目3)XML CDATA 是什么?
答:CDATA是字符数据,它具有特殊的指令被XML解析器解析。XML解析器解析XML文档中所有的文本,比如This is name of person,标签的值也会被解析,因为标签值也可能包含XML标签,比如First Name。CDATA部分不会被XML解析器解析,CDATA部分以结束。
题目4)XSLT是什么?
答:XSLT也是常用的XML技术,用于将一个XML文件转换为另一种XML,HTML或者其他的格式。XSLT为转换XML文件详细定义了自己的语法,函数和操作符。通常由XSLT引擎完成转换,XSLT引擎读取XSLT语法编写的XML样式表或者XSL文件的指令。XSLT大量使用递归来执行转换,一个常见XSLT使用就是将XML文件中的数据作为HTML页面显示,XSLT也可以很方便地把一种XML文件转换为另一种XML文档。
题目5)DOM和SAX解析器有什么区别?
答:DOM和SAX解析器有什么区别?
答:DOM和SAX解析器主要区别在于它们解析XML文档的方式。使用DOM解析时,XML文档以树形结构的形式加载到内存中,而SAX是事件驱动的解析器。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
章节Ch06- 一维数组及经典应用
题目1)数组的概念:
答:数组是具有相同数据类型的数据集合。相同的数据类型是指 数组中每个数据都是同一类型数据,或属于基本数据类型中相同类型的数据,或属于对象类型中相同类型的数据。按照维度来划分,数组分为一维数组,二维数组和多维数组,每一维代表一个空间的数据。
题目2)数组在平时的程序代码中使用是否频繁?
答:不频繁,因为数组的缺点是一旦声明,就不能改变容量的大小。
题目3)实现数组排序和查询相应元素的索引方法是什么?
答:Arrays类的sort()方法实现排序功能。binarySearch()方法实现查找元素索引功能。
题目4)数组有没有length()方法?String有没有length()方法?
答:数组没有length()方法,有length属性。String有length()方法,在JavaScript中获取字符串。
题目5)手写冒泡排序法?
冒泡排序法:概念:冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。
冒泡排序法代码实现:
public class BubbleSortTest {
public static void main(String[] args) {
int[] arr = new int[]{-12,3,2,34,5,8,1};
//冒泡排序
for(int i = 0;i < arr.length-1;i++){
for(int j = 0;j <arr.length-1-i;j++){
if(arr[j] >arr[j+1]){
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
//遍历
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]+"\t");
}
}
}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
章节Ch06 - 项目实战-嗖嗖移动业务大厅(一)
(一)题目 1) 什么是 Java 集合 API?
答:Java 集合 API 是用来表示和操作集合的统一框架,包括接口、实现类以及帮助程序员完成一些编程的算法。
题目 2) 线程和进程有什么区别?
答:线程是进程的子集,一个进程可以有很多线程,每条线程并行执行不同的任务。不同的进程使用不同的内存空间,而所有的线程共享一片相同的内存空间。
题目 3) 如何在 Java 中实现线程?
答:在语言层面有两种方式。java.lang.Thread 类的实例就是一个线程但是它需要调用java.lang.Runnable 接口来执行,由于线程类本身就是调用的 Runnable 接口所以你可以继承 java.lang.Thread 类或者直接调用 Runnable 接口来重写 run()方法实现线程。
题目 4) Iterator 和 Listlterator 的区别是什么?
答:(1)Iterator 可以遍历 Set 和 List 集合,而 ListIterator 只能遍历 List。
(2)Iterator 只可以向前遍历,而 LIstIterator 可以双向遍历。
(3)ListIterator 从 Iterator 接口继承,然后添加了一些额外的功能,比如添加一个元素、
替换一个元素、获取前面或后面元素的索引位置。
题目 5) HashMap 和 HashTable?
答:两者都是用 key-value 方式获取数据。Hashtable 是原始集合类之一(也称作遗留类)。
HashMap 作为新集合框架的一部分在 Java2 的 1.2 版本中加入。它们之间有以下区别:
(1) HashMap 允许 key 和 value 为 null,而 HashTable 不允许。
(2)HashTable 是同步的,而 HashMap 不是。所以 HashMap 适合单线程环境,HashTable适合多线程环境。
(3)HashMap 提供对 key 的 Set 进行遍历,因此它是 fail-fast 的,但 HashTable 提供对key 的 Enumeration 进行遍历,它不支持 fail-fast。
(4)HashTable 被认为是个遗留的类,如果寻求在迭代的时候修改 Map,应使用CocurrentHashMap
感悟:
1.国庆回家看日出的schedule,没有实现。
2.作业要置前,不能置后。
3.培训已经整整2个月,过去三分之一了。
4.老师每天讲的课程一定要弄清楚。预习一定看三遍弄懂,思维导图来不及简单画图。课本要看。关机,断网。课程视频要看。。
5.找到自己在做什么,进入角色和状态节奏。做好当下。不抱怨,时间记得每一份努力。
6.想也是浪费时间,要做的事情赶紧做,结果再说。30岁之前赶紧做自己内心想做的事情,查阅资料,知道这件神奇和自己脑子里想的事情是否一致。
7.挣钱不易,花钱三思。
8.学校太美,知努力。
10.求人不如求己。求人难,求己易。
11. 主观能动性,目的性,任务性。找到针对性,主题。围绕中心句详细写。
day20191006假期作业收尾的更多相关文章
- 假期作业03:使用IDE开发你的Java程序
假期作业03:使用IDE开发你的Java程序 一.使用Eclipse创建一个Java项目HelloWorldPrj,编写一个Java程序并运行. 首先要下载eclipse. (注意这里要选一个中国的, ...
- 假期作业02:安装JDK与文本编辑器并编写第一个Java程序
假期作业02:安装JDK与文本编辑器并编写第一个Java程序 一.安装JDK与文本编辑器并编写第一个java程序 首先在oracle官网(需要创建账号,进行登录后方可使用)按照自己的需求下载JDK(h ...
- 2003031121-浦娟-python数据分析五一假期作业
项目 内容 课程班级博客链接 20级数据班(本) 这个作业要求链接 Python作业 博客名称 2003031121-浦娟-python数据分析五一假期作业 要求 每道题要有题目,代码(使用插入代码, ...
- RabbitMQ Lazy Queue 延迟加载
Lazy Queue 在著名的单例设计模式中就有懒汉式的实现方式,也就是只有在你需要的时候我才去加载. 这让博主想到了以前上学的时候,每到了假期的假期作业,在假期的时候是从来不做的.只有在快开学老师要 ...
- Daily record-December
December 11. All circles have the same shape. 所有圆的形状都是相同的.2. She first drew a circle on the board. 她 ...
- 艾妮记账本微信小程序开发(失败版)
这是一个寒假假期作业,要求是用web开发或者微信小程序或者手机app开发的,我本来是打算用微信小程序开发的,但由于这个后台数据库连接需要通过https认证后的浏览器再访问MySQL.所以做到后台数据库 ...
- 20175126《Java程序设计》第一周学习总结
# 学号 20175126 <Java程序设计>第一周学习总结 ## 教材学习内容总结 - 1.安装了WINDOS系统的JDK,并学会了利用JDK编写并编译JAVA程序的基本方法. ...
- C语言程序设计II—第七周教学
第七周教学总结(8/4-14/4) 教学内容 本周的教学内容为:8.3 冒泡排序,知识点:指针与数组.重点难点:指针.数组与地址的关系:数组名作为函数参数.要求学生能够使用数组名作为函数参数进行熟练编 ...
- 洛谷 P2285 BZOJ 1207 [HNOI2004]打鼹鼠
题目描述 鼹鼠是一种很喜欢挖洞的动物,但每过一定的时间,它还是喜欢把头探出到地面上来透透气的.根据这个特点阿牛编写了一个打鼹鼠的游戏:在一个n*n的网格中,在某些时刻鼹鼠会在某一个网格探出头来透透气. ...
随机推荐
- Django配置实现数据库读写分离
django在进行数据库操作的时候,读取数据与写数据(增.删.改)可以分别从不同的数据库进行操作. 1. 在配置文件中增加slave数据库的配置 2. 创建数据库操作的路由分发类 在meiduo_ma ...
- Android H5混合开发(2):自定义Cordova插件
前言 Cordova虽然定义了很多基础的插件,供H5端使用原生设备的功能. 但是,如果业务相关的功能,需要提供给H5端使用,那么,就需要我们自定义插件了. 这个"自定义"不是指由A ...
- Idea导入Web项目并发布到Tomcat
Idea导入现有的Web项目并发布到Tomcat,发现Tomcat没有自动发布 问题: 导入一个Web项目时,idea并没有把他当成web,所以需要自己修改项目结构 1.导入项目 打开 File-&g ...
- 【原创】go语言学习(二十一)Select和线程安全
目录 select语义介绍和使用 线程安全介绍 互斥锁介绍和实战 读写锁介绍和实战 原子操作介绍 select语义介绍和使用 1.多channel场景 A. 多个channel同时需要读取或写入,怎么 ...
- 学习笔记47_关于Session局限性问题,Memcache
三大问题: 1.Session性能问题 2.不能稳定输出.考虑使用进程外Session 3.组成集群,登录数据进行共享 (比如说像百度,百度网盘,百度文库等是使用不同的服务机器的,怎样避免使用的时候不 ...
- JavaScript 域名学习及对象的继承实现
1.定义命名空间 var Namespace = new Object(); Namespace.register = function(path){ var arr = path.spl ...
- IDEA升级,提示"Connection Error Failed to prepare an update"
问题来源: 之前修改了IDEA的默认配置文件路径,然后升级新版本时就无法升级,提示"Failed to prepare an update Temp directory inside ins ...
- 模拟实现IoC容器
Spring的IoC核心就是控制反转,将对实现对象的操作控制器交出来,由IoC容器来管理,从配置文件中获取配置信息,Java对XML文档提供了完美的支持,dom4j功能强大,而下面我就用JDOM这一开 ...
- fpm打包神奇rpm包升级python2.7.16
fpm打包神器参考文档:https://www.cnblogs.com/flintlovesam/p/6594635.html FPM的安装:安装ruby环境和gem命令: yum -y instal ...
- (C#)WPF:Margin属性和Padding属性的介绍
1.在进行界面设计时,Margin 和Padding都是对边距进行限制的,其区别在于“一个主外,一个主内”. Margin (边缘)是约束控件与容器控件的边距,设置值分别代表左上右下,使用 Margi ...