Java基础
亦阿克温
这个作者很懒,什么都没留下…
展开
-
关于Java字节码
关于Java字节码概述从写Java文件到编译成字节码文件(也就是.class文件)的过程也就是Java文件编译的过程,我们所写的是Java文件而Java虚拟机编译的是字节码文件class文件格式...原创 2018-09-24 10:25:23 · 7062 阅读 · 0 评论 -
String s = new String("xyz");创建了几个String Object?
String s = new String(“xyz”);创建了几个String Object?两个。第一个对象是字符串常量"xyz" 第二个对象是new String()的时候产生的,在堆中分配内存给这个对象,只不过这个对象的内容是指向字符串常量"xyz" 另外还有一个引用s,指向第二个对象。这是一个变量,在栈中分配内存。变形①:String s = "xyz"创建了几个String对象?原创 2018-10-13 18:29:04 · 10719 阅读 · 2 评论 -
ThreadLocal类简单介绍
在之前的博客中提到过很多次ThreadLocal类今天对它简单的说一下ThreadLocal,顾名思义是线程的一个本地化对象,当工作于多线程中的对象使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程分配一个独立的变量副本,所以每一个线程都可以独立的改变自己的副本,而不影响其他线程所对应的副本。从线程的角度看,这个变量就像是线程的本地变量。ThreadLocal为...原创 2018-10-26 11:09:46 · 197 阅读 · 1 评论 -
基于JDK的动态代理
代理模式是GOF提出的23种设计模式中最为经典的模式之一,代理模式是对象的结构模式,它给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。简单的说,代理对象可以完成比原对象更多的职责,当需要为原对象添加横切关注功能时,就可以使用原对象的代理对象。下面是一个简单的入门案例①先写一个接口 并且实现这个接口public interface UserService { void ad...原创 2018-10-26 15:04:07 · 151 阅读 · 0 评论 -
线程的状态以及状态之间的相互转换:
线程的状态以及状态之间的相互转换:新建状态(New):新创建了一个线程对象。就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于可运行线程池中,变得可运行,等待获取CPU的使用权。运行状态(Running):就绪状态的线程获取了CPU,执行程序代码。阻塞状态(Blocked):阻塞状态是线程因为某种原因放弃CPU使用权,暂时停止运行。直...原创 2018-12-10 11:41:23 · 711 阅读 · 0 评论