- 【学习总结|DAY021】Java 多线程
123yhy传奇
java学习开发语言
多线程是Java编程中非常重要的概念,它允许程序同时执行多个任务,提高程序的执行效率。本文将详细介绍多线程的创建方式、常用方法、线程安全、线程同步、线程池以及并发和并行的概念,并结合代码案例进行讲解。一、线程的创建方式Java中创建线程主要有三种方式:方式一:继承Thread类classMyThreadextendsThread{@Overridepublicvoidrun(){//线程执行的任务
- 使用@EmbeddedId实现复合主键的优雅方式
2501_90323865
javapython开发语言个人开发
在Java的JPA(JavaPersistenceAPI)中,复合主键是一个常见的需求,尤其是在处理多对多关系或需要多个字段共同作为主键的场景中。传统上,我们可以通过@IdClass来实现复合主键,但这种方式需要在实体类和主键类中重复定义相同的字段,显得有些冗余。相比之下,@EmbeddedId提供了一种更为简洁和直观的解决方案,它通过对象组合的方式,将复合主键类嵌入到实体类中,避免了字段的重复定
- 机器学习-分类算法评估标准
赛丽曼
机器学习机器学习分类人工智能
一.准确率accuracy将预测结果和测试集的目标值比较,计算预测正确的百分比准确率越高说明模型效果越好fromsklearnimportdatasetsfromsklearn.model_selectionimporttrain_test_splitfromsklearn.neighborsimportKNeighborsClassifier#加载鸢尾花数据X,y=datasets.load_i
- Java:获取本地文件
dingcho
Javajavahttp
/***Function:todo**@program:获取本地图片*@Package:com.kingbal.king.dmp*@author:dingcho*@date:2025/01/22*@version:1.0*@Copyright:2024www.kingbal.comInc.Allrightsreserved.*/@Slf4jpublicclassBaseTest{publicsta
- 夜莺 v8 第一个版本来了,开始做有意思的功能了
夜莺开源监控
夜莺监控夜莺监控prometheus开源监控
夜莺v8大版本已经启动开发,预计25年7、8月份发正式版,相比v7大概会做四五个大功能,每个功能做完了做稳定了都会提前放出来供大家体验,虽然以beta来命名,实际是稳定的,大家可以放心升级。夜莺v5v6v7三个大版本算是一脉相承,一直在打基础,最后一个稳定版是v7.7.2,可以看作是这个系列的终极版。其实这个系列中有些功能早就想改进了,但是由于兼容性、迁移成本、人力的考虑,一直没有动作。现在基础打
- React的类组件和函数组件
读心悦
深入浅出reactreact.jsjavascript前端
文章目录类组件函数组件函数组件核心的API类组件类组件就是基于ES6Class的语法,通过继承React.Component得到的React组件,React类组件是有自己的生命周期的,在不同的生命周期里执行不同的逻辑。比如:importReactfrom"react";classCommextendsReact.Component{constructor(prop
- #HarmonyOS篇:装饰器&LocalStorage&AppStorage
程序员xiaolibao
HarmonyOS篇harmonyos
@State装饰器:组件内状态父子Prop父子单向同步Link父子双向同步深层次响应ObservedObjectLink装饰器Observed装饰器使用场景:嵌套对象和数组中进行双向数据同步跨层ProvideProvideConsume跨层组件传递使用建议@State+@Prop组合方案:@Prop装饰器支持接收Object、class、string、number、boolean、enum类型,以
- 【Elasticsearch】RestClient操作文档
乙卯年QAQ
elasticsearchjenkins大数据java
RestClient操作文档新增文档实体类API语法查询文档删除文档修改文档批量导入文档小结新增文档将数据库中的信息导入elasticsearch中以商品数据为例实体类定义一个索引库结构对应的实体。@Data@ApiModel(description="索引库实体")publicclassItemDoc{@ApiModelProperty("商品id")privateStringid;@ApiMo
- React中使用extends实现子类继承父类
独酌101112
前端
首先看两个对象:classAmerican{constructor(name,age){this.name=namethis.age=age}}consta1=newAmerican('Jack',20)console.log(a1)classChinese{constructor(name,age){this.name=namethis.age=age}}constc1=newChinese('
- SpringBoot+Netty+WebSocket 实现消息推送
_小趴菜_
springbootwebsocketspringbootjava
关于NettyNetty是一个利用Java的高级网络的能力,隐藏其背后的复杂性而提供一个易于使用的API的客户端/服务器框架。Maven依赖io.nettynetty-all4.1.36.FinalSpringBootApplication启动器中需要new一个NettyServer,并显式调用启动netty。@SpringBootApplicationpublicclassSpringCloud
- class react 获取_React 的 Class 组件
weixin_39864682
classreact获取
写在前面在React中,定义组件的方式有两种,一个是class类组件,一个是函数组件。class类组件的实现相比于函数组件要复杂。1.returnReact元素React组件必须是返回React元素的物件,因此无论是函数组件还是类组件都必须有returnReact元素。在class类组件的返回React元素的位置是在render()函数中,也就是说,类组件中必须有一个render()函数,在ren
- java移动业务大厅案例_基于Java的SOSO移动大厅项目(功能全部实现了)
都灵Turin
java移动业务大厅案例
【实例简介】基于Java的SOSO移动大厅项目功能全部实现了可以下载去看看【实例截图】【核心代码】SOSO移动大厅项目└──SosoDemo├──bin│├──business││└──Menu.class│├──entity││├──CallService.class││├──ConsumInfo.class││├──MobileCard.class││├──NetPackage.class││
- 【leetcode100】二叉搜索树中第k小的元素
SsummerC
leetcode100算法数据结构leetcodepython
1、题目描述给定一个二叉搜索树的根节点root,和一个整数k,请你设计一个算法查找其中第k小的元素(从1开始计数)。示例1:输入:root=[3,1,4,null,2],k=1输出:12、初始思路2.1思路使用中序遍历(左根右)进行遍历,遍历结果为从小到大的排序,进而可以输出第k小的元素。#Definitionforabinarytreenode.#classTreeNode:#def__init
- C++模板进阶
Hungry_11
C++程序设计c++
目录非类型模板参数按需实例化模版的特化函数模版特化类模版全特化类模板偏特化/半特化模板的分离编译模板优缺点非类型模板参数模板参数分类型形参与非类型形参。类型形参:出现在模板参数列表中,跟在class或者typename之类的参数类型名称。非类型形参:就是用一个常量作为类(函数)模板的一个参数,在类(函数)模板中可将该参数当成常量来使用。namespacetest{//定义一个模板类型的静态数组//
- JDBC基础编程练习
Ssaty.
编程javapython
第1关:JDBC更新员工密码本关任务:借助JDBC在库名tsgc中完成对数据表employee中性别为“女”的员工密码修改为“hello”;packagestep1;importjava.sql.*;publicclassUpdatePass{//修改数据publicstaticvoidupdateDB(){
- 从 PyQt5 窗口闪退问题看 Python 垃圾回收与消息机制
python
前言此篇文章源于知乎上的一个问题,使用PyQt5编写GUI程序时,新创建的界面会闪退,本篇文章仅作记录以防以后忘记。问题代码importsysfromPyQt5.QtWidgetsimportQApplication,QMainWindow,QPushButtonclassMain(QMainWindow):def__init__(self):super(Main,self).__init__()
- 打造你的第一个AI Agent:从需求分析到架构设计
人工智能机器学习
前面几篇文章,我们讨论了AIAgent的概念和技术选型。今天,我想和大家分享如何从零开始打造一个AIAgent。我会用一个实际的项目案例,带大家走一遍完整的开发流程。项目背景事情要从一个月前说起。那天我正在整理自己的笔记库,突然发现一个痛点:我的笔记散落在各个工具里(Notion、飞书、本地Markdown),想找一个知识点经常要翻好几个地方。于是我就想:能不能做一个AI助手,帮我管理和查询这些笔
- SVC函数介绍
浊酒南街
#机器学习算法人工智能
目录前言函数介绍示例前言SVC(SupportVectorClassification)是支持向量机(SVM)的一种实现,主要用于分类问题。支持向量机是一种监督学习算法,其基本原理是找到一个最优的超平面来将不同类别的数据分开。SVC在小样本和高维空间中表现良好,且能够处理非线性分类问题。函数介绍SVC(C=1.0,kernel=‘rbf’,degree=3,gamma=‘auto’,coef0=0
- Spring Boot 框架整体启动流程详解
阿提说说
SpringBoot3.x精讲javaspringspringboot3
基于SpringBoot版本:3.1Java:17SpringBoot的入口即为xxApplication类的main方法:@SpringBootApplicationpublicclassSpringBootDemoApplication{publicstaticvoidmain(String[]args){SpringApplication.run(SpringBootDemoApplicat
- java 流水线模式_流水线设计模式实现
珠玉琳琅
java流水线模式
这是关于管道实现的设计问题。以下是我的天真实施。流水线设计模式实现接口在管道的各个步骤/阶段:在流水线的步骤/阶段的publicinterfaceStep{publicUexecute(Tinput);}具体实现:publicclassStepOneimplementsStep{@OverridepublicIntegerexecute(Integerinput){returninput+100;
- fps游戏房间组队系统代码逻辑架构设计
你一身傲骨怎能输
FPS射击游戏技术专栏游戏
在FPS游戏中,房间组队系统是一个关键的功能,它允许玩家创建、加入和管理游戏房间。以下是一个基本的房间组队系统代码逻辑架构设计,使用Unity引擎作为示例:1.房间管理器基类首先,定义一个房间管理器的基类,用于统一管理所有的房间。usingSystem.Collections.Generic;usingUnityEngine;publicabstractclassRoomManager:MonoB
- spring boot源码解析之SpringApplication启动流程
crayon-shin-chan
#spring-bootsurprisespringjavaspringbootlinuxpython
1.启动入口我们一般的启动SpringBoot应用方式为:@SpringBootApplicationpublicclassMyApplication{publicstaticvoidmain(String[]args){SpringApplication.run(MyApplication.class,args);}}这里使用静态方法启动,传入参数为启动类、命令行参数实际此处使用的是以下方法:p
- SpringBoot集成OpenFeign,实现服务间的相互调用
Sao_E
我的小成就springboot后端javaspringcloud微服务
SpringBoot集成OpenFeign,实现服务间的相互调用文章目录SpringBoot集成OpenFeign,实现服务间的相互调用一、实验准备与目标二、添加依赖三、写调用接口四、写controller层五、启动类注解六、结果一、实验准备与目标有业务模块business和跑批模块batch。在business模块中设有test接口,内容如下:@RestControllerpublicclass
- 54.DataGrid数据框图 C#例子 WPF例子
军训猫猫头
uic#wpf
首先是绑定一个属性,属性名称无所谓。到时候看属性设置的啥,可能要改。然后创建INotifyPropertyChanged的类,并把相关固定的代码粘贴上去。然后把这个目录类建好,要用publicclassIndex1{publicintId{get;set;}publicstringName{get;set;}publicstringStatus{get;set;}}用这个目录类创建属性privat
- set()函数用法
欢天喜地小姐姐
python编程学习python
python内置函数文章目录python内置函数描述set()语法返回值实例描述set()是集合的一种。set()函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。set()语法classset([iterable])iterable–可迭代对象对象;返回值返回新的集合对象实例>>>x=set('runoob')>>>y=set('google')>>>x,
- 记录一次RPC服务有损上线的分析过程
京东云开发者
rpcjavasql
作者:京东零售郭宏宇1.问题背景某应用在启动完提供JSF服务后,短时间内出现了大量的空指针异常。分析日志,发现是服务依赖的藏经阁配置数据未加载完成导致。即所谓的有损上线或者是直接发布,当****应用启动时,service还没加载完,就开始对外提供服务,导致失败调用。关键代码如下数据的初始化加载是通过实现CommandLineRunner接口完成的@ComponentpublicclassLoadS
- Linux 存储设备和 Ventoy 启动盘制作指南
小白也有IT梦
linux运维服务器
一、Linux存储设备基础知识1.设备路径(/dev)设备路径是Linux系统中物理存储设备的唯一标识,类似设备的"身份证号"。命名规则解析/dev/sda:/dev:device(设备)的缩写,存放设备文件的目录sd:源自SCSIdevice,现在用于表示存储设备a:表示第一个检测到的存储设备数字(如sda1):表示该设备上的分区编号2.挂载点与挂载过程挂载点是访问存储设备内容的入口,本质是一个
- 交叉引用多篇文献操作
小白也有IT梦
word
要在Word中为多个连续的参考文献创建一个交叉引用(如[1-3]表示文献1、2、3),你可以按以下步骤操作:使用“交叉引用”功能,插入你需要引用的文献范围内的第一个和最后一个文献编号,比如[1][3]。选中这两个编号,右键选择“切换域代码”,将其转换为域代码形式。对于第一个文献的域代码,在代码末尾添加\#"[0";对于最后一个文献的域代码,在代码末尾添加\#"0]"。\#"[0",\"#0]"选择
- 【Java基础】抽象类、接口、内部的运用与作用分析,枚举类型的使用
唐僧洗头爱飘柔9527
javajava开发语言JavaSE内部类抽象类interface接口枚举类
1.抽象类在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法、初始化块和构造方法和普通类一样。并且抽象类和普通类相比还多出了抽象方法。格式:[修饰符]abstractclass类名{//零到多个成员变量//零到多
- SQL语言中的查询语句整理
唐僧洗头爱飘柔9527
sqlmysql数据库
1、查询语句的介绍:本篇主要介绍sql语句里的查询语句,这其中包括了查询语句中的子内容,也就是拓展的内容,这些内容代入到查询语句中将会有更多的反应。2、查询语句:FROM命令:SELECT字段1,字段2,字段3FROM表文件名执行顺序:mysql共有7个查询命令,FROM命令永远是第一个执行的查询命令执行作用:FROM命令相当于一个读取流,分则将硬盘上表文件加载到内存中生成一个【临时表】供后续查询
- JVM StackMapTable 属性的作用及理解
lijingyao8206
jvm字节码Class文件StackMapTable
在Java 6版本之后JVM引入了栈图(Stack Map Table)概念。为了提高验证过程的效率,在字节码规范中添加了Stack Map Table属性,以下简称栈图,其方法的code属性中存储了局部变量和操作数的类型验证以及字节码的偏移量。也就是一个method需要且仅对应一个Stack Map Table。在Java 7版
- 回调函数调用方法
百合不是茶
java
最近在看大神写的代码时,.发现其中使用了很多的回调 ,以前只是在学习的时候经常用到 ,现在写个笔记 记录一下
代码很简单:
MainDemo :调用方法 得到方法的返回结果
- [时间机器]制造时间机器需要一些材料
comsci
制造
根据我的计算和推测,要完全实现制造一台时间机器,需要某些我们这个世界不存在的物质
和材料...
甚至可以这样说,这种材料和物质,我们在反应堆中也无法获得......
 
- 开口埋怨不如闭口做事
邓集海
邓集海 做人 做事 工作
“开口埋怨,不如闭口做事。”不是名人名言,而是一个普通父亲对儿子的训导。但是,因为这句训导,这位普通父亲却造就了一个名人儿子。这位普通父亲造就的名人儿子,叫张明正。 张明正出身贫寒,读书时成绩差,常挨老师批评。高中毕业,张明正连普通大学的分数线都没上。高考成绩出来后,平时开口怨这怨那的张明正,不从自身找原因,而是不停地埋怨自己家庭条件不好、埋怨父母没有给他创造良好的学习环境。
- jQuery插件开发全解析,类级别与对象级别开发
IT独行者
jquery开发插件 函数
jQuery插件的开发包括两种: 一种是类级别的插件开发,即给
jQuery添加新的全局函数,相当于给
jQuery类本身添加方法。
jQuery的全局函数就是属于
jQuery命名空间的函数,另一种是对象级别的插件开发,即给
jQuery对象添加方法。下面就两种函数的开发做详细的说明。
1
、类级别的插件开发 类级别的插件开发最直接的理解就是给jQuer
- Rome解析Rss
413277409
Rome解析Rss
import java.net.URL;
import java.util.List;
import org.junit.Test;
import com.sun.syndication.feed.synd.SyndCategory;
import com.sun.syndication.feed.synd.S
- RSA加密解密
无量
加密解密rsa
RSA加密解密代码
代码有待整理
package com.tongbanjie.commons.util;
import java.security.Key;
import java.security.KeyFactory;
import java.security.KeyPair;
import java.security.KeyPairGenerat
- linux 软件安装遇到的问题
aichenglong
linux遇到的问题ftp
1 ftp配置中遇到的问题
500 OOPS: cannot change directory
出现该问题的原因:是SELinux安装机制的问题.只要disable SELinux就可以了
修改方法:1 修改/etc/selinux/config 中SELINUX=disabled
2 source /etc
- 面试心得
alafqq
面试
最近面试了好几家公司。记录下;
支付宝,面试我的人胖胖的,看着人挺好的;博彦外包的职位,面试失败;
阿里金融,面试官人也挺和善,只不过我让他吐血了。。。
由于印象比较深,记录下;
1,自我介绍
2,说下八种基本类型;(算上string。楼主才答了3种,哈哈,string其实不是基本类型,是引用类型)
3,什么是包装类,包装类的优点;
4,平时看过什么书?NND,什么书都没看过。。照样
- java的多态性探讨
百合不是茶
java
java的多态性是指main方法在调用属性的时候类可以对这一属性做出反应的情况
//package 1;
class A{
public void test(){
System.out.println("A");
}
}
class D extends A{
public void test(){
S
- 网络编程基础篇之JavaScript-学习笔记
bijian1013
JavaScript
1.documentWrite
<html>
<head>
<script language="JavaScript">
document.write("这是电脑网络学校");
document.close();
</script>
</h
- 探索JUnit4扩展:深入Rule
bijian1013
JUnitRule单元测试
本文将进一步探究Rule的应用,展示如何使用Rule来替代@BeforeClass,@AfterClass,@Before和@After的功能。
在上一篇中提到,可以使用Rule替代现有的大部分Runner扩展,而且也不提倡对Runner中的withBefores(),withAfte
- [CSS]CSS浮动十五条规则
bit1129
css
这些浮动规则,主要是参考CSS权威指南关于浮动规则的总结,然后添加一些简单的例子以验证和理解这些规则。
1. 所有的页面元素都可以浮动 2. 一个元素浮动后,会成为块级元素,比如<span>,a, strong等都会变成块级元素 3.一个元素左浮动,会向最近的块级父元素的左上角移动,直到浮动元素的左外边界碰到块级父元素的左内边界;如果这个块级父元素已经有浮动元素停靠了
- 【Kafka六】Kafka Producer和Consumer多Broker、多Partition场景
bit1129
partition
0.Kafka服务器配置
3个broker
1个topic,6个partition,副本因子是2
2个consumer,每个consumer三个线程并发读取
1. Producer
package kafka.examples.multibrokers.producers;
import java.util.Properties;
import java.util.
- zabbix_agentd.conf配置文件详解
ronin47
zabbix 配置文件
Aliaskey的别名,例如 Alias=ttlsa.userid:vfs.file.regexp[/etc/passwd,^ttlsa:.:([0-9]+),,,,\1], 或者ttlsa的用户ID。你可以使用key:vfs.file.regexp[/etc/passwd,^ttlsa:.: ([0-9]+),,,,\1],也可以使用ttlsa.userid。备注: 别名不能重复,但是可以有多个
- java--19.用矩阵求Fibonacci数列的第N项
bylijinnan
fibonacci
参考了网上的思路,写了个Java版的:
public class Fibonacci {
final static int[] A={1,1,1,0};
public static void main(String[] args) {
int n=7;
for(int i=0;i<=n;i++){
int f=fibonac
- Netty源码学习-LengthFieldBasedFrameDecoder
bylijinnan
javanetty
先看看LengthFieldBasedFrameDecoder的官方API
http://docs.jboss.org/netty/3.1/api/org/jboss/netty/handler/codec/frame/LengthFieldBasedFrameDecoder.html
API举例说明了LengthFieldBasedFrameDecoder的解析机制,如下:
实
- AES加密解密
chicony
加密解密
AES加解密算法,使用Base64做转码以及辅助加密:
package com.wintv.common;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import sun.misc.BASE64Decod
- 文件编码格式转换
ctrain
编码格式
package com.test;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
- mysql 在linux客户端插入数据中文乱码
daizj
mysql中文乱码
1、查看系统客户端,数据库,连接层的编码
查看方法: http://daizj.iteye.com/blog/2174993
进入mysql,通过如下命令查看数据库编码方式: mysql> show variables like 'character_set_%'; +--------------------------+------
- 好代码是廉价的代码
dcj3sjt126com
程序员读书
长久以来我一直主张:好代码是廉价的代码。
当我跟做开发的同事说出这话时,他们的第一反应是一种惊愕,然后是将近一个星期的嘲笑,把它当作一个笑话来讲。 当他们走近看我的表情、知道我是认真的时,才收敛一点。
当最初的惊愕消退后,他们会用一些这样的话来反驳: “好代码不廉价,好代码是采用经过数十年计算机科学研究和积累得出的最佳实践设计模式和方法论建立起来的精心制作的程序代码。”
我只
- Android网络请求库——android-async-http
dcj3sjt126com
android
在iOS开发中有大名鼎鼎的ASIHttpRequest库,用来处理网络请求操作,今天要介绍的是一个在Android上同样强大的网络请求库android-async-http,目前非常火的应用Instagram和Pinterest的Android版就是用的这个网络请求库。这个网络请求库是基于Apache HttpClient库之上的一个异步网络请求处理库,网络处理均基于Android的非UI线程,通
- ORACLE 复习笔记之SQL语句的优化
eksliang
SQL优化Oracle sql语句优化SQL语句的优化
转载请出自出处:http://eksliang.iteye.com/blog/2097999
SQL语句的优化总结如下
sql语句的优化可以按照如下六个步骤进行:
合理使用索引
避免或者简化排序
消除对大表的扫描
避免复杂的通配符匹配
调整子查询的性能
EXISTS和IN运算符
下面我就按照上面这六个步骤分别进行总结:
- 浅析:Android 嵌套滑动机制(NestedScrolling)
gg163
android移动开发滑动机制嵌套
谷歌在发布安卓 Lollipop版本之后,为了更好的用户体验,Google为Android的滑动机制提供了NestedScrolling特性
NestedScrolling的特性可以体现在哪里呢?<!--[if !supportLineBreakNewLine]--><!--[endif]-->
比如你使用了Toolbar,下面一个ScrollView,向上滚
- 使用hovertree菜单作为后台导航
hvt
JavaScriptjquery.nethovertreeasp.net
hovertree是一个jquery菜单插件,官方网址:http://keleyi.com/jq/hovertree/ ,可以登录该网址体验效果。
0.1.3版本:http://keleyi.com/jq/hovertree/demo/demo.0.1.3.htm
hovertree插件包含文件:
http://keleyi.com/jq/hovertree/css
- SVG 教程 (二)矩形
天梯梦
svg
SVG <rect> SVG Shapes
SVG有一些预定义的形状元素,可被开发者使用和操作:
矩形 <rect>
圆形 <circle>
椭圆 <ellipse>
线 <line>
折线 <polyline>
多边形 <polygon>
路径 <path>
- 一个简单的队列
luyulong
java数据结构队列
public class MyQueue {
private long[] arr;
private int front;
private int end;
// 有效数据的大小
private int elements;
public MyQueue() {
arr = new long[10];
elements = 0;
front
- 基础数据结构和算法九:Binary Search Tree
sunwinner
Algorithm
A binary search tree (BST) is a binary tree where each node has a Comparable key (and an associated value) and satisfies the restriction that the key in any node is larger than the keys in all
- 项目出现的一些问题和体会
Steven-Walker
DAOWebservlet
第一篇博客不知道要写点什么,就先来点近阶段的感悟吧。
这几天学了servlet和数据库等知识,就参照老方的视频写了一个简单的增删改查的,完成了最简单的一些功能,使用了三层架构。
dao层完成的是对数据库具体的功能实现,service层调用了dao层的实现方法,具体对servlet提供支持。
&
- 高手问答:Java老A带你全面提升Java单兵作战能力!
ITeye管理员
java
本期特邀《Java特种兵》作者:谢宇,CSDN论坛ID: xieyuooo 针对JAVA问题给予大家解答,欢迎网友积极提问,与专家一起讨论!
作者简介:
淘宝网资深Java工程师,CSDN超人气博主,人称“胖哥”。
CSDN博客地址:
http://blog.csdn.net/xieyuooo
作者在进入大学前是一个不折不扣的计算机白痴,曾经被人笑话过不懂鼠标是什么,