logo头像
博客-Leo

设计模式:单例

单例模式就是确保一个类只有一个实例,并为整个系统提供一个全局访问点 (向整个系统提供这个实例)。 单例三要素 私有的构造方法; 指向自己实例的私有静态引用; 以自己实例为返回值的静态的公有方法。 1.饿汉式public clas...

HashMap和HashTable

(内部数据结构,哈希碰撞,哈希计算,哈希映射,为什么是头插法,扩容为什么是 2 的幂次) 是一个“链表散列”的数据结构,即数组和链表的结合体,底层就是一个数组结构,数组中的每一项又是一个链表。 相同点 都是以哈希表数据结构存储数...

HashMap之10问

为什么用HashMap? HashMap是一个散列桶(数组和链表),它存储的内容是键值对(key-value)映射 HashMap采用了数组和链表的数据结构,能在查询和修改方便继承了数组的线性查找和链表的寻址修改 HashMap是非s...

sleep 、wait、yield的区别,wait的线程如何唤醒它

sleep()在指定时间内让当前正在执行的线程暂停执行,但不会释放“锁标志”。不推荐使用。sleep()使当前线程进入阻塞状态,在指定时间内不会执行。 wait()方法在其他线程调用对象的notify或notifyAll方法前,导致当...

synchronized 和 volatile 、ReentrantLock 、CAS 的区别

JAVA的内存模块特点,原子性、可见性、有序性 Synchronized和volatile的区别 Synchronized保证内存可见性和操作的原子性,Volatile只能保证内存可见性(atomic关键字正好弥补了volatil...

Java代理

代理模式代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 代理模式一般涉及到的角色有: 抽象角色:声明真实对象...

JavaBean内省、注解、类加载器

Javabeans内省JavaBean是一种特殊的Java类,主要用于传递数据信息,这种Java类中的方法主要用于访问私有的字段,且方法名符合某种命名规则。 应用情景如果要在两个模块之间传递多个信息,可以将这些信息封装到一个JavaB...

Java正则表达式

正则表达式其实是用来操作字符串的一些规则。 好处:正则的出现,对字符串的复杂操作变得更为简单。 特点:将对字符串操作的代码用一些符号来表示。只要使用了指定符号,就可以调用底层的代码对字符串进行操作。符号的出现,简化了代码的书写。 弊端...

Java反射技术

反射技术其实就是动态加载一个指定的类,并获取该类中的所有的内容。而且将字节码文件封装成对象,并将字节码文件中的内容都封装成对象,这样便于操作这些成员。简单说:反射技术可以对一个类进行解剖。 反射的好处:大大的增强了程序的扩展性。 反射...

Java网络编程

端口物理端口: 逻辑端口:用于标识进程的逻辑地址,不同进程的标识;有效端口:065535,其中01024系统使用或保留端口。 java 中ip对象:InetAddress. import java.net.*; class IPDe...