- day7作业
m0_58248149
c++开发语言
编写一个如下场景:有一个英雄Hero类,私有成员,攻击(Atx),防御(Defense),速度(Speed),生命值(Blood),以及所有的setget方法编写一个武器Weapon类,拥有私有成员攻击力(Atx),以及setget方法编写一个长剑Sword类,继承自武器类,拓展属性生命值(Blood),以及setget方法编写一个匕首Blade类,继承自武器类,拓展属性速度(Speed),以及s
- 《C++ 小游戏:简易飞机大战游戏的实现》
TT-Kun
C++ProjectMinec++开发语言
文章目录《C++游戏代码解析:简易飞机大战游戏的实现》一、游戏整体结构与功能概述二、各个类和函数的功能分析(一)`BK`类-背景类(二)`hero_plane`类-玩家飞机类(三)`plane_bullet`类-玩家飞机发射的子弹类(四)`enemy_plane`类-敌方飞机类(五)`enemy_bullet`类-敌方飞机发射的子弹类(六)其他重要函数三、完整代码:`Plane.h``Plane.
- Django中select_related 的作用
信阳农夫
Django学习笔记djangosqlite数据库
Django中这句代码Dynamic.objects.select_related('song')是什么意思?在Django中,这句代码:Dynamic.objects.select_related('song')的作用是在查询Dynamic模型的同时,预加载song关联的外键对象,从而减少数据库查询次数,提高查询效率。1.select_related的作用select_related()适用于外
- 传奇aspM2引擎源码轻松对接三端手游完整教程
legendji
c语言
要将传奇引擎源码对接到手游APP,涉及到将原本为PC端开发的游戏逻辑与资源适配到移动端,并进行必要的前后端通讯协议对接。此过程中需要多个步骤,包括游戏逻辑、资源转换、网络通信对接、UI和控制适配等。以下是详细的步骤说明:一、传奇引擎概述传奇引擎(MirEngine)最初用于PC端MMORPG游戏《热血传奇》的开发,经典的版本是GOM、BLUE、HERO等。这些引擎主要使用Delphi、C++等语言
- makailio-alias_db模块详解
狂爱代码的码农
VOIP那些事kamaimio
- 立创梁山派-21年电赛F题-智能送药小车-赛题分析
立创开发板
开源嵌入式硬件
送药小车立创开源平台资料:https://oshwhub.com/li-chuang-kai-fa-ban/21-dian-sai-f-ti-zhi-neng-song-yao-xiao-che送药小车代码仓库:基于立创梁山派的21年电赛F题智能送药小车:基于立创梁山派的21年电赛F题-智能送药小车更好的观看体验请去:
- jQuery和CSS3响应式网站导航幻灯片插件
�时过境迁,物是人非
jquerycss3前端
这是一款即实用又炫酷的jQuery和CSS3响应式网站导航幻灯片插件。该插件将幻灯片制作为网站的hero导航,在幻灯片中展示网站各主要板块的内容,使用户可以非常容易的了解网站的主要信息。在线演示下载该幻灯片插件是响应式的,幻灯片中可以嵌入图片背景、视频及文本信息。为了提高与用户的互动,幻灯片中将前后导航按钮替换为导航按钮。按钮和导航箭头的区别是:每个按钮是一个标题,它会提示用户该页幻灯片所对应的网
- 通过JS逆向,爬取音乐(仅供学习交流,严禁非法使用)
纵码奔腾
python网络爬虫
今天通过JS逆向,爬取自己喜欢的音乐,仅供交流,严禁非法使用。暂时还没有使用协程进行优化。fromplatformimportsystemimportrequestsimportexecjsimportosimportrelist_url="https://xxx/discover/toplist?id=3778678"yuanshi_url="https://xxxx/#/song?id=145
- Python爬虫爬取1万首音乐代码
EasySoft易软
python
importrequestsbase_url=“http://music.163.com/song/media/outer/url?id=”start_id=200000end_id=210000formusic_idinrange(start_id,end_id+1):song_url=base_url+str(music_id)response=requests.get(song_url,st
- python语言爬虫爬取歌曲程序代码
EYYLTV
python爬虫android
importrequestssong_urls=[“http://music.163.com/song/media/outer/url?id=25795016.mp3”,“https://m703.music.126.net/20240915140140/670dfe5c0144991d4cb778d6662fd762/jd-musicrep-privatecloud-audio-public/o
- C语言实现一个简单的点歌系统
鹿屿二向箔
c语言开发语言
创建一个简单的点歌系统可以用C语言实现,这里提供一个基本的框架。这个系统可以包括歌曲列表、用户选择歌曲的功能以及播放歌曲的功能。以下是一个示例代码:#include#include#defineMAX_SONGS100#defineMAX_LENGTH100typedefstruct{charname[MAX_LENGTH];charartist[MAX_LENGTH];}Song;typedef
- 一个简单的点歌系统
BABA8891
c语言
一个简单的点歌系统可以用C语言实现,这里提供一个基本的框架。这个系统可以包括歌曲列表、用户选择歌曲的功能以及播放歌曲的功能。以下是一个示例代码:#include#include#defineMAX_SONGS100#defineMAX_LENGTH100typedefstruct{charname[MAX_LENGTH];charartist[MAX_LENGTH];}Song;typedefst
- ROW_NUMBER()
向日葵般的数学人~
SQLsql
ROW_NUMBER()OVER(PARTITIONBY...ORDERBY...)是一个窗口函数,用于生成每个分组内的唯一行号。这个函数非常适合在分组数据中进行排序,并为每一行分配一个序号。下面是对你的具体示例的详细解释:ROW_NUMBER()OVER(PARTITIONBYMONTH(p.fdate)ORDERBYCOUNT(p.user_id)DESC,s.song_id)ASsong_r
- Django Admin管理后台导入CSV
背着吉他去流浪
django服务器python
修改管理模型,代码如下:classCsvImportForm(forms.Form):csv_file=forms.FileField()@admin.register(Hero)classHeroAdmin(admin.ModelAdmin,ExportCsvMixin):...change_list_template="entities/heroes_changelist.html"defge
- 10、Django Admin修改标题
背着吉他去流浪
DjangoAdmindjango数据库sqlite
adminfromdjango.contribimportadminfrom.modelsimportCategory,Origin,Hero,Villain#添加以下代码admin.site.site_header="系统管理"admin.site.site_title="管理员界面"admin.site.index_title="欢迎来到这里!"#注册模型#admin.site.registe
- 12、Django Admin在列表视图页面上显示计算字段
背着吉他去流浪
DjangoAdmindjango数据库python
两种方法:注册模型有两种方式,需要首先添加或者修改admin中的注册模型如下方式@admin.register(Origin)classOriginAdmin(admin.ModelAdmin):list_display=("name",)1、在models的模型类中添加函数defhero_count(self,):returnself.hero_set.count()defvillain_cou
- c语言利用字符数组制作输出电影电视剧主角的程序
冰暮流星
c语言c语言
c语言里面字符数组定义的语法格式是char字符数组名[]=“字符串数据”字符串数组输出语法是for(i=0;iintmain(){charhero[]="雨石,玉轩,团子";charlady[]="小点,紫轩,若美";inti;printf("这部电影的男主角分别是:\n");for(i=0;i<25;i++){printf("%c",hero[i]);}printf("\n");printf("
- CodeQL 从零到精通第 3 部分:使用 CodeQL 进行安全研究
红云谈安全
安全sqlite数据库
查询特定的库方法在上一篇博文中,我们根据名称匹配函数调用、函数和方法调用,例如,在本[挑战](https://github.blog/2023-06-15-codeql-zero-to-hero-part-2-getting-started-with-codeql/#:~:text=Challenge9—Findallfunctionswith“command”aspartofitsname)中。
- 三国志战略版:Daniel_周瑜分析
大丹说三国
一、武将生平周瑜想必大家都不陌生,作为三国历史上响当当的人物,更是催生出了“内问张昭,外问周瑜”,“周瑜打黄盖”、“既生瑜何生亮”、“火烧赤壁”等等一系列大家耳熟能详的故事。历史上的周瑜是这样的:周瑜(175年-210年),字公瑾,庐江舒人。东汉末年名将,出身庐江周氏,洛阳令周异之子,堂祖父周景、堂叔周忠,都官至太尉。长壮有姿貌、精音律,江东有“曲有误,周郎顾”之语。周瑜少与孙策交好,21岁起随孙
- 构建生物医学知识图谱from zero to hero (4):通过Neo4j构建知识图谱
ASKCOS
AIDDCADD化学生物知识图谱neo4j人工智能
图数据库是一种专门用于存储图形数据的NoSQL数据库。与传统的关系型数据库和其他NoSQL数据库不同,图数据库利用图形数据模型来存储和管理数据。图形数据模型由节点和边组成,节点代表实体,边代表实体之间的关系。例如,在社交网络中,用户可以表示为节点,朋友关系可以表示为边。图数据库具有以下特点:灵活的数据模型:图数据库采用图形数据模型,可以灵活地存储和表示各种类型的数据,例如社交网络、地图、知识图谱等
- Linux安全基线与加固
ghost+
linux运维
基于CIS基线GitHub-daniel-armbrust/linux-security-baseline:LinuxSecurityBaselinebasedonCISBenchmarks.|=----------------=[GNU/Linux安全基线与加固-0.3]=----------------=|0.Aboutthisdoc1.Routinesecuritybaseline1.1Se
- Flutter 动画(显式动画、隐式动画、Hero动画、页面转场动画、交错动画)
韩老九
Flutterflutter
前言当前案例FlutterSDK版本:3.13.2显式动画Tween({this.begin,this.end})两个构造参数,分别是开始值和结束值,根据这两个值,提供了控制动画的方法,以下是常用的;controller.forward():向前,执行begin到end的动画,执行结束后,处于end状态;controller.reverse():反向,当动画已经完成,进行还原动画;controll
- 音乐你我不期而遇
齐齐_786a
DJ-很好听的抒情英文歌曲串烧真的很好听,推荐给你们!(来自@酷狗音乐海量曲库,极致音质)https://t4.kugou.com/song.html?id=5xabU9ewqV2
- 在linux虚拟机上快速搭建域名网站以及子网站
跟着阿妈敲代码
linux服务器运维
网站需求:1.基于域名www.openlab.com可以访问网站内容为welcometoopenlab!!!2.给该公司创建三个子界面分别显示学生信息,教学资料和缴费网站,基于www.openlab.com/student网站访问学生信息,www.openlab.com/data网站访问教学资料www.openlab.com/money网站访问缴费网站3.要求(1)学生信息网站只有song和tia
- 英雄情结
杨金社
在我的印象中,小时候的英雄,是孙悟空、武松等,长大以后最崇拜的英雄,就成了舍命刺杀秦始皇的荆轲,“图穷匕首见”的成语和典故,至今记忆犹新,刻骨铭心。当然了,心目中的英雄,还有就是中华人民共和国的缔造者和流血牺牲的仁人义志士。最近看了资料,才知道在西方文化里,“Hero”(英雄)这个词,最早出自《荷马史诗》,是特指参加特洛伊战争的男人。因此,要想了解西方人心目中的英雄,就必须了解《荷马史诗》。盲诗人
- js基础(2)
象更
javascript开发语言ecmascript
对象object也是js的一种数据类型其静态特征可以用基本数据类型表示动态行为可以用函数表示语法:增删改查查:对象.属性改:对象.属性=值增:对象.新属性名=新值删:delete对象.属性名查的另一种写法:对象名['属性名']应用场景,如图goods-name解析错误,变为字符串对象的方法letobj={name:'wwx',song:function(){函数体}}方法调用:对象名.方法名obj
- TypeScript 入门
Daniel_187
JavaScripttypescriptjavascript前端
课程地址ts开发环境搭建npmi-gtypescript查看安装位置:$npmroot-gC:\Users\Daniel\AppData\Roaming\npm\node_modules创建hello.ts:console.log("hello,ts");编译ts文件,得到js文件:$tscfoo.ts类型声明后置的类型声明leta:number;a=10;a=33;//a="hello";let
- 音乐鉴赏之滨崎步《LOVE SONG》沐雨飘荡的铃铛,也会有梦想和远
品读音乐走廊
仿佛缓缓地拉开雨帘,仿佛凉凉的冰雨浇透心池,这就是一首让人酣畅淋漓的歌曲,一曲律动带着脚步一起舞蹈的歌曲,滨崎步《LOVESONG》。已多次循环这首歌,高亢凛冽,却饱含深情和励志,滨崎步的《LOVESONG》这首曲子旋律上带给人无限的遐思,何处寄遐思呢?要从歌曲大体的本意来说,从中文翻译上看,这首表达了一种希望人们都能提振精神,不再颓唐的生活态度,没有爱的人生没有梦想的人生没有歌的人生以及没有不可
- Hive serde 序列化表例子
苍穆
hivehive序列化SerDe
文章转载自:http://blog.csdn.net/mango_song/article/details/125621371.概述一个文本f1.txt的格式如下:[plain]viewplaincopyprint?1tom2jame3mango它的第一列是id,第二列是name,第一列和第二列间通过不固定长度的空白(如空格制表符等)分割;我们希望创建一个user表,能够识别f1.txt,通过创建
- 一场羽毛球,提升了对写作的认知
张飞_abbc
下午早早处理完事情,回家换上短袖短裤,穿上那双蓝色的HERO羽毛球鞋,带上刚穿好线的羽毛球拍,去到几个月来心心念念的羽毛球馆。刚去的时候,约好的小伙伴还没到齐。就跟旁边的陌生球友一起双打,刚开始时,我和搭档像是商量好一样,不断失误,我们相视一笑:竟然失误也会心有灵犀!结果可想而知,比分一直落后,最后成功以16:21输掉。虽是打着玩,但内心还是希望能赢。因为疫情,太久没去球馆打球,缺乏实战,想使的招
- 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