day20191001国庆默写恢复

重在理解,而不是死记硬背。认真专心看6遍,做6遍。

学会码字,每天码字二小时。持之以恒。

任重道远,出发,走多少算多少。100分的试卷,会做20分也比一个努力也没有一个也不会好。机会只给有准备的人。

考研,人生应该有这么一段经历,实现自我价值,人生没有那条路好走,读书是最脚踏实地的路。上学。读书,求知。

断了后路,只有这一条路可以走。知之为知之,不知为不知。

xiang做事情和利索,值得学习。不拖泥带水。笃定,知道自己做什么。

赵丽颖,idom,从不抱怨,做这件事情就做好,付出了也有收获了,世界就是这样平衡的。樱桃。

20191004思考

(1)约束。投资自己,只有自己可以用知识让自己变得值钱,父母什么也给不了你。

(2)吾日三省其身。问自己为什么。我今天要完成什么任务?我今天做了什么?花了多少时间?

(3)别想着吃,找事情做,找比吃更有意义的事情做。知道自己代码目标读书健身。减肥90斤45㎏。读书考研究生考本校。本校很优秀。考六级考教师资格证。
(4)国庆假过半,我的任务还没有开始,那就开始,做30也比0好。入门的心。万事如爬山。不忘初心,方得始终。记住我为什么做这件事情的初心。
(5)把每一天当做上班前的最后一天或上学前的最后一天。

(6)今天的事情今天要做完。今天的任务责任。把每一场考试当做人生最重要的考试。把每一次作业当做最后一次作业最重要的作业。人生来时有使命的。

(7)女人细心细致精致,不能像大老爷们儿一样粗糙。精致。优雅。气质。10分钟,20分钟可以做成什么事情。定时定点做事情。有规划有效率,老师一节课要讲完什么知识。

(8)花了24800元培训,要有效果,不能敷衍,每一分钱都来之不易。对的起决定做的事情,决定攀登的大山,欲穷千里目,更上一层楼。


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

章节: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。迭代器允许调用者在迭代过程中移除元素。

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
章节 Ch02 - 实用类介绍
题目 1) 如何将字符串转化成 int?

答:使用包装类 Integer。 Integer.valueOf("2");其他基本数据类型都是类似。

题目 2) 为什么在 Java 中存储密码要使用 char[],而不使用 String?
答:因为 String 是不可变的,当 String 创建之后,就不会再改变了。而 char[]是可变的,程
序员在用完之后可以将其改变,不会留下任何原始数据。所以,在使用密码时,一般都是会用
char 数组,例如 JavaSwing 中的 JPassWordField,获取密码框的值就是使用 char 数据。而
不使用 String。
题目 3) 如何将字符串转换成时间 Date?
答:使用 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date =sdf.parse("2017-12-10")。
题目 4) 字符串对象 String,StringBuilder ,StringBuffer 之间的区别?
答:String 不可变的,其余两个为可变的,也就是可以自由增加或者删除字符串。StringBuilder
和 StringBuffer,前者是线程不安全的,后者是线程安全的。理论上 StringBuilder 效率更高。
字符串大量拼接时,建议使用 StringBuilder ,StringBuffer。
题目 5) 计算一个字符串某个字符的出现次数?
答:(1)使用 charAt 方法截取之后,循环判断。
  (2)使用 apache commons lang 包中的 StringUtils:
  int n = StringUtils.countMatches("ababababab", "a");
  System.out.println(n);

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
章节 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是事件驱动的解析器。

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

章节 Ch05 - Java 反射机制
题目 1) 反射获取字节码对象方式、创建对象的两种方式?

答:①获取字节码方式三种:
    (1)类名.class,例如:System.class
    (2)对象.getClass(),例如:new Date().getClass();
    (3)Class.forName("类名"),例如:Class.forName("java.util.Date");
  ②创建对象的两种方式:
    (1)直接用字节码创建对象,只能调用默认的构造方法:字节码.newInstance();
    (2)获取构造方法 Constructor,然后调用构造方法创建,可以通过参数不同调用不同的构造方式。
题目 2) 怎么理解反射,反射的应用?
答:在运行状态下,通过类的字节码文件去解剖一个类,使用该类的构造方法、成员变量、成员函数。反射就是把 Java 类中的各种成分映射成相应的 Java 类。一般情况下我们要解决某个问题,先找到相关的类,创建该类的对象,然后通过该对象调用对应的方法来解决问题。反射是一个正好相反的过程, 开始可能并没有类可以解决这个问题, 而我们却先用一个当时可能并不存在的方法解决了这个问题,后来才有的这个类。这其实就是框架的原理,现有的框架再有的解决问题的类。框架描述了整体,制订了功能方法的规范,具体的实现之后按照这个规范编写。这些都需要靠反射来完成。使用框架有良好的扩展性, 某部分功能的优化不需要涉及程序整体, 只需要修改特定的部分就好了,然后通过配置文件,获取对应的类名,就可以了。
题目 3) 什么是 reflection?
答:Java 中的反射是一种强大的工具,它能够创建灵活的代码,这些代码可以在运行时装配,无需在组件之间进行链接。反射允许在编写与执行时,使程序代码能够接入装载到 JVM 中的类的内部信息,而不是源代码中选定的类协作的代码。这使反射成为构建灵活应用的主要工具。需要注意的是,如果使用不当,发射的成本会很高。
题目 4) 反射的原理是什么?
答:反射是为了能够动态的加载一个类,动态的调用一个方法,动态的访问一个属性等动态要求而设计的。它的出发点就在于 JVM 会为每个类创建一个 java.lang.Class 类的实例,通过该对象可以获取这个类的信息,然后通过使用java.lang.reflect包下得API以达到各种动态需求。
题目 5) Class 类的含义和作用是什么?
答:每一个 Class 类的对象就代表了一种被加载进入 JVM 的类,它代表了该类的一种信息映射。开发者可以通过3 种途径获取到 Class 对象。
①.Class 的 forName()方法的返回值就是 Class 类型,也就是动态导入类的 Class 对象的引用。public static Class<?> forName(String className) throws ClassNotFoundException
②.每个类都会有一个名称为 Class 的静态属性,通过它也是可以获取到 Class 对象的,示例代码如下:Class<Student> clazz = Student.class; // 访问 Student 类的 class 属性。
③.Object 类中有一个名为 getClass 的成员方法,它返回的是对象的运行时类的 Class 对象。因为 Object 类是所有类的父类,所以,所有的对象都可以使用该方法得到它运行时类的 Class对象,示例代码如下:Student stu = new Student();
  Class<Student> clazz = stu.getClass(); // 调用 Student 对象 getName 方法


章节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");
  }

  }
}


day20191001国庆默写的更多相关文章

  1. [每天默写一个算法]KMP

    [每天默写一个算法]KMP 作业要求:默写String的KMP算法. KMP是经典的字符串匹配算法.复杂度为O(n+m) public static class StringKMP { /// < ...

  2. hihoCoder 1041 国庆出游 (DFS)

    题意: 小Hi和小Ho准备国庆期间去A国旅游.A国的城际交通比较有特色:它共有n座城市(编号1-n):城市之间恰好有n-1条公路相连,形成一个树形公路网.小Hi计划从A国首都(1号城市)出发,自驾遍历 ...

  3. 望大神批评教育国庆无聊之作:ObjectValidator

    起因: 本人国庆无聊,不知道干嘛, 所以模仿FluentValidation写了个简化版的ObjectValidator 个人设想是能用类似fluent的方式创建验证规则,然后使用者缓存并验证自己的对 ...

  4. 用python爬虫爬取去哪儿4500个热门景点,看看国庆不能去哪儿

    前言:本文建议有一定Python基础和前端(html,js)基础的盆友阅读. 金秋九月,丹桂飘香,在这秋高气爽,阳光灿烂的收获季节里,我们送走了一个个暑假余额耗尽哭着走向校园的孩籽们,又即将迎来一年一 ...

  5. hihocoder——1041国庆出游(搜索)

    描述 小Hi和小Ho准备国庆期间去A国旅游.A国的城际交通比较有特色:它共有n座城市(编号1-n):城市之间恰好有n-1条公路相连,形成一个树形公路网.小Hi计划从A国首都(1号城市)出发,自驾遍历所 ...

  6. 牛客国庆集训派对Day4.B.异或求和(按位统计)

    题目链接 刷牛客一战到底做到的,感觉还挺有趣... \(Description\) 求给定\(n\)及序列\(A_i\),求\[\sum_{i\lt j\lt k}(A_i\oplus A_j)(A_ ...

  7. 解决默写浏览器中点击input输入框时,placeholder的值不消失的方法

    html中,placeholder作为input的一个属性,起到了在输入框中占位并提示的作用. 但是有一些浏览器,如chrome,当鼠标点击输入框时,placeholder的值不消失,只有输入数据才消 ...

  8. Day29作业及默写

    作业: 1\ 默写 黏包协议 2\ 上传大文件(文件\视频\图片) 3\ 和你的同桌调通 从你的计算机上传一个视频到你同桌的电脑上 4\ 进阶 : 带上登录 Server #Server #!/usr ...

  9. Day20作业及默写

    1.请使用C3算法计算出链接图中的继承顺序-Link 一 graph BT id1[A]-->id2[B] id2[B]-->id6[F] id6[F]-->id7[G] id1[A ...

随机推荐

  1. 设计模式C++描述----15.策略(Strategy)模式

    一. 举例说明 以前做了一个程序,程序的功能是评价几种加密算法时间,程序的使用操作不怎么变,变的是选用各种算法. 结构如下: Algorithm:抽象类,提供算法的公共接口. RSA_Algorith ...

  2. vue2.0 与 vue3.0 配置的区别

    提示:要了解vue2.0与vue3.0区别,首先你要熟悉vue2.0 从最明显最简单的开始 项目目录结构 可以明显的看出来,vue2.0与3.0在目录结构方面,有明显的不同(vue3.0我是安装了cs ...

  3. 前端技术之:Prisma Demo服务部署过程记录

    安装前提条件: 1.已经安装了docker运行环境 2.以下命令执行记录发生在MackBook环境 3.已经安装了PostgreSQL(我使用的是11版本) 4.Node开发运行环境可以正常工作   ...

  4. [考试反思]1005csp-s模拟测试60:招魂

    最近总是好一场烂一场的.没有连续两场排名波动小于20的... 没人管.反正大脸一点脸没有就又AK了. 但是T3爆零这种事情吧... 爆搜不是很难打,但是想优化想了半天剩的时间不够结果赶忙打出来了,然后 ...

  5. vue2-preview引用时报错解决办法

    1.报错信息 在完全按照官方文档安装引入vue2-preview时出现报错,报错信息如下: 从图中标记处可以知道出错是因为在\node_modules\_vue2-preview@1.0.2@vue2 ...

  6. TRANK和VTP

    需求:因为公司规模逐渐扩大,出现相同部门不同办公室的情况,老板提出新的要求:相同部门可以通信,不同部门不能通信. 利用vlan: 缺点:浪费材料,应用技术手段把两条交叉线变成一条. 因此,引进trun ...

  7. html与css连接代码

    demo01.html: <!DOCTYPE html><html> <head>  <meta charset="utf-8">  ...

  8. jade 学习笔记 - gulp 自动编译

    实时监控   jade -P -w .\test1.jade sublime 分栏,可以看到实时修改情况     1. 元素写法 doctype html <!--[if IE8]>< ...

  9. linux系统LNMP环境部署

    源码安装 nginx# yum -y install gcc openssl-devel# useradd -s /sbin/nologin nginx# tar xf nginx-1.14.0.ta ...

  10. vue-create 报错 command failed: yarn --registry=https://registry.npm.taobao.org --disturl=https://npm.taobao.org/dist 完美解决方案

    @vue/cli 3.x 创建项目失败解决方案 报错信息 command failed: yarn --registry=https://registry.npm.taobao.org --distu ...