Java基础与积累
语法,难点,入门的经历。
后台技术汇
强大自己是解决问题的唯一办法。
展开
-
Java(47):解剖 Integer 等包装类的自动装箱拆箱和jvm缓存机制
目录写在开头Integer包装类的缓存机制Integer源码(节选)其他包装类的缓存行为自动装箱Integer初始化的三种方式比较运算符的应用参考文章:写在开头自动装箱和拆箱、for循环都是java语言的语法糖!!《深入理解JVM虚拟机》Integer包装类的缓存机制Integer的缓存机制: Integer是对小数据(-128~127)是...原创 2019-12-18 16:42:30 · 277 阅读 · 0 评论 -
设计模式学习(九): 结构型模式之代理模式(详解)
2019年7月28日目录写在开头静态代理实现动态代理实现剖析动态反射 Proxy.newProxyInstance写在末尾写在开头代理模式可以有两种实现的方式,一种是静态代理类,另一种是各大框架都喜欢的动态代理。下面以java语言为例,给大家详细解释代理模式的用法。结构型模式讨论的是类和对象的结构,它采用继承机制来组合接口或实现(类结构型模式),或者通过组合一...原创 2019-07-28 11:35:16 · 260 阅读 · 0 评论 -
Java(46):九个demo彻底让你明白内部类的语法使用!!
2019年5月3日目录引入demo1:普通内部类demo2:直接创建普通内部类demo3:静态内部类demo4:内部类与内部类成员demo5:内部类与外部类成员调用关系demo6:内部类访问外部类成员demo7:匿名内部类是抽象类demo8:匿名内部类是接口demo9:内部类作函数实参引入一般项目编程中,很少业务代码会使用到内部类,但是我经常看...原创 2019-06-01 15:28:37 · 191 阅读 · 0 评论 -
Java(45):Java小结之异常篇
2019年3月8日08:58:23《 effectivejava》总结:一、异常用于异常情况使用而设计,不要用于普通控制流;二、java目前有三种可抛出结构:受检异常(checkedexception)、运行时异常(run-timeexception)、错误(error);三、“受检异常=》未受检异常”:将抛异常方法分成两个方法:一个是返回一个boolean,表明是否抛异常;...原创 2019-03-13 20:35:57 · 206 阅读 · 0 评论 -
开发日常小结(44):Java,深拷贝/浅拷贝的区别(clone,ConvertHelper的使用,Cloneable接口)
2019年1月27日10:32:31工作中,忽然收到测试提的一个奇怪的bug(当然只是浅层原因),经过log定位,发现对象竟然被修改了,顺藤摸瓜,我找到了问题根源:那就是某处地方对参数对象进行了一个浅拷贝,然后修改了对象里面的hashMap属性,导致了问题。(总结:hashmap属性clone属于浅拷贝,Converthelper是公司封装的一个工具类,看过源码才明白也是浅拷贝,clone...原创 2019-01-27 14:59:47 · 296 阅读 · 0 评论 -
多线程学习(6):Java 多线程间通信(五个通俗易懂例子)
2018年10月10日目录1、提出问题2、测试Demo2.1 线程依次执行2.2 两个线程按照指定方式有序交叉运行2.3 四个线程 A B C D,其中 D 要等到 A B C 全执行完毕后才执行,而且 A B C 是同步运行的2.4 三个运动员各自准备,等到三个人都准备好后,再一起跑2.5 子线程完成某件任务后,把得到的结果回传给主线程1、提出问题 ...原创 2018-10-10 11:31:01 · 279 阅读 · 0 评论 -
开发日常小结(36):源码分析:String类的substring(int beginIndex, int endIndex)方法
目录1、提出问题2、测试Demo3、源码:1、提出问题顺序执行下列程序语句后,则b的值是()String a="Hello";String b=a.substring(0,2); 2、测试Demopublic class test_string_substring { /** * @param args */ public static...原创 2018-10-08 19:00:44 · 991 阅读 · 0 评论 -
开发日常小结(35):源码分析:反射的方法获取
目录1、提出问题:2、测试Demo:3、源码3/1 getMethods()方法3/2 getDeclaredClasses()方法 1、提出问题:Class.getMethods() 和 Class.getDeclaredMethods()区别是什么?获取到哪些返回值? 2、测试Demo:public class test_class_exte...原创 2018-10-08 15:49:10 · 154 阅读 · 0 评论 -
开发日常小结(34):源码分析:String类的equals()方法
目录1、提出问题2、源码分析3、测试Demo:1、提出问题我们都知道,在Java中,“==”比较的是对象在内存中的地址,“equals”比较对象的内容;今天复习一下”equals“。 2、源码分析 /** * Compares this string to the specified object. The result is {@code...原创 2018-10-07 21:32:12 · 337 阅读 · 0 评论 -
开发日常小结(33):Java中的数组是否是对象
2018年10月06日目录1、概念2、测试Demo1、概念数组:具有相同类型的数据的集合,1)具有固定的长度;2)在内存中占据连续空间;Java中,数组有属性(length属性),也有方法(clone方法);对象的特点:封装了数据,同时提供一些属性和方法,故数组是对象!! 2、测试Demopackage testArray;public class...原创 2018-10-06 19:19:04 · 135 阅读 · 0 评论 -
开发日常小结(32):HashMap 源码分析
2018年10月05日目录1、Java数据结构图2、HashMap构造器2.1 HashMap(int initialCapacity, float loadFactor) 2.2 HashMap(int initialCapacity)2.3 HashMap()2.4 HashMap(Map m) 3、put(K key, V value)方法4、get(Ob...原创 2018-10-05 11:47:10 · 228 阅读 · 0 评论 -
开发日常小结(31):数组array与列表ArrayList的遍历性能比较与分析
2018年10月03日目录测试结论测试例子性能分析1)数组Array:2)列表ArrayList:2.1 构造函数2.2 成员变量2.3 add 方法(队列末尾插入一个元素 / 队列特定位置插入一个元素)2.4 remove方法(删除指定位置的元素 / 删除某个元素)2.5 get 方法 测试结论Java两个常用的数据结构进行性能的比较,发...原创 2018-10-03 21:30:42 · 898 阅读 · 0 评论 -
Java(44):Comparable 接口 与 Comparator 接口的使用与比较
2018年09月28日目录1.Comparable接口的概念2、Comparable接口使用2.1 新建类 Age.java ,implements 接口,重写compareTo() 方法:2.2 测试Demo:ComparableTest.java3、Comparator 接口的概念4、Comparator接口的使用4.1 新建比较器类AgeComparator,...原创 2018-09-28 11:28:15 · 143 阅读 · 0 评论 -
Java(43):反射机制的使用
2018年09月24日 目录目录一、java反射机制概念二、反射的用途三、reflectionDemoTest3.1 新建一个测试bo3.2 写测试Demo3.3 运行demo一、java反射机制概念反射 (Reflection) 是 Java 的特征之一,它允许运行中的 Java 程序获取自身的信息,并且可以操作类或对象的内部属性。Reflect...原创 2018-09-24 18:26:56 · 132 阅读 · 0 评论 -
开发日常小结(30):jar包的打包与使用
2018年09月24日jar包概念 编译打包 测试使用 jar用途 与其他压缩格式的区别1、什么是jar包?JAR(Java ARchive,Java 归档)是一种与平台无关的文件格式,可将多个文件合成一个文件。除了可以包括声音和图像文件以外,也可以在其中包括类文件。JAR 文件格式以流行的 ZIP 文件格式为基础。与 ZIP 文件不同的是,JAR 文件不仅用于压缩和...原创 2018-09-24 13:14:44 · 425 阅读 · 0 评论 -
开发日常小结(29):UUID的使用
2018年7月23日15:24:03【1】概念 【2】测试例子package test7;import java.util.UUID;public class cupNo { public static void main(String [] args){ String uuid = UUID.randomUUID().toString(); //获取UUID并转化...原创 2018-07-23 19:12:51 · 297 阅读 · 0 评论 -
开发日常小结(27): Infinity与NaN的实现
2018年7月20日16:09:30场外音:总裁来故宫了。今日久违碰到基础的bug:java计算中碰到了“Infinity与NaN”;前端的哥们抱怨说为啥初始化数据时就出现这种情况捏??我汗颜..........【1】小例子导入java浮点数运算中有两个特殊的情况:NAN、INFINITY,分别是“非数字”和“无限大”;public abstract class ...原创 2018-07-20 19:59:46 · 1508 阅读 · 0 评论 -
开发日常小结(19):Spring AOP 最佳入门试验 + 游戏禁言的应用实例小结
2018年5月18日18:08:27一、实例-业务需求和场景:1、游戏的玩家时常出言不逊,这时候禁言这个功能应运而生了;2、手游的发言场景,其实是前端到后端的接口调用与返回的过程;3、特别是棋牌游戏,德州扑克有聊天接口、斗地主、百人场等等都会有相应的接口;因次,导致的结果是:禁言就是不断地在游戏接口重复判断,这样的工作是重复性的。有没有好的方法捏?下面讲解一下我在工作的一次小突破(实际结果嘛··文...原创 2018-05-18 18:40:35 · 283 阅读 · 0 评论 -
java基础(44):数组转列表 -- Arrays.asList()的使用
看项目源码,发现不懂的地方: /** * Returns a fixed-size list backed by the specified array. (Changes to * the returned list "write through" to the array.) This method acts * as bridge between ar...原创 2018-05-10 18:54:14 · 151 阅读 · 0 评论 -
java基础(43):《转载》九种基本数据类型,以及他们的封装类
基本类型大小(字节)默认值封装类byte1(byte)0Byteshort2(short)0Shortint40Integerlong80LLongfloat40.0fFloatdouble80.0dDoubleboolean-falseBooleanchar2\u0000(null)Charactervoid--Void基本类型所占的存储空间是不变的:这种不变性也是java具有可移植性的原因之一...转载 2018-05-10 12:30:02 · 151 阅读 · 0 评论 -
<转载>Java(41):在jsp中取出存放在Attribute中的对象及属性
<转载>Java(41):在jsp中取出存放在Attribute中的对象及属性转载 2018-02-03 16:44:23 · 1911 阅读 · 0 评论 -
<转载>Java(42):MIME-格式数据
2018年2月15日什么是MIME MIME, 全称为“Multipurpose Internet Mail Extensions”, 比较确切的中文名称为“多用途互联网邮件扩展”。它是当前广泛应用的一种电子邮件技术规范,基本内容定义于RFC 2045-2049 什么是MIME类型?-在把输出结果传送到浏览器上的时候,浏览器必须启动适当的应用程序来处理这个输出文档。这可以通过多...转载 2018-02-15 09:00:55 · 234 阅读 · 0 评论 -
<转载>Java(40):File.separator-- Java 路径分隔符
<转载>Java(40):File.separator-- Java 路径分隔符转载 2018-02-01 20:00:27 · 237 阅读 · 0 评论 -
java(39):static 与单例设计模式有何渊源?
java(39):static 与单例设计模式有何渊源?原创 2018-01-17 21:21:57 · 186 阅读 · 0 评论 -
Java(1):方法重载(1)
Java的方法重载(1)原创 2017-10-10 17:19:02 · 299 阅读 · 0 评论 -
Java(2):数组(1)
Java数组知识(1)原创 2017-10-10 18:28:25 · 253 阅读 · 0 评论 -
Java(3):数组(2)--遍历
Java:数组基础(2)原创 2017-10-11 09:21:38 · 188 阅读 · 0 评论 -
Java(4):基础算法(1)--斐波那契数列之小兔子生孩子
Java(4):小算法--斐波那契序列原创 2017-10-11 09:38:44 · 834 阅读 · 0 评论 -
Java(4):基础:面向对象学习的重要点
Java(4):基础:面向对象重点概念--变量(成员/局部)、内部类、多态、接口和抽象、封装原创 2017-11-15 11:14:25 · 225 阅读 · 0 评论 -
Java(6):基础语法(1)---else if
Java(5):基础语法(1)原创 2017-11-15 11:35:45 · 229 阅读 · 0 评论 -
mysql(3):mysql与java的连接使用
mysql(3):mysql与java的连接使用原创 2017-10-26 20:32:16 · 518 阅读 · 0 评论 -
Java(5):基础:String、StringBuffer和StringBuilder的区别
Java(5):基础:String、StringBuffer和StringBuilder的区别原创 2017-11-05 09:06:40 · 200 阅读 · 0 评论 -
java(7):内存泄露
java(7):内存泄露小结原创 2017-10-27 23:52:57 · 168 阅读 · 0 评论 -
Java(8):基础算法(2)--冒泡排序算法 + 选择排序算法 + 插入排序算法
Java(8):基础算法(2)--冒泡排序算法 + 选择排序算法 + 插入排序算法原创 2017-10-28 22:43:32 · 338 阅读 · 0 评论 -
Java(9):MVC框架基础:Servlet+Jsp+javabean(1)
Java(9):MVC框架基础:Servlet+Jsp+javabean(1)原创 2017-11-15 17:30:42 · 484 阅读 · 0 评论 -
java(10):jdbc的简单使用和操作
java(10):jdbc的简单使用和操作原创 2017-10-31 16:17:36 · 424 阅读 · 0 评论 -
java(11):tomcat简介与使用(上)
java(11):tomcat简介与使用(上)原创 2017-10-31 17:04:19 · 1148 阅读 · 0 评论 -
java(12):tomcat简介与使用(中)
java(12):tomcat简介与使用(中)原创 2017-11-01 19:11:06 · 351 阅读 · 0 评论 -
java(13):tomcat简介与使用(下)
java(13):tomcat简介与使用(下)原创 2017-11-03 17:42:15 · 672 阅读 · 0 评论 -
java(14):数据结构(1)--Collection
java(14):数据结构(1)--Collection原创 2017-11-03 17:43:19 · 235 阅读 · 0 评论