Thinking in Java
文章平均质量分 77
桑汤奈伊伏
洋文好,写博遵循基本法 / 非常熟悉西方的那套理论 / 大新闻酝酿中,先从微小的事情做起 / c,c++,java,js,python哪个语言没学过,我和他们谈..并不能...orz。
展开
-
Java中逻辑表达式的短路(先理解运算符的优先级)
在学习Java中逻辑表达式中的短路机制之前, 我们必须明确一点:就是运算符优先级与执行顺序的问题, 运算符优先级高的表达式在执行时会被视为一个整体, 但是对于除赋值符外的所有二元运算符来说, 执行的顺序始终是从左到右执行的.比如 1 + 2 + (3 + 4) 这个式子, 括号的优先级最高, 所以括号内的表达式被视为一个整体, 执行顺序是 1+2+(整体)......原创 2015-08-09 18:36:44 · 5998 阅读 · 0 评论 -
Java 日期字符串YYYYMMDDHHMISS 格式化为自然语言日期(xxxx年xx月xx日xx时xx分)
项目有个地方需要把已经格式化为连续字符串的日期又重新转化为自然语言的日期样式,不是很想花时间写就去网上搜了一下没有找到,写吧。世界这么大,说不定还是有和我遇到同样需求但是也懒得自己敲的伙计呢。留个记录,给有需要的人。这段代码的功能是把YYYYMMDDHHMISS的日期字符串格式化为xxxx年xx月xx日xx时xx分。自己根据需要改格式也可以。public class Test { //autho...原创 2017-04-20 11:51:54 · 11637 阅读 · 0 评论 -
详解Java GC的工作原理+Minor GC、FullGC
详解Java GC的工作原理+Minor GC、FullGCJVM内存管理和JVM垃圾回收JVM内存组成结构JVM内存结构由堆、栈、本地方法栈、方法区等部分组成,结构图如下所示:1)堆所有通过new创建的对象的内存都在堆中分配,其大小可以通过-Xmx和-Xms来控制。堆被划分为新生代和旧生代,新生代又被进一步划分为Eden和Survivo转载 2015-11-03 09:27:09 · 398 阅读 · 0 评论 -
浅谈Java Comparator用法
会用Java Comparator会给编程带来很多方便,特别是自定义的对象的排序,至少不用每次都去自己写排序算法,特别是做OJ的时候,时间有限,更加来不及。1.使用Comparator首先要实现一个自定义的比较器的类,该类必须实现Comparator接口。下面的Comparator实现了一个根据MyObject的weight,升序排序的比较器class MyCP impleme原创 2015-10-13 10:48:33 · 467 阅读 · 0 评论 -
Java中的String与常量池
string是java中的字符串。String类是不可变的,对String类的任何改变,都是返回一个新的String类对象。下面介绍java中的String与常量池。1. 首先String不属于8种基本数据类型,String是一个对象。因为对象的默认值是null,所以String的默认值也是null;但它又是一种特殊的对象,有其它对象没有的一些特性。2. n转载 2015-11-10 08:42:15 · 324 阅读 · 0 评论 -
String str=newString("abc")创建了多少个对象
String str=newString("abc"); 紧接着这段代码之后的往往是这个问题,那就是这行代码究竟创建了几个String对象呢? 相信大家对这道题并不陌生,答案也是众所周知的,2个。 接下来我们就从这道题展开,一起回顾一下与创建String对象相关的一些JAVA知识。 我们可以把上面这行代码分成String str、=、"abc"和new String转载 2015-11-04 22:08:20 · 571 阅读 · 0 评论 -
Java中的equals与hashCode方法(判断插入容器的内容是否重复)
最近总是能够看到关于equals与hashCode之间的关系的讨论, 虽然大概了解, 但还是缺乏一个系统的总结, 在这里就稍稍深入的介绍一下, 也作为知识的整合。equals与hashCode被一起提到, 经常都是会出现在String中既重写了equals方法, 又重写了hashCode方法, 因此在两次插入a到Set中,第二次判定为插入了重复的元素,插入失败。pu原创 2015-09-18 12:35:15 · 1173 阅读 · 0 评论 -
Java中的动态绑定详解
本来觉得动态绑定的知识点不多, 里面讲的也确实不多, 但是 看了几个例子之后才发现自己也是一知半解. 要讲动态绑定, 自然也得讲方法的重写与隐藏, 此处做一个读书笔记吧, 一是备忘, 二是整合下知识.动态绑定关于动态绑定我们需要知道:1static final private修饰的方法不适用动态绑定2static方法可以被继承,但是不能被子类覆盖(但可以被隐藏), 因此当我们向原创 2015-08-16 09:53:46 · 1060 阅读 · 0 评论 -
Java中的static关键字详解
有些很基础的东西, 你以为你懂了, 但其实并不, 只是你用得比较少. 本来以为已经已经掌握了static关键字了, 实际也只是一知半解, 写个博客做备忘吧.执行顺序 静态代码块( 基类和子类的都要执行, 基类先于子类执行, 都只执行一次) > 非静态代码块(基类先于子类执行, 多次执行) > 构造方法(基类先于子类执行, 多次执行) 静态成员变量静态方法 不可以在原创 2015-08-12 19:17:30 · 588 阅读 · 0 评论 -
Java中的参数传递方式
博主最先接触的是C和C++,后面自学了Java用到了现在.说来惭愧,没有特地去深究一些基础问题,也是迷迷糊糊的按着C++那一套来,最近开始看>, 羞于很多基础内容都没有弄明白, 故有此文.让我们先记住结论: 1. Java中只有值传递 !只是值的形式不同, 基本数据类型传的值是内容(名副其实的传值), 对象传的值是对象的地址(传值传的值是一个地址).2. 操纵方法体中的原创 2015-08-09 11:40:44 · 667 阅读 · 0 评论