自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 java传值和传引用

public class TestTransForValue { public void changeValue1(int age) { age=30; } public void changeValue2(Person person) { person.setPersonName("xxx"); } public void changeValue3(String str) { str="xxx"; } public static void main(String[] a

2020-08-24 11:20:19 558

原创 堆栈方法区详解

一、java的六种存储地址及解释1) 寄存器(register):这是最快的存储区,因为它位于不同于其他存储区的地方——处理器内部。但是寄存器的数量极其有限,所以寄存器由编译器根据需求进行分配。你不能直接控制,也不能在程序中感觉到寄存器存在的任何迹象。2) 堆栈(stack):位于通用RAM中,但通过它的“堆栈指针”可以从处理器哪里获得支持。堆栈指针若向下移动,则分配新的内存;若向上移动,则释放那些内存。这是一种快速有效的分配存储方法,仅次于寄存器。创建程序时候,JAVA编译器必须知道存储在堆栈内所有数

2020-08-20 18:15:58 2722

转载 虚假唤醒

今天遇到了并发编程中的虚假唤醒现象, 首先上一段典型的生产者消费者代码:package juc;class AirConditioner { private int number = 0; public synchronized void increment() throws InterruptedException { // 出现虚假唤醒 if (number != 0) { this.wait(); }

2020-08-19 09:45:23 184

转载 工厂模式

工厂顾名思义就是创建产品,根据产品是具体产品还是具体工厂可分为简单工厂模式和工厂方法模式,根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。该模式用于封装和管理对象的创建,是一种创建型模式。本文从一个具体的例子逐步深入分析,来体会三种工厂模式的应用场景和利弊。简单工厂模式该模式对对象创建管理方式最为简单,因为其仅仅简单的对不同类对象的创建进行了一层薄薄的封装。该模式通过向工厂传递类型来指定要创建的对象,其UML类图如下:下面我们使用手机生产来讲解该模式:Phone类:手机标准规范类(Abstr

2020-08-17 11:53:19 131

原创 5中单例模式且防止反射和反序列化破解(不针对枚举)并测试效率

单例模式单例模式,顾名思义就是只有一个实例,并且她自己负责创建自己的对象,这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象核心代码:1构造方法私有化, 2. private static 3.提供一个公共方法1.饿汉式饿汉式,从名字上也很好理解,就是“比较勤”,实例在初始化的时候就已经建好了,不管你有没有用到,都先建好了再说。好处是没有线程安全的问题,调用效率高.坏处是浪费内存空间 无法延时加载。public class SingletonDemo2 { // 类

2020-08-17 10:17:12 232

转载 类的加载过程

刚刚走出校门的应届毕业生,如果在去寻求一份Java开发的工作时,你的面试官很有可能一边看着你的简历,一边漫不经心地问你:了解过Java类的加载过程吗?这个时候你一定要注意了,虽然这是一个老生常谈的问题,但是这也是一个非常能够考验你Java功底的问题。如果你答好了,这是你应该的;如果你没答好,那么对不起,面试官心中已经给了你不及格。今天,小编就Java类加载过程这个问题,抛砖引玉,说一下自己的理解,如果有不对的地方,欢迎大家在评论去指正。前言一个Java文件从编码完成到最终执行,一般主要包括两个过程

2020-08-15 16:50:26 111

原创 深入理解WebServer且手写WebServer

用到的相关知识: 网络编程 多线程 字节流 反射等。。。因为只是写服务器端 要遵循tcp协议1.建立与浏览器的连接,获取请求协议,2.返回响应协议在客户端public class Server02 { private ServerSocket serverSocket; public static void main(String[] args) { Server02 server = new Server02(); server.start(); } //启动服务 p

2020-08-14 16:23:12 314

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除