- 博客(21)
- 资源 (1)
- 收藏
- 关注
原创 xml
XML总结概念可扩展标记语言可扩展:在XML中使用的标签是可以由用户自定义的标记语言:存储文本的同时,还存储文本相关的其他信息XML的应用场景传输数据用作配置文件XML语法文档声明:写法一 <?xml version=“1.0”>写法二 <?xml version=“1.0” encoding=“utf-8”>…XML两种解析方式概述dom解析:...
2018-12-22 12:42:39
198
原创 散列表(哈希表)
Hash Map和Hash Table的区别,Hash Map中的key可以是任何对象或数据类型吗?HashTable是线程安全的么?• Hash Map和Hash Table的区别• Hashtable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。• Hashtable不允许 null 值(key 和 v...
2018-12-21 21:46:21
260
原创 线程间的通信
1. 线程间通信概述在程序运行过程中,线程是相对独立的单位,多个线程之间并行的执行,并不会有太多的沟通,每个线程都有属于自己的内存空间,且无法互相访问,所以可以认为多个线程之间是隔离的状态,并没有过多的信息传递。而线程在并发运行的过程中,还会无序抢夺cpu,造成执行的顺序不确定,使执行的结果变得不可预期有时我们希望能够实现 多个线程之间进行信息的传递 或 执行过程的协调 ,这样的技术称之为线...
2018-09-21 21:40:33
258
原创 多线程死锁问题
1. 死锁概述 死锁是一种并发锁定的特殊状态,指的是,当具有多个共享资源时 一部分线程持有一部分资源的锁 要求另外的线程持有的另外的资源的锁 形成了各自持有各自的锁而要求对方的锁的状态 这样 进入了一个互相等待的状态 都无法继续执行 则称之为产生了死锁 死锁并不是一种真正的锁,而是一种特殊状态,会造成程序无法继续运行或退出,所以要尽力的解决死锁 案例: package cn...
2018-09-21 21:28:32
243
原创 多线程并发安全----线程知识点总结(一)
多线程概述1. 进程和线程 a. 进程 所谓的进程其实就是一个程序或服务运行的过程在操作系统中的体现,操作系统中一个独立运行的程序或服务就是一个进程。 b. 多进程 现代的操作系统都可以支持同时运行多个程序和服务,体现在进程上,就是多个进程可以并行的执行,这称之为操作系统支持多进程。 c. 线程 一个进程的内部还可以划分出多个并行执行的过程,称之为在进程内部存在线程。 d. ...
2018-09-19 19:07:42
425
原创 IO流总结
1. IO流概念 InputOutputStream - 输入输出流 Java程序输入输出数据的方式2. IO流的分类 根据方向可以分为 输入流 输出流 根据操作的内容的不同 分为 字节流 和 字符流 两两相乘就得到了四大基本流: 输入流 输出流 字符流 Reader Writer 字...
2018-09-16 19:12:02
184
原创 练习:创建一个多线程的TCP 服务器以及客户端
已知在服务器端的目录下有一个worldcup.txt,其格式如下: 2006/意大利 2002/巴西 … 该文件采用”年份/世界杯冠军 “的方式保存每一年世界杯冠军的信息。 要求从客户端输入年份,从服务器端查询,若查询到,返回举办地;反之,返回”未查询到该年份的世界杯举办地”。 class Client implements Runnable { private Soc...
2018-09-14 21:32:43
1723
原创 集合 - Collection<E> Java笔记总结
存储多个同一类型的数据的容器 — 大小不固定 - 泛型 - 在集合中的作用是用于表示元素类型。- 由于泛型的限制,集合中只能存储对象。 String[] arr; arr的数据类型是数组,元素类型是String Collection c; c的数据类型是集合,元素类型是String 5,7, 2 — Collection CollectionCollection的重要方法的使用:...
2018-09-13 20:37:43
318
原创 Map映射总结
一个键对应一个值。键是唯一的,值可以重复。 每一个键和它所对应的值构成了键值对。 一个Map是由多个键值对来组成。 将每一个键值对看作一个对象,抽取出来一个代表键值对的接口Entry, Entry是Map中的内部接口 — 一个Map是由多个Entry对象来组成的 Map不是集合,但是是Java集合框架的成员。 Java集合框架(Java Collections Framework)包...
2018-09-09 16:43:05
2489
原创 数组的扩容问题
/* 数组扩容(复制)---数组长度不变 System.arraycopy(源数组,源数组开始下标,新数组,新数组开始的下标,复制数组元素的个数);*/import java.util.Arrays;class KuoRong{ public static void main(String[] args){ //源数组 ...
2018-09-09 16:31:04
508
原创 数组的查找
元素的查找:元素无序,循环遍历;元素有序,二分查找 - 时间复杂度O(logn),空间复杂度o(1)class ArraySearch{ public static void main(String[] args){ /*//1.定义数组,无序 int[] arr={1,6,3,8,4}; //要查找的数 int n...
2018-09-09 16:29:59
215
原创 垃圾分代回收机制
针对的是堆内存。 Java中的每种数据类型大小都是确定的,所以所有的内存是由Java自己进行分配,意味着内存的管理和回收也是由JVM自己进行—在Java中一旦产生内存问题导致程序员无法处理。理论上在正常情况下Java中的堆内存是足够使用的 — 当堆内存使用的负荷量(一般情况下70%)超过一定限度的时候,会启动垃圾回收器(Garbage Collector — GC)进行堆内存的回收释放 Hea...
2018-09-09 16:22:37
283
原创 浅谈面向对象及特征,加深初学者对面向对象的理解
面向对象## 面向对象是一种思维方式,相对于面向过程而言的。 面向过程在流程中关注动作执行的每一个细节 — 自己动手做 面向对象重点找这个对象,只要找到了对象,那么这个对象所具有的功能就能够被使用 — 找别人做 类与对象的关系 根据一类对象进行抽取和总结,将这类对象的特征抽取成了属性,将这类对象的行为抽取成了方法,用类表示这一类对象 -&amp;gt; 类是对象的抽取和概括的过程面向...
2018-09-09 15:56:54
313
原创 一个线程作为生产者,一个线程作为消费者。生产者每生产一次,消费者就消费一次。生产者每次生产一定数量的商品,加上上次消费剩余的数量,而总数量不超过1000;总感觉代码不是很完善,求指教??
/** * 一个线程作为生产者,一个线程作为消费者。生产者每生产一次,消费者就消费一次。 * 生产者每次生产一定数量的商品,加上上次消费剩余的数量作为本次所提供的总数量, * 而总数量不超过1000;消费者则在生产者本次提供的总数量的前提下进行消费。 * 每次生产和消费的数量可以利用随机数计算,但是每次生产的总数量加上上次剩余的数量不能超过1000; * 每次消费的数量不能超过本次生产的...
2018-09-07 14:06:13
721
原创 LinkedList---链表各种方法的实现
public class ListExer2 { public static void main(String[] args) { LinkList list = new LinkList(); list.add("a"); list.add("b"); list.add("c"); // list.add(0..
2018-09-06 19:37:00
219
原创 复制D:\\day05目录下的所有文件到D:\\copy,并将.txt文件改为.java文件。
**解题思路: 1.首先定义一个静态的refile方法,参数传入两个文件路径 2.要复制目录下的所有文件,首先查询File类的方法,可以使用listFiles方法得到目录下的文件 3.想到这问题基本就解决了,遍历目录下的所有文件,如果不是.txt文件,那么就直接利用流进行复制(复制路径要进行路径名的重设,也就是拼串操作,具体见代码)如果是.txt文件,那么就要将文件名替换为.java**...
2018-09-05 15:12:50
931
转载 MyEclipse 常用快捷键
-------------------------------------MyEclipse 快捷键1(CTRL) (标星的为常用的快捷键)-------------------------------------** Ctrl+1 快速修复** Ctrl+D: 删除当前行 Ctrl+Q 定位到最后编辑的地方 Ctrl+L 定位在某行 Ctrl+O 快速显...
2018-09-05 14:43:01
182
原创 java交换两个值的三种方法 经典
1.中间变量(在开发中常用) int c=a; a=b; b=c; System.out.println("a的值: "+a+" b的值: "+b); 2.按位异或(面试,只能是整数) a=a^b; b=a^b;//a^b^b=a a=a^b;//a^b^a=b Syst...
2018-08-02 19:42:07
4865
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人