## 概念 synchronized 是 Java 中的关键字,利用锁的机制来实现同步的。 锁机制有如下两种特性: - 互斥性:即在同一时间只允许一个线程持有某个对象锁,通过这种特性来实现多线程中的协调机制。只有这样,在同一时间只有一个线程对需同步的代码块(复合操作)进行访问。互斥性我们通常称为操作的原子性。 - 可见性:必须确保在锁被释放之前,对共享变量所做的修改,对于随后获得...
## 前言 在另一篇文章《[使用Java Socket演示客户端与服务端的一问一答](http://www.i366211.com/archives/59/ "使用Java Socket演示客户端与服务端的一问一答")》中有着重提到该文演示的客户端与服务端的通信是一问一答式的,但是当时没有解答原因是什么。这篇文章准备演示一个简单的自由沟通式聊天程序,因此我们要先明白之前的客户端与服务端只能...
## 一、什么是套接字(socket) 套接字(socket)是一个抽象层,应用程序可以通过它发送或接收数据,可对其进行像对文件一样的打开、读写和关闭等操作。 套接字允许应用程序将I/O插入到网络中,并与网络中的其他应用程序进行通信。 网络套接字是IP地址与端口的组合。 Socket是Java网络编程的基础,所以有必要了解它的原理及使用。这篇文章主要介绍如何使用java的socket...
记录一下使用Java获取一个文件夹(及其子文件夹)下的最大文件和最小文件。核心思想是对File类的方法进行灵活的调用,主要用到File类的以下几个方法: - exists(): 判断文件/文件夹是否存在 - isFile(): 判断是否是文件 - isDirectory(): 判断是否是文件夹 - length(): 获取文件大小(单位b) 具体实现代码及注释如下: ``...
Java的所有异常可以分为**异常(Exception)**和**错误(Error)两大类**,其中异常又可分为**可查异常**(CheckedException,或理解为编译时异常)和**运行时异常**(RuntimeException)。 #### 一、异常(Exception) 1、可查异常(CheckedException): 必须进行处理的异常,不处理的话是无法通...