08 2022 档案
摘要:我们知道,线程有五种生命周期:新建,就绪,运行,阻塞,死亡. 在我们编写,运行代码的过程中,可能出现线程死锁,线程阻塞等问题,下面介绍线程产生这些问题的原因,及解决的方案,保证线程能正常运行. 一、线程阻塞 线程阻塞的原因 1.调用sleep(),让线程变为睡眠状态,但是手里还拿着这个资源不放,后面
阅读全文
摘要:网络编程是指编写运行在计算机的程序,这些设备都通过网络连接起来。要实现网络通信,我们要考虑几个问题: 1.如何建立两个节点(电脑)之间的网络连接? 2.如何向另外一个节点(电脑)发送信息? 3.如何从外部节点(电脑)接收一个请求并给预响应? 4.如何利用网络协议(TCP,UDP)? 解决上面的问题,
阅读全文
摘要:一、定义 很多人应该对进程,线程,程序这几个概念混淆.程序指什么?简而言之,程序就是代码,用不同语言编写的代码;什么是进程?进程就是表示程序一次完整的执行;线程指的是,在一个进程中,有多个执行链路,每个执行链路就是一个线程. 从概念来说,进程包含多个线程(至少包含一个线程),线程是CPU调度和分配的
阅读全文
摘要:反射 我们都知道,计算机运行代码,需要经过编译-运行这两个步骤,而反射就是当程序运行状态时,通过类名,就知道这个类有什么属性,有什么方法在里面.简而言之,在 Java 中,只要给定类的名字,就可以通过反射机制来获得类的所有信息。 反射的使用 首先要获取到每一个字节码文件(.class)对应的 Cla
阅读全文
摘要:在变量、数组、对象和集合中存储的数据是暂时存在的,一旦程序结束它们就会丢失. 为了能够永久地保存这些数据,需要将其保存到磁盘文件中。Java 的 I/O流技术可以将数据保存到文本文件和二进制文件中,以达到永久保存数据的要求。 接着,java.io.File 类是专门对文件进行操作的类.其中,File
阅读全文
摘要:Map是一种键-值对(key-value)集合,在jdk1.8之后,它的结构由数组+链表,或者是数组+红黑树组成. 在Map接口中,有两个主要集合HashMap和TreeMap. HashMap 存储数据的特点是:无序,唯一;这里的唯一是指key值唯一,value值可以重复. Map 集合最典型的用
阅读全文
摘要:排序,就是将一串数组(一个列表)中的元素(整数,数字,字符串等)按某种顺序(增大,减小,字典顺序等)重新排列。 下面介绍几种排序 1.冒泡排序 定义:冒泡排序就是从第一个元素开始,遍历数组,拿相邻的两个元素比较大小,大的排后面,小的移动到前面,通过一轮,得到最后的元素是最大的数.所以,这就需要到双层
阅读全文
摘要:字符串在程序开发中不可或缺,目前有两种方式来定义字符串:一是直接双引号,注意的是,字符串里面的内容是一个String对象;二是使用String类来new一个对象 String str1="hello"; String str = new String("hello" ); 比较在我们开发中会经常用到
阅读全文