- 学习Java的一些技术心得
袖风染云
学习java
简介作为一名Java学习之旅的同行者,我在这里分享我的学习心得和实战经验。无论您是初学者还是希望提高技能的开发者,我都希望这些内容能为您带来价值。如有任何疑问或建议,请随时留言交流介绍Java我们在学习Java的时候,肯定是先来认识一下什么叫Java,它是干什么用的Java,自1995年由SunMicrosystems推出以来,已成为全球最受欢迎的编程语言之一。其’一次编写,到处运行’的理念,使得
- 0310-冒泡排序、选择排序的Java实现
春生野草
数据结构笔记排序算法算法java数据结构
Java基本//定义使用变量//定义使用函数//基本类型//整数byteshortintlong//小数floatdouble//字符char''//布尔boolean//引用类型//StringArrayListLinkedList自定义冒泡排序两两比较交换冒泡排序Java实现package排序;importjava.util.Arrays;publicclassTest{publicstati
- 29.Harmonyos Next仿uv-ui 组件NumberBox 步进器组件自定义图标
harmonyos-next
HarmonyosNext仿uv-ui组件NumberBox步进器组件自定义图标1.组件介绍NumberBox步进器组件支持自定义加减按钮的图标,使开发者能够根据应用的设计风格定制按钮外观。本文将详细介绍如何在HarmonyOSNEXT中设置和使用NumberBox步进器的自定义图标功能。2.效果展示3.自定义图标设置3.1基本图标设置在NumberBox组件中,通过minusIcon和plusI
- CSS Position(定位)
wjs2024
开发语言
CSSPosition(定位)概述CSS定位是网页布局中非常重要的一环,它决定了页面元素的位置和层叠顺序。在CSS中,定位可以分为几种类型,包括静态定位、相对定位、绝对定位和固定定位。每种定位方式都有其独特的应用场景和优势。静态定位静态定位是CSS定位的默认值,它会使元素根据其在文档流中的位置进行定位。静态定位的元素不会影响其他元素的位置。代码示例.static{position:static;}
- 实现计算器计算功能鸿蒙示例代码
本文原创发布在华为开发者社区。介绍本示例实现了计算器的计算功能,包括加减乘除四个基本运算,小数计算、百分数计算以及清除结果功能。实现计算器计算功能源码链接效果预览使用说明应用支持加减乘除等基本运算,点击右上角的撤回按钮或者键盘上的'C',可清除输入的数据,点击键盘上蓝色的删除按钮,可一位一位的删除输入数据。实现思路删除数据先获取输入框内的字符长度,将字符转换为数组。通过.slice方法截取数组,每
- PyTorch 中的混合精度训练方法,从 autocast 到 GradScalar
Syntax_CD
PyTorch必知必会pytorch人工智能python
PyTorch的混合精度训练主要由两个方法实现:amp.autocast和amp.GradScalar。在这两个工具的帮助下,可以实现以torch.float16的混合精度训练。当然,这两个方法都是模块化并且通常都会一起调用,但并不一定总是需要一起使用。参考:AutomaticMixedPrecisionpackage-torch.ampAutomaticMixedPrecisionexample
- Stream.of()用法示例
爆米花9958
Java8新特性java
Stream.of用于为给定元素创建顺序流。我们可以传递单个元素或多个元素。查看java文档中的Stream.of方法声明。staticStreamof(Tt)参数:传递单个元素。返回值:该方法返回一个包含一个元素的流。staticStreamof(T...values)参数:传递多个元素。返回值:该方法返回包含给定元素的流。Stream.of创建有限元素流。为了创建一个无限元素流,我们可以使用S
- pyqt5 开发文档 查看地址
wowocpp
pyqt
查看PyQt5在线说明文档http://pyqt.sourceforge.net/Docs/PyQt5/class_reference.htmlhttps://www.riverbankcomputing.com/static/Docs/PyQt5/https://doc.qt.io/https://doc.qt.io/qt-5/qwidget.htmlhttps://www.riverbankc
- 关于FBX模型导入Unity后,在Play场景里想要选中但报错:“NullReferenceException: Object reference not set to an insta”的解决办法。
宝宝嘟嘟打雷辣
unity游戏引擎
FBX导入Unity后,本想要测试通过做一个BIM模型数字孪生场景,实现Play场景下,选择构件能展示构件属性信息。代码如下:usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassDemo1:MonoBehaviour{publicfloatsmooth=3f;Transformcur
- 【PyQt】常用控件button
shanks66
PyQtpyqt
@[toc]常用控件button常用控件button在Qt中,QPushButton是最常用的按钮控件,用于响应用户的点击操作。它可以显示文本、图标,并且可以连接信号和槽来实现交互功能。QPushButton就是常见的按钮信号:被点击当按钮被点击就会发出clicked信号,可以这样指定处理该信号的函数button.clicked.connect(handleCalc)改变文本代码中可以使用setT
- ctf-web: php原生类利用 -- GHCTF Popppppp
A5rZ
php网络安全
源代码fruit1=$a;}function__destruct(){echo$this->fruit1;}publicfunction__toString(){$newFunc=$this->fruit2;return$newFunc();}}classForbidden{private$fruit3;publicfunction__construct($string){$this->fruit
- 请求https,X509证书信任管理器类,避免导证书
益梅珍
代码片段发送请求java
实现X509证书信任管理器类(避免导证书)packagecom.showlin.httpsDemo;importjavax.net.ssl.X509TrustManager;importjava.security.cert.CertificateException;importjava.security.cert.X509Certificate;/***@Author:xielin*@Descri
- Sonar的常见场景
码叔义
常规发表java开发语言
Avoidlongparameterlists.方法参数过多,最多允许5个MissingaJavadoccomment.需要注释Expected@paramtagfor‘area’.需要注释Expected@returntag.需要注释Expected@throwstagfor‘Exception’.需要注释Unused@paramtagfor‘licenseInfoMap’.修改注释Lineis
- Java基础_18File类【重点】_递归_IO流【重点】
码叔义
java基础java单片机stm32
回顾昨天内容1.TreeSet底层是二叉树会对咱们的存储的数据进行排序从小到大排列存Integer,String存Perosn对象会报错的。Person类不具备排序的功能实现Comparable接口,重写comparaTo2.匿名内部类interfaceA{voidtest();}main{newA(){publicvoidtest(){sout("嘻嘻");}}.test();}4.HashMa
- https协议如何通过X509TrustManager接口实现自己创建的证书
wangmingbin
javahttps
开通了一个https协议,但是不是国际认证的,自己做的证书,访问一个接口的时候比如https:/xx.xx.xx.xx/a?c=d的时候,如果在游览器访问,需要用户确认的。如果我要模拟服务器向这个接口发送请求,就会报错误。我的原代码是:1创建信任管理器/***信任管理器**@authorliufeng*@date2013-04-10*/publicclassMyX509TrustManagerim
- 力扣-数组-34 在排序数组中查找元素的第一个和最后一个位置
夏末秋也凉
力扣#数组leetcode算法数据结构
思路和时间复杂度思路:先找到中间数,如果没找到就返回{-1,-1},如果找到了就以当前节点为中点,向两边扩时间复杂度:代码classSolution{public:vectorsearchRange(vector&nums,inttarget){vectorres;if(nums.size()==0)return{-1,-1};//左闭右开intleft=0,right=nums.size();i
- linux 系统 之centos安装 docker
羱滒
生产环境问题linuxcentosdocker
对于CentOS安装Docker的前置条件首先,需要安装一些必要的软件包,对于CentOS7,可以使用以下命令:sudoyuminstall-yyum-utilsdevice-mapper-persistent-datalvm2添加Docker仓库设置Docker的官方仓库。对于CentOSsudoyum-config-manager--add-repohttps://download.docke
- Java基础知识:标识符、关键字、数据类型
谏君之
java教程javajvm开发语言编程
Java标识符Java中的标识符是赋予变量、类、方法、包、接口等的名称。这些是唯一的名称,每个Java变量都必须使用唯一名称进行标识。例:publicclassTest{publicstaticvoidmain(String[]args){inta=20;}}在上面的Java代码中,我们有5个标识符,如下所示:测试:类名main:方法名称字符串:预定义的类名args:变量名称a:变量名称Java标
- Microsoft SQL Server 2012(附序列号)
曹瑞曹瑞
MicrosoftSQLServer2012是微软发布的新一代数据平台产品。SQLServer2012不仅延续现有数据平台的强大能力,全面支持云技术与平台,并且能够快速构建相应的解决方案实现私有云与公有云之间数据的扩展与应用的迁移。SQLServer2012提供对企业基础架构最高级别的支持—专门针对关键业务应用的多种功能与解决方案可以提供最高级别的可用性及性能。在业界领先的商业智能领领域,SQLS
- I-JEPA:联合嵌入预测架构的自监督学习实现
平奇群Derek
I-JEPA:联合嵌入预测架构的自监督学习实现I-JEPAImplementationofI-JEPAfrom"Self-SupervisedLearningfromImageswithaJoint-EmbeddingPredictiveArchitecture"项目地址:https://gitcode.com/gh_mirrors/ij/I-JEPA项目介绍欢迎来到I-JEPA,这是一个基于Se
- SpringBean的实例创建方式
LDM>W<
Java学习javaspring
说在前面:可能会疑惑之前不是学了两种方式吗:beanFactory和applicationContext。最根本来讲,就是通过工厂模式创建。是的,是工厂模式创建,但又分了两种方式:构造+工厂构造方法其中又分为了无参构造和有参构造。在默认情况下,工厂就是通过无参构造来创建bean的,如果我们提供的是有参构造的话,就需要在配置中添加参数publicServiceImpl(StringchineseNa
- Java小白-线程相关
林深的林
java开发语言
一、线程的创建方式1.继承Thread类通过创建一个类继承Thread类,并重写其run方法,然后在创建该类的实例时启动线程(调用start方法)。示例代码:classMyThreadextendsThread{@Overridepublicvoidrun(){//线程执行的代码}}publicclassMain{publicstaticvoidmain(String[]args){MyThrea
- PyQt有哪些主要组件?
2301_78316786
pythonpyqt
这是一个非常强大的跨平台GUI库,可以让你用Python语言创建美观且功能强大的桌面应用程序。让我们先来了解一下它的主要组件。首先,我们要介绍的是窗口。窗口是PyQt应用程序的基本元素,所有的GUI元素都放置在窗口中。你可以创建主窗口、模态对话框、无模式对话框和自定义窗口。下面是一个创建主窗口的例子:fromPyQt5.QtWidgetsimportQApplication,QMainWindow
- ClickOnce布置程序的安装目录
曲幽
计算机C#ClickOnce安装目录
默认路径用户的本地应用程序设置中WinXPC:\DocumentsandSettings\Administrator\LocalSettings\Apps\2.0Win7C:\Users\Administrator\AppData\Local\Apps\2.0
- 安装matlab2024a错误license checkout failed Error-8
成为不掉头发的工程师
开发语言matlab
问题:忘记截图了,借用博主的图片。记得安装过程中,目标网址才是你的安装地址,而不是前面的安装包地址。解决方法:1.将破解文件中"Crack\R2020a\bin\win64\matlab_startup_plugins\lmgrimpl"目录下的libmwlmgrimpl.dll文件复制到安装成功的matlab目录bin\win64\matlab_startup_plugins\lmgrimpl里
- 《物联网安全特辑:从智能设备到工业控制系统的攻防博弈》
程序员没睡醒
网络安全物联网安全物联网安全固件分析工控系统
设备分层威胁模型感知层传感器数据篡改网络层无线协议劫持平台层云API滥用应用层移动APP逆向设备控制权夺取0x01固件逆向:解剖设备的灵魂固件提取三板斧方法1:OTA升级包捕获#使用Wireshark过滤HTTP流量tshark-ieth0-Y"http.request.uricontainsfirmware"-wfirmware.pcap目的:截取设备升级时的固件传输流量方法2:Flash芯片硬
- 使用 Particles.js 和 GSAP 实现炫酷的网页粒子动画效果
木木黄木木
javascript开发语言ecmascript
使用Particles.js和GSAP实现炫酷的网页粒子动画效果前言在现代网页设计中,交互动效对于提升用户体验起着重要作用。本文将介绍如何结合Particles.js和GSAP动画库,创建一个引人注目的粒子动画效果网页。效果展示这里写目录标题使用Particles.js和GSAP实现炫酷的网页粒子动画效果前言效果展示技术栈实现步骤1.基础结构搭建2.样式设计4.GSAP动画实现5.自定义鼠标指针效
- 08.03.01.tiptop webserver接口篇(增加接口案例测试 单表数据)
DKLi1717
鼎捷tiptop5.3开发语言
本页目录:1、制作xml2、配置2、测试注册服务接口案例:/u1/topprod/tiptop/aws/4gl/aws_ttsrv2_service.4glCreateCustomerData接口案例代码:/u1/topprod/tiptop/aws/4gl/aws_create_customer_data.4gl制作xml注意:vscode可以下载插件:XML对代码进行格式化再添加转译符或者&l
- 08.03.02.tiptop webserver接口篇(增加接口案例测试 多表数据)
DKLi1717
鼎捷tiptop5.3开发语言
本页目录:1、制作xml2、配置2、测试注册服务接口案例:/u1/topprod/tiptop/aws/4gl/aws_ttsrv2_service.4glCreateQuotationData接口案例代码:/u1/topprod/tiptop/aws/4gl/aws_create_quotation_data.4gl制作xml注意:vscode可以下载插件:XML对代码进行格式化再添加转译符或者
- C/C++后端开发八股文
CielBleu_CN
c语言c++开发语言
一.C/C++编程1.Main函数之前执行(作为main,完成存储内容的构造)设置栈指针初始化静态变量(static)和全局变量(global)赋值全局变量(可能在完成以上过程中执行的内容)调用构造函数(main作为函数)将main函数的参数argc,argv等传递给main函数【C的存储构造如下图】2.Main函数之后执行(作为main结束)atexit注册的函数(传递信息,处理等)->倒序执行
- java类加载顺序
3213213333332132
java
package com.demo;
/**
* @Description 类加载顺序
* @author FuJianyong
* 2015-2-6上午11:21:37
*/
public class ClassLoaderSequence {
String s1 = "成员属性";
static String s2 = "
- Hibernate与mybitas的比较
BlueSkator
sqlHibernate框架ibatisorm
第一章 Hibernate与MyBatis
Hibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分。 Mybatis 是另外一种优秀的O/R mapping框架。目前属于apache的一个子项目。
MyBatis 参考资料官网:http:
- php多维数组排序以及实际工作中的应用
dcj3sjt126com
PHPusortuasort
自定义排序函数返回false或负数意味着第一个参数应该排在第二个参数的前面, 正数或true反之, 0相等usort不保存键名uasort 键名会保存下来uksort 排序是对键名进行的
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8&q
- DOM改变字体大小
周华华
前端
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml&q
- c3p0的配置
g21121
c3p0
c3p0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。c3p0的下载地址是:http://sourceforge.net/projects/c3p0/这里可以下载到c3p0最新版本。
以在spring中配置dataSource为例:
<!-- spring加载资源文件 -->
<bean name="prope
- Java获取工程路径的几种方法
510888780
java
第一种:
File f = new File(this.getClass().getResource("/").getPath());
System.out.println(f);
结果:
C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin
获取当前类的所在工程路径;
如果不加“
- 在类Unix系统下实现SSH免密码登录服务器
Harry642
免密ssh
1.客户机
(1)执行ssh-keygen -t rsa -C "
[email protected]"生成公钥,xxx为自定义大email地址
(2)执行scp ~/.ssh/id_rsa.pub root@xxxxxxxxx:/tmp将公钥拷贝到服务器上,xxx为服务器地址
(3)执行cat
- Java新手入门的30个基本概念一
aijuans
javajava 入门新手
在我们学习Java的过程中,掌握其中的基本概念对我们的学习无论是J2SE,J2EE,J2ME都是很重要的,J2SE是Java的基础,所以有必要对其中的基本概念做以归纳,以便大家在以后的学习过程中更好的理解java的精髓,在此我总结了30条基本的概念。 Java概述: 目前Java主要应用于中间件的开发(middleware)---处理客户机于服务器之间的通信技术,早期的实践证明,Java不适合
- Memcached for windows 简单介绍
antlove
javaWebwindowscachememcached
1. 安装memcached server
a. 下载memcached-1.2.6-win32-bin.zip
b. 解压缩,dos 窗口切换到 memcached.exe所在目录,运行memcached.exe -d install
c.启动memcached Server,直接在dos窗口键入 net start "memcached Server&quo
- 数据库对象的视图和索引
百合不是茶
索引oeacle数据库视图
视图
视图是从一个表或视图导出的表,也可以是从多个表或视图导出的表。视图是一个虚表,数据库不对视图所对应的数据进行实际存储,只存储视图的定义,对视图的数据进行操作时,只能将字段定义为视图,不能将具体的数据定义为视图
为什么oracle需要视图;
&
- Mockito(一) --入门篇
bijian1013
持续集成mockito单元测试
Mockito是一个针对Java的mocking框架,它与EasyMock和jMock很相似,但是通过在执行后校验什么已经被调用,它消除了对期望 行为(expectations)的需要。其它的mocking库需要你在执行前记录期望行为(expectations),而这导致了丑陋的初始化代码。
&nb
- 精通Oracle10编程SQL(5)SQL函数
bijian1013
oracle数据库plsql
/*
* SQL函数
*/
--数字函数
--ABS(n):返回数字n的绝对值
declare
v_abs number(6,2);
begin
v_abs:=abs(&no);
dbms_output.put_line('绝对值:'||v_abs);
end;
--ACOS(n):返回数字n的反余弦值,输入值的范围是-1~1,输出值的单位为弧度
- 【Log4j一】Log4j总体介绍
bit1129
log4j
Log4j组件:Logger、Appender、Layout
Log4j核心包含三个组件:logger、appender和layout。这三个组件协作提供日志功能:
日志的输出目标
日志的输出格式
日志的输出级别(是否抑制日志的输出)
logger继承特性
A logger is said to be an ancestor of anothe
- Java IO笔记
白糖_
java
public static void main(String[] args) throws IOException {
//输入流
InputStream in = Test.class.getResourceAsStream("/test");
InputStreamReader isr = new InputStreamReader(in);
Bu
- Docker 监控
ronin47
docker监控
目前项目内部署了docker,于是涉及到关于监控的事情,参考一些经典实例以及一些自己的想法,总结一下思路。 1、关于监控的内容 监控宿主机本身
监控宿主机本身还是比较简单的,同其他服务器监控类似,对cpu、network、io、disk等做通用的检查,这里不再细说。
额外的,因为是docker的
- java-顺时针打印图形
bylijinnan
java
一个画图程序 要求打印出:
1.int i=5;
2.1 2 3 4 5
3.16 17 18 19 6
4.15 24 25 20 7
5.14 23 22 21 8
6.13 12 11 10 9
7.
8.int i=6
9.1 2 3 4 5 6
10.20 21 22 23 24 7
11.19
- 关于iReport汉化版强制使用英文的配置方法
Kai_Ge
iReport汉化英文版
对于那些具有强迫症的工程师来说,软件汉化固然好用,但是汉化不完整却极为头疼,本方法针对iReport汉化不完整的情况,强制使用英文版,方法如下:
在 iReport 安装路径下的 etc/ireport.conf 里增加红色部分启动参数,即可变为英文版。
# ${HOME} will be replaced by user home directory accordin
- [并行计算]论宇宙的可计算性
comsci
并行计算
现在我们知道,一个涡旋系统具有并行计算能力.按照自然运动理论,这个系统也同时具有存储能力,同时具备计算和存储能力的系统,在某种条件下一般都会产生意识......
那么,这种概念让我们推论出一个结论
&nb
- 用OpenGL实现无限循环的coverflow
dai_lm
androidcoverflow
网上找了很久,都是用Gallery实现的,效果不是很满意,结果发现这个用OpenGL实现的,稍微修改了一下源码,实现了无限循环功能
源码地址:
https://github.com/jackfengji/glcoverflow
public class CoverFlowOpenGL extends GLSurfaceView implements
GLSurfaceV
- JAVA数据计算的几个解决方案1
datamachine
javaHibernate计算
老大丢过来的软件跑了10天,摸到点门道,正好跟以前攒的私房有关联,整理存档。
-----------------------------华丽的分割线-------------------------------------
数据计算层是指介于数据存储和应用程序之间,负责计算数据存储层的数据,并将计算结果返回应用程序的层次。J
&nbs
- 简单的用户授权系统,利用给user表添加一个字段标识管理员的方式
dcj3sjt126com
yii
怎么创建一个简单的(非 RBAC)用户授权系统
通过查看论坛,我发现这是一个常见的问题,所以我决定写这篇文章。
本文只包括授权系统.假设你已经知道怎么创建身份验证系统(登录)。 数据库
首先在 user 表创建一个新的字段(integer 类型),字段名 'accessLevel',它定义了用户的访问权限 扩展 CWebUser 类
在配置文件(一般为 protecte
- 未选之路
dcj3sjt126com
诗
作者:罗伯特*费罗斯特
黄色的树林里分出两条路,
可惜我不能同时去涉足,
我在那路口久久伫立,
我向着一条路极目望去,
直到它消失在丛林深处.
但我却选了另外一条路,
它荒草萋萋,十分幽寂;
显得更诱人,更美丽,
虽然在这两条小路上,
都很少留下旅人的足迹.
那天清晨落叶满地,
两条路都未见脚印痕迹.
呵,留下一条路等改日再
- Java处理15位身份证变18位
蕃薯耀
18位身份证变15位15位身份证变18位身份证转换
15位身份证变18位,18位身份证变15位
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 201
- SpringMVC4零配置--应用上下文配置【AppConfig】
hanqunfeng
springmvc4
从spring3.0开始,Spring将JavaConfig整合到核心模块,普通的POJO只需要标注@Configuration注解,就可以成为spring配置类,并通过在方法上标注@Bean注解的方式注入bean。
Xml配置和Java类配置对比如下:
applicationContext-AppConfig.xml
<!-- 激活自动代理功能 参看:
- Android中webview跟JAVASCRIPT中的交互
jackyrong
JavaScripthtmlandroid脚本
在android的应用程序中,可以直接调用webview中的javascript代码,而webview中的javascript代码,也可以去调用ANDROID应用程序(也就是JAVA部分的代码).下面举例说明之:
1 JAVASCRIPT脚本调用android程序
要在webview中,调用addJavascriptInterface(OBJ,int
- 8个最佳Web开发资源推荐
lampcy
编程Web程序员
Web开发对程序员来说是一项较为复杂的工作,程序员需要快速地满足用户需求。如今很多的在线资源可以给程序员提供帮助,比如指导手册、在线课程和一些参考资料,而且这些资源基本都是免费和适合初学者的。无论你是需要选择一门新的编程语言,或是了解最新的标准,还是需要从其他地方找到一些灵感,我们这里为你整理了一些很好的Web开发资源,帮助你更成功地进行Web开发。
这里列出10个最佳Web开发资源,它们都是受
- 架构师之面试------jdk的hashMap实现
nannan408
HashMap
1.前言。
如题。
2.详述。
(1)hashMap算法就是数组链表。数组存放的元素是键值对。jdk通过移位算法(其实也就是简单的加乘算法),如下代码来生成数组下标(生成后indexFor一下就成下标了)。
static int hash(int h)
{
h ^= (h >>> 20) ^ (h >>>
- html禁止清除input文本输入缓存
Rainbow702
html缓存input输入框change
多数浏览器默认会缓存input的值,只有使用ctl+F5强制刷新的才可以清除缓存记录。
如果不想让浏览器缓存input的值,有2种方法:
方法一: 在不想使用缓存的input中添加 autocomplete="off";
<input type="text" autocomplete="off" n
- POJO和JavaBean的区别和联系
tjmljw
POJOjava beans
POJO 和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Pure Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多, Java Bean 是可复用的组件,对 Java Bean 并没有严格的规
- java中单例的五种写法
liuxiaoling
java单例
/**
* 单例模式的五种写法:
* 1、懒汉
* 2、恶汉
* 3、静态内部类
* 4、枚举
* 5、双重校验锁
*/
/**
* 五、 双重校验锁,在当前的内存模型中无效
*/
class LockSingleton
{
private volatile static LockSingleton singleton;
pri