12 2017 档案

摘要:详解java.lang.ref包中的4种引用 阅读全文
posted @ 2017-12-31 23:17 midiyu 编辑
摘要:文本主要内容: 链表结构 单链表代码实现 单链表的效率分析 一、链表结构: (物理存储结构上不连续,逻辑上连续;大小不固定) 概念: 链式存储结构是基于指针实现的。我们把一个数据元素和一个指针称为结点。 数据域:存数数据元素信息的域。 指针域:存储直接后继位置的域。 链式存储结构是用指针把相互直接关 阅读全文
posted @ 2017-12-31 21:45 midiyu 编辑
摘要:一、线性结构: 如果一个数据元素序列满足: (1)除第一个和最后一个数据元素外,每个数据元素只有一个前驱数据元素和一个后继数据元素; (2)第一个数据元素没有前驱数据元素; (3)最后一个数据元素没有后继数据元素。 则称这样的数据结构为线性结构。 二、线性表抽象数据类型: 1、线性表抽象数据类型的概 阅读全文
posted @ 2017-12-31 18:34 midiyu 编辑
摘要:http://www.cnblogs.com/lijunamneg/archive/2013/03/25/2980991.html 阅读全文
posted @ 2017-12-30 21:39 midiyu 编辑
摘要:一.Set1.HashSet 2.LinkedHashSet 3.TreeSet 二.List1.ArrayList 2.Stack 3.LinkedList 实现栈: 实现队列; 三.Queue1.PriorityQueue 四.Map 阅读全文
posted @ 2017-12-29 18:51 midiyu 编辑
摘要:HashMap HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。 既然要介绍HashMap,那么就顺带介绍HashTable,两者进行比对。HashMap和Hashtable都是Map接口的经典实现类,它们之间的关系完全类似于之前介绍的ArrayList和Vector的 阅读全文
posted @ 2017-12-29 18:20 midiyu 编辑
摘要:Queue用于模拟队列这种数据结构,队列通常是指“先进先出”(FIFO)的容器。新元素插入(offer)到队列的尾部,访问元素(poll)操作会返回队列头部的元素。通常,队列不允许随机访问队列中的元素。 这种结构就如同我们生活中的排队一样。 下面我们就来介绍Queue中的一个重要的实现类Priori 阅读全文
posted @ 2017-12-29 17:19 midiyu 编辑
摘要:一、List集合 关于List集合的介绍及方法,可以参考第一篇文章。 List集合判断元素相等的标准 List判断两个对象相等只要通过equals()方法比较返回true即可(关于equals()方法的详解可以参考第二篇文章中的内容)。 下面以用代码具体展示。 创建一个Book类,并重写equals 阅读全文
posted @ 2017-12-29 15:30 midiyu 编辑
摘要:Java中的Object类是所有类的父类,它提供了以下11个方法: 下面我们一个个方法进行分析,看这些方法到底有什么作用: getClass方法 getClass方法是一个final方法,不允许子类重写,并且也是一个native方法。 返回当前运行时对象的Class对象,注意这里是运行时,比如以下代 阅读全文
posted @ 2017-12-29 14:16 midiyu 编辑
摘要:一、HashSet类 HashSet简介 HashSet是Set接口的典型实现,实现了Set接口中的所有方法,并没有添加额外的方法,大多数时候使用Set集合时就是使用这个实现类。HashSet按Hash算法来存储集合中的元素。因此具有很好的存取和查找性能。 HashSet特点 1.不能保证元素的排列 阅读全文
posted @ 2017-12-28 12:06 midiyu 编辑
摘要:Java集合类简介: Java集合大致可以分为Set、List、Queue和Map四种体系,其中Set代表无序、不可重复的集合;List代表有序、重复的集合;而Map则代表具有映射关系的集合,Java 5 又增加了Queue体系集合,代表一种队列集合实现。 Java集合就像一种容器,可以把多个对象( 阅读全文
posted @ 2017-12-28 11:56 midiyu 编辑
摘要:HashMap、HashSet、HashTable之间的区别是Java程序员的一个常见面试题目,在此仅以此博客记录,并深入源代码进行分析: 在分析之前,先将其区别列于下面: 源代码分析: 对于区别1,看下面的源码 从上面的代码中得出的结论是HashSet的确是采用HashMap来实现的,而且每一个键 阅读全文
posted @ 2017-12-27 20:56 midiyu 编辑
摘要:有两个类都提供了一个多种用途的hashTable机制,他们都可以将可以key和value结合起来构成键值对通过put(key,value)方法保存起来,然后通过get(key)方法获取相对应的value值。一个是前面提到的HashMap,还有一个就是马上要讲解的HashTable。对于HashTab 阅读全文
posted @ 2017-12-27 20:48 midiyu 编辑
摘要:在上一篇博文(HashMap原理及实现学习总结)详细总结了HashMap的实现过程,对于HashSet而言,它是基于HashMap来实现的,底层采用HashMap来保存元素。所以如果对HashMap比较熟悉,那么HashSet的原理应该很好理解! 一.HsahSet概述 HashSet实现Set接口 阅读全文
posted @ 2017-12-27 20:36 midiyu 编辑
摘要:在前篇博文中(HashMap原理及实现学习总结)详细总结了HashMap的原理及实现过程,这一篇是对HashMap的源码分析。 阅读全文
posted @ 2017-12-27 20:20 midiyu 编辑
摘要:HashMap是Java中最常用的集合类框架之一,是Java语言中非常典型的数据结构。本篇主要是从HashMap的工作原理,数据结构分析,HashMap存储和读取几个方面对其进行学习总结。关于HashMap的完整源码分析请查看下一篇。 一. HashMap的工作原理 HashMap基于hashing 阅读全文
posted @ 2017-12-27 20:17 midiyu 编辑
摘要:一、LinkedList实现原理概述 LinkedList 和 ArrayList 一样,都实现了 List 接口,但其内部的数据结构有本质的不同。LinkedList 是基于链表实现的(通过名字也能区分开来),所以它的插入和删除操作比 ArrayList 更加高效。但也是由于其为基于链表的,所以随 阅读全文
posted @ 2017-12-27 16:35 midiyu 编辑
摘要:一、ArrayList介绍 ArrayList是一种线性数据结构,它的底层是用数组实现的,相当于动态数组。与Java中的数组相比,它的容量能动态增长。类似于C语言中的动态申请内存,动态增长内存。 当创建一个数组的时候,就必须确定它的大小,系统会在内存中开辟一块连续的空间,用来保存数组,因此数组容量固 阅读全文
posted @ 2017-12-27 15:59 midiyu 编辑
摘要:http://blog.csdn.net/lcore/article/details/8868943 https://www.jianshu.com/p/63e76826e852 https://www.jianshu.com/p/b54f1df33f84 https://zhuanlan.zhih 阅读全文
posted @ 2017-12-26 21:14 midiyu 编辑
摘要:并发:同一段时间内多个程序执行(注意区别并行和并发,前者是同一时刻的多个事件,后者是同一时间段内的多个事件) 共享:系统中的资源可以被内存中多个并发执行的进线程共同使用 虚拟:通过时分复用(如多道程序技术,分时系统)以及空分复用(如虚拟内存)技术实现把一个物理实体虚拟为多个 异步:系统中的进程是以走 阅读全文
posted @ 2017-12-19 14:57 midiyu 编辑
摘要:32 1.”static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法? “static”关键字表明一个成员变量或者是成员方法与类相关,可以在没有所属的类的实例变量的情况下被访问。 Java中static方法不能被覆盖,因为方法覆盖是基于运行 阅读全文
posted @ 2017-12-18 21:49 midiyu 编辑
摘要:第一章:数据库概述1.数据(data) 数据库(DB) 数据库管理系统(DBMS) 数据库系统(DBS)2.数据库管理系统提供的功能: (1)数据定义语言:DDL (2)数据操作语言:DML 基本的数据操作有两类:检索(查询)和更新(插入,删除,更新) 查-插-删-更 (3)数据控制语言(DCL): 阅读全文
posted @ 2017-12-12 21:51 midiyu 编辑
摘要:交换机### 是一种基于MAC(网卡的硬件地址)识别,能完成封装转化数据包功能的网络设备。 具有流量控制能力,主要用于组建局域网。例如:搭建一个公司网络,一般会使用交换机。常见的交换机种类以及以太网交换机、光纤交换机等。 路由器### 是链接Internet中个局域网、广域网的网络设备。 它是网络的 阅读全文
posted @ 2017-12-08 16:59 midiyu 编辑
摘要:UML(Unified Modeling Language)中文统一建模语言,是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。 类之间的关系 在UML类图中类与类之间存在多种关系,如泛化(Generalization)关系,实现(Realiza 阅读全文
posted @ 2017-12-04 22:44 midiyu 编辑
摘要:https://zhuanlan.zhihu.com/p/23755202 https://juejin.im/entry/592257b62f301e006b183b95 http://blog.csdn.net/liuqiyao_01/article/details/12205549 阅读全文
posted @ 2017-12-02 22:51 midiyu 编辑
摘要:1 进程和线程的区别 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,它是系统进行资源分配的一个独立单位。例如,用户运行自己的程序,系统就创建一个进程,并为它分配资源,包括各种表格、内存空间、磁盘空间、I/O设备等,然后该进程被放入到进程的就绪队列,进程调度程序选中它,为它分配CPU及 阅读全文
posted @ 2017-12-02 22:46 midiyu 编辑
摘要:1、进程管理 1、进程是并发过程中程序的执行过程 2、进程的特征:结构特征动态性并发性独立性异步性 3、临界区指在每个进程中访问临界资源的那段代码 4,现在操作系统中申请资源的基本单位是进程,在CPU得到执行的基本单位是线程,进程是由程序段、数据段、PCB组成的 5,对临界资源应采取互斥访问方式来实 阅读全文
posted @ 2017-12-02 22:43 midiyu 编辑