随笔分类 - 07 Java高级特性
摘要:1. JMS基本概念 JMS(Java Message Service) 即Java消息服务。它提供标准的产生、发送、接收消息的接口简化企业应用的开发。 它支持两种消息通信模型:点到点(point-to-point)(P2P)模型和发布/订阅(Pub/Sub)模型。 P2P 模型规定了一个消息只能有
阅读全文
摘要:Java IO 是一套Java用来读写数据(输入和输出)的API。大部分程序都要处理一些输入,并由输入产生一些输出。Java为此提供了java.io包。 代码 github地址:https://github.com/loveincode/StudyTest/tree/master/src/IO Ja
阅读全文
摘要:Channels 通道 Channel 有点象流。 数据可以从Channel读到Buffer中,也可以从Buffer 写到Channel中。 Buffers Buffer覆盖了你能通过IO发送的基本数据类型:byte, short, int, long, float, double 和 char S
阅读全文
摘要:serialVersionUID适用于Java的序列化机制。简单来说,Java的序列化机制是通过判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID进行比较,如果相同
阅读全文
摘要:1. 概念 RPC,全称为Remote Procedure Call,即远程过程调用,它是一个计算机通信协议。它允许像调用本地服务一样调用远程服务。它可以有不同的实现方式。如RMI(远程方法调用)、Hessian、Http invoker等。RPC是与语言无关的。直观说法就是A通过网络调用B的过程方
阅读全文
摘要:1. 序列化介绍 Java 提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列,该字节序列包括该对象的数据、有关对象的类型的信息和存储在对象中数据的类型。 将序列化对象写入文件之后,可以从文件中读取出来,并且对它进行反序列化,也就是说,对象的类型信息、对象的数据,还有对象中的数据
阅读全文
摘要:1. 背景 网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。 java.net 包中 J2SE 的 API 包含有类和接口,它们提供低层次的通信细节。你可以直接使用这些类和接口,来专注于解决问题,而不用关注通信细节。 java.net 包中提供了两种常见的网络协议的支持:
阅读全文
摘要:http://zalezone.cn/2014/09/17/NIO%E7%B2%BE%E7%B2%B9/ 1. 前言 我们在写java程序的时候,为了进行优化,把全部的精力用在了处理效率上,但是对IO的关注却很少。这也可能是由以前java早期时JVM在解释字节码时速度慢,运行速率大大低于本地编译代码
阅读全文
摘要:1、BIO、NIO、AIO解释 Java BIO : 同步并阻塞 (Blocking IO) 一个连接一个线程 即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。 Java NIO : 同步非阻塞 (Non-Block
阅读全文
摘要:一个对象变量可以指示多种实际类型的现象称为多态 允许不同类的对象对同一消息做出响应。方法的重载、类的覆盖正体现了多态。 1、多态的机制 1.1 本质上多态分两种 重载(overload 发生在一个类中,方法名必须相同,不同参数)就是编译时多态的一个例子,编译时多态在编译时就已经确定,运行时运行的时候
阅读全文