Jinliang Blog

生活有度 人生添寿

Web-cookie和session有什么区别

Web-cookie和session有什么区别

cookie是在http下,服务器或脚本能够可以维护客户工作站上信息的一种方式。它是由web服务器保存在用户浏览器上的小文件,可以包含有关的用户信息(如身份识别、密码等信息)。 session用来在客户端与服务器之间保持状态的解决方案以及存储结构。 相同点:都能进行信息存储。 不同点: cookie采用在客户端保持状态的方案,即数据保存在客户端的浏览器上;session采用的是...

Java-volatile作用

Java-volatile作用解析

解决的问题: 有时为了提高程序的运行效率,编译器会进行优化,优化的方法就是讲访问的变量缓存起来,程序读取这个变量时直接到缓存(例如寄存器)中来读取,而不是去内存中读取。这样做的好处是提高了运行效率,但是遇到多线程时,有可能变量的值因为其他线程改变了,缓存中的值不会改变,这样会导致程序读取的值和实际的值不一致。 解决: volatile是一个类型修饰符,它是被设计用来被不同线程访问和修改的变...

Java-instanceof

Java-instanceof解析

instanceof是Java语言中的一个二元运算符,作用是判断变量所指的对象是否是一个类(接口、抽象类、父类)的实例。 返回值为boolean,即TRUE或者FALSE; import java.awt.List; public class Main { public static void main(String[] args){ String hello = "Hell...

Java-Collection与Collections的区别

Java-Collection与Collections的区别解析

Collection是一个集合接口。 它提供对集合对象进行基本操作的通用接口方法,实现该接口主要有list、set、map等,该接口的设计目标是为各种具体的集合提供最大化的同意操作方式。 Collections是针对集合类的一个包装类。 它提供一系列静态方法以实现对各种集合的搜索、排序、线程安全化等操作,其中大多数方法用来存储线性表。它就是一个工具类,为Collection框架服务。

Java-数组是对象

Java-数组是对象原因解析

数组的概念: 数组是指具有相同类型的数据的集合,它们一般具有固定的长度,并且在内存中占据连续的空间。 在C/C++中: 数组名只是一个指针,这个指针指向了数组的首元素,既没有属性也没有方法可以调用。 在Java中: 数组不仅有其自己的属性,例如length,也有其方法可以调用,例如clone()。 由于在Java中,对象的特点是封装了一些数据,同时提供一些属性和方法,从这个角度讲...

Java-Socket通信

Java-Socket通信介绍

概念: 网络上两个程序通过一个双向的通信连接实现数据交换,这个双向链路的一端称为一个Socket。 Socket也称为套接字,可以用来实现不同的虚拟机或不同的计算机之间的通信。 在Java语言中,Socket可以分为两种类型:面向连接的Socket通信协议(TCP),和面向无连接的Socket通信协议(UDP)。 基于TCP的通信过程: Server(服务器)端Listen(监听)指...

Algorithm-二维数组的查找

Algorithm-二维数组的查找解析

二维数据中查找是否存在某个整数 在一个二维数组中(每个一维数组的长度相同), 每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 1 2 3 4 5 6 ...

Java-char存储中文汉字

Java-char存储中文汉字解析

Java中的char型变量可以存储一个中文汉字。 因为Java默认使用的是Unicode编码,即每个字符占用两个字节,中文在由两个字节组成,因此可以存储中文汉字。 String是由char组成的,但是String采用了一种更加灵活的方式来存储,即英文暂占用一个字符,中文占用两个字符,这种存储方式的额优点是减少所需存储空间,提高存储效率。

Java-异常处理

Java中的异常处理解析

问题引申: try{}里面有一个return语句,那么finally{}块中的代码能否被执行?如果能够被执行,什么时候执行,return前还是return后? 在Java语言中,finally的作用是为了保证无论在什么情况下,finally块的代码一定会被执行,但是return语句代表着结束当前的函数,因此finally块中的代码一定会被执行,而且在return语句之前执行,如果final...

Java-数组初始化方式

Java-数组初始化方式解析

在Java语言中: 一维数组的声明方式为: type arrayName[]或type[] arrayName 详解: type可以使基本的数据类型,也可以是类,arrayName表示数组的名字,[]表示为一维数组。 与C++的不同: 1.在Java语言中,数组被创建后,会根据数组存放的数据的数据类型初始化成对应的初始,例如int类型会初始化为0,对象类型会初始化为null; 2.另一...