java
xizi_ghq
这个作者很懒,什么都没留下…
展开
-
单例模式
1、懒汉式,线程不安全是否 Lazy 初始化:是是否多线程安全:否实现难度:易描述:这种方式是最基本的实现方式,这种实现最大的问题就是不支持多线程。因为没有加锁 synchronized,所以严格意义上它并不算单例模式。这种方式 lazy loading 很明显,不要求线程安全,在多线程不能正常工作。public class Test {//创建一个对象 private ...原创 2019-10-15 13:02:49 · 103 阅读 · 0 评论 -
内部类解析
首先从字节码文件开始讲述:Java语言和字节码的语言是两种语言相同处:都有访问控制符,一个类的私有成员只能被该类的其他成员访问。不同处:字节码中没有内部类命令,JVM对内部类一无所知Java中不允许定义方法签名完全相同的两个方法,方法签名和返回值无关,JVM允许定义函数签名相同但是返回值不同的两个方法再看一下编译的过程:有个名为outer的外部类,含有一个内部类名为i...原创 2019-05-02 22:00:05 · 182 阅读 · 0 评论 -
Java中各种数据存放的位置
寄存器,程序运行时自动分配 栈:栈存放的是:基本类型的对象和类的引用变量。每个线程都有一个栈,栈内容私有,每个栈都有三个部分:基本类型变量区,执行环境上下文,操作指令区。栈的声明和持有该栈的线程一样长 堆:对象和数据都存放在这里。堆的大小可以调节,在jvm加载读取了类文件之后,需要把类,方法,常变量存放在堆内存中,以便执行器执行,堆内存也分为三部分:新生代,年老代,永久代。堆存储的全部是对象,...原创 2019-04-18 11:12:51 · 1021 阅读 · 0 评论 -
final关键字浅析
package joker;//这个执行单元用来讲解final关键字//final可以修饰代码块,变量,方法,类,,//将一个类定义为final 表示,这个类永远都不能被继承final class not{ final void test() { }}//class yes extends not{//报错 ,这个类无法被继承//}class Father{ fin...原创 2019-03-17 21:34:50 · 153 阅读 · 0 评论 -
java垃圾回收器如何工作
很多系统的垃圾回收是一种计数技术: 每个对象有个计数器,当该对象被引用时,计数器加一 ,当引用被置为NULL或者离开作用域时,引用计数减一,但是Java不是这种技术,因为这种技术有自身缺陷: 设想,有三个对象互相引用,构成一个圆圈,这样就会出现,对象应该被回收但是计数器不为0的情况还有更快的模式 遍历每个活的对象(被引用的i情况下会穿越几个对象层次...原创 2019-03-03 09:49:05 · 196 阅读 · 0 评论 -
finalize()方法 知识点总结
在JVM垃圾回收器收集一个对象之前,一般要求程序调用适当的方法释放资源,但在没有明确释放资源的情况下,Java提供了缺省机制来终止该对象心释放资源,这个方法就是finalize()。它的原型为: protected void finalize() throws Throwable 在finalize()方法返回之后,对象消失,垃圾收集开始执行。原型中的throws Throwable表示...原创 2019-03-03 08:58:47 · 269 阅读 · 0 评论 -
Java Thread 的使用
https://www.cnblogs.com/renhui/p/6066852.html转载大神的博客一、线程的状态在正式学习Thread类中的具体方法之前,我们先来了解一下线程有哪些状态,这个将会有助于后面对Thread类中的方法的理解。线程从创建到最终的消亡,要经历若干个状态。一般来说,线程包括以下这几个状态:创建(new)、就绪(runnable)、运行(running)、阻塞...原创 2018-08-16 09:50:33 · 91 阅读 · 0 评论 -
map随笔
概述–Map集合基于 键(key)/值(value)映射。每个键最多只能映射一个值。键可以是任何引用数据类型的值,不可重复;值可以是任何引用数据类型的值,可以重复;键值对存放无序。Map常用实现类–HashMap 允许使用 null 值和 null 键;此类不保证映射的顺序;在多线程操作下不安全–LinkedHashMap 基于哈希表和链接列表的实现类;具有可预知的迭代...原创 2018-08-13 19:22:43 · 110 阅读 · 0 评论 -
Set随笔
set接口继承collection接口,其主要实现类有三个:hashset,LinkedHashSet以及TreeSet•Set常用方法–add(Object obj):向Set集合中添加元素,添加成功返回true,否则返回false–size() :返回Set集合中的元素个数–remove(Object obj) : 删除Set集合中的元素,删除成功返回true,否则返回fal...原创 2018-08-13 17:09:59 · 117 阅读 · 0 评论 -
关于IO流和文件的个人理解
我是个喜欢代码的人~package io;import java.io.File;import java.io.IOException;//关于File常用的方法总结public class file_ { public static void main(String[] args) { File file = new File("E:\\IO1"); File file1...原创 2018-08-07 15:51:18 · 234 阅读 · 0 评论 -
java 中的instanceof 用法
java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。 用法:result = object instanceof class参数:Result:布尔类型。Object:必选项。任意对象表达式。Class:必选项。任意已定义的对象类。说明:如果 obje...转载 2018-07-28 10:06:29 · 139 阅读 · 0 评论 -
关于标识符,数据类型,进制转换,运算符的总结
关于标识符,数据类型,进制转换,运算符的总结: 标识符标识符是由字母 ,数字,_ 和 $ 组成的,而且首字母不能是数字,标识符的命名不能含有java的关键字,没有长度限制,对大小写敏感, Java关键字如下另外 goto和const也作为关键字保留。 数据类型数据类型决定了存储的数据和分配的内存,数据类型一共分为8种。分别是byte short int long double fl...原创 2018-03-29 18:48:46 · 206 阅读 · 0 评论 -
第一个java程序
在前一段时间自己把c语言自学入门了,今天开始学习Java。 1 开始的时候老师给我们讲了Java的发展史,然后就开始学习Java的语言。先记录一下自己的一段小程序:public class 类名{ publicstatic void main(String args[]){ System.out.println(“输出内容”);}} ...原创 2018-03-29 18:47:28 · 94 阅读 · 0 评论 -
配置环境变量
关于如何配置环境变量的总结:首先先自己弄一个盘符,将jdk安装包安装到这个盘符里面(为了以后使用有条理)。第二:将自己安装jdk的文件路径复制下来,右击我的电脑—属性—高级系统设置—环境变量—系统变量新建一个JAVA_HOME的变量,并将刚才复制的文件路径复制在这。第三:在path的最前面添加一个%JAVA_HOME%\bin;(注意后面这个分号); ...原创 2018-03-29 18:46:33 · 120 阅读 · 0 评论