![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 57
wakeupwakeup
这个作者很懒,什么都没留下…
展开
-
java中的匿名内部类总结
匿名内部类也就是没有名字的内部类正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口 实例1:不使用匿名内部类来实现抽象方法12345678910111213转载 2016-02-01 15:26:21 · 336 阅读 · 0 评论 -
深入 理解 Statement 和 PreparedStatement
一、使用Statement而不是PreparedStatement对象JDBC驱动的最佳化是基于使用的是什么功能. 选择PreparedStatement还是Statement取决于你要怎么使用它们. 对于只执行一次的SQL语句选择Statement是最好的. 相反, 如果SQL语句被多次执行选用PreparedStatement是最好的.PreparedStatement的第一次执行转载 2016-04-20 10:10:31 · 308 阅读 · 0 评论 -
class.getResource()和getResourceAsStream乱码问题
getResource方法使用了utf-8对路径信息进行了编码,当路径中存在中文和空格时,他会对这些字符进行转换,这样,得到的往往不是我们想要的真实路径,在此,调用了URLDecoder的decode方法进行解码,以便得到原始的中文及空格路径。String configPath = this.getClass().getClassLoader().getResource("allowPat转载 2016-04-20 13:39:09 · 7721 阅读 · 0 评论 -
关于Class.getResource和ClassLoader.getResource的路径问题
Java中取资源时,经常用到Class.getResource和ClassLoader.getResource,这里来看看他们在取资源文件时候的路径问题。Class.getResource(String path)path不以’/'开头时,默认是从此类所在的包下取资源;path 以’/'开头时,则是从ClassPath根下获取;什么意思呢?看下面这段代码的输出结果就转载 2016-04-20 14:15:38 · 239 阅读 · 0 评论 -
Accessing Members of an Enclosing Class
A local class has access to the members of its enclosing class. In the previous example, the PhoneNumber constructor accesses the member LocalClassExample.regularExpression.In addition, a local cl转载 2016-04-23 12:28:08 · 472 阅读 · 0 评论 -
学习JAVA浮点数必看文章!
虽然几乎每种处理器和编程语言都支持浮点运算,但大多数程序员很少注意它。这容易理解 ― 我们中大多数很少需要使用非整数类型。除了科学计算和偶尔的计时测试或基准测试程序,其它情况下几乎都用不着它。同样,大多数开发人员也容易忽略 java.math.BigDecimal 所提供的任意精度的小数 ― 大多数应用程序不使用它们。然而,在以整数为主的程序中有时确实会出人意料地需要表示非整型数据。例转载 2016-06-29 10:02:04 · 2842 阅读 · 0 评论 -
float与double类型的范围和精度
转自:http://www.cnblogs.com/tekson/archive/2009/07/16/1524604.html http://www.ruanyifeng.com/blog/2010/06/ieee_floating-point_representation.html http://docs.oracle.com/cd/E19059转载 2016-06-30 13:28:19 · 1288 阅读 · 2 评论 -
深入理解计算机系统(2.8)---浮点数的舍入,Java中的舍入例子以及浮点数运算(重要)
本文转载地址:http://www.cnblogs.com/zuoxiaolong/p/computer12.html 前言 上一章我们简单介绍了IEEE浮点标准,本次我们主要讲解一下浮点运算舍入的问题,以及简单的介绍浮点数的运算。 之前我们已经提到过,有很多小数是二进制浮点数无法准确表示的,因此就难免会遇到舍入的问题。这一点其实在我们平时的计算当中会经常转载 2016-06-30 13:31:27 · 1138 阅读 · 0 评论 -
Java集合类: Set、List、Map、Queue使用场景梳理
本文主要关注Java编程中涉及到的各种集合类,以及它们的使用场景 相关学习资料 http://files.cnblogs.com/LittleHann/java%E9%9B%86%E5%90%88%E6%8E%92%E5%BA%8F%E5%8F%8Ajava%E9%9B%86%E5%90%88%E7%B1%BB%E8%AF%A6%E8%A7%A3%28colle转载 2016-07-05 18:54:59 · 1346 阅读 · 0 评论 -
深入解析HashMap、HashTable
集合类之番外篇:深入解析HashMap、HashTableJava集合类是个非常重要的知识点,HashMap、HashTable、ConcurrentHashMap等算是集合类中的重点,可谓“重中之重”,首先来看个问题,如面试官问你:HashMap和HashTable有什么区别,一个比较简单的回答是:1、HashMap是非线程安全的,HashTable是线程安全的。2、Hash转载 2016-07-05 19:36:22 · 392 阅读 · 0 评论 -
详解Java泛型type体系整理
一直对jdk的ref使用比较模糊,早上花了点时间简单的整理了下,也帮助自己理解一下泛型的一些处理。java中class,method,field的继承体系java中所有对象的类型定义类Type说明:Type : Type is the common superinterface for all types in the Jav转载 2016-06-22 11:17:21 · 1330 阅读 · 1 评论 -
Ubuntu 12.04 下编译OpenJDK 7问题
刚开始选择在Windows的Cygwin下编译,结果问题连连,两天都搞不定。只有换到Ubuntu下面。记录一下不过12.04的Ubuntu使用的是3.2的内核,而openJDK的hotspot的Makefile里面支持的内核没这么高,所以会遇到一些问题。所以个人建议还是用9或者10的Ubuntu版本。编译的过程不复杂:下载源代码。 按照README-builds.html里面ubu转载 2016-07-19 10:23:14 · 399 阅读 · 0 评论 -
ubuntu下使用QtCreator调试hotspot源码
首先你需要学习如何使用openjdk7的源码中的makefile来编译hotspot虚拟机。这个过程如何操作就省略了。《深入理解java虚拟机》一书及网上均有很多教程。现在假设你已经完成了这一步骤,并生成了debug版本的hotspot虚拟机。首先我们使用QtCreator新建一个Plain C++ Project。新建完后添加hotspot的源码,这个有点麻烦,需原创 2016-07-20 16:26:00 · 648 阅读 · 0 评论 -
Eclipse debug JDK源码无法看到局部变量
Generally speaking, to be able to watch the variables while stepping through JDK source code, you need the class files to be compiled with debug information i.e. compile using javac -g. So your转载 2016-04-05 16:53:51 · 1168 阅读 · 0 评论 -
eclipse自动校验xml文件是否符合dtd\xsd约束
今天试了一下eclipse写xml文件,在里面使用了dtd约束,然后编写xml内容,但是却发现似乎eclipse没有按照dtd约束来检查xml文件,也就是xml文件写错了却没提示。试验了好久,发现右键有个"Validate"选项可以校验xml文件,但是每次保存后都要手动右键点"Validate",太麻烦了!!!!!!!只好去找解决方法了,中文搜索似乎也搜不到,大家都没遇到这问题???还原创 2016-04-14 17:35:14 · 6277 阅读 · 0 评论 -
Java方法的覆盖与隐藏的区别分析
关于隐藏和覆盖的区别,要提到RTTI(run-time type identification)(运行期类型检查),也就是运行期的多态,当一个父类引用指向子类对象的时候,请看下面我编写的一段代码:复制代码 代码如下:public class RunTime { public static void main(String[] args) { Anim转载 2016-03-16 14:07:28 · 330 阅读 · 0 评论 -
Eclipse背景颜色设置(设置成豆沙绿色保护眼睛,码农保护色)
菜单栏 windows–>preferences–>general–>editors–>text editors中在Appearance color options下修改 background color为(将system default前的勾点掉)red:204;green:232;blue:207即可转载 2016-03-05 20:54:07 · 5518 阅读 · 0 评论 -
jdk命令集合详解
1、java.exe:运行java程序。 2、javac.exe:编译的Java程序,生成.class文件 3、javaw.exe: 功能: 跟java命令相对的,可以运行.class文件,主要用来执行图形界面的java程序运行java命令时,会出现并保持一个console窗口,程序中的信息可以通过System.out在co转载 2016-02-20 11:24:38 · 457 阅读 · 0 评论 -
框架的概念及用反射技术开发框架的原理<br/>getResourceAsStream用法详解
反射的作用—>实现框架的功能框架-用户类-工具类:框架与工具类有区别,工具类被用户的类调用,而框架则是调用用户提供的类。框架要解决的核心问题:框架如何调用未知的类:通过反射来实现综合案例: 使用配置文件读取调用类的名字工程目录 ReflectTest测试类 1 package com.ljq.test; 2 3 import jav转载 2016-02-20 11:55:54 · 481 阅读 · 0 评论 -
Java反射之内部类
在Java中,使用反射的方法加载类的具体代码是:Class cls = Class.forName("package.ClassName"); 但是,如果需要加载的是一个内部类的话,如果我们使用这种加载方式,会抛出异常:// 如果使用这样的代码,会抛出ClassNotFoundExceptionClass cls = Class.forName("packa转载 2016-03-18 13:15:03 · 658 阅读 · 1 评论 -
Java静态导入(import static)需谨慎
从Java 5 开始引入了静态导入语法(import static),其目是为了减少字符输入量,提高代码的可阅读性,以便更好地理解程序。我们先来看一个不使用静态导入的例子,也就是一般导入:public class MathUtils{ // 计算圆面积 public static double calCircleArea(double r){ return转载 2016-02-22 13:29:36 · 1137 阅读 · 0 评论 -
System.out.println的误解
package example;import static java.lang.System.out.*;public class StaticImport(){ public StaticImport() { println("Static import!"); } public static void main(String原创 2016-02-22 14:09:06 · 446 阅读 · 1 评论 -
java中整型之间的转换
先看下面一段代码:byte a = (byte)0x80000001;int b = (int)0x80000001;System.out.println(a);System.out.println(b);a = (byte)b;System.out.println(a);输出结果为什么呢?结果是:1-21474836471分析原因:从较大的类型从较小的类型做原创 2016-03-19 18:38:36 · 1216 阅读 · 0 评论 -
happens-before俗解
学习Java并发,到后面总会接触到happens-before偏序关系。初接触玩意儿简直就是不知所云,下面是经过一段时间折腾后个人对此的一点浅薄理解,希望对初接触的人有帮助。如有不正确之处,欢迎指正。synchronized、大部分锁,众所周知的一个功能就是使多个线程互斥/串行的(共享锁允许多个线程同时访问,如读锁)访问临界区,但他们的第二个功能 —— 保证变量的可见性 —— 常被遗忘转载 2016-04-02 17:25:46 · 266 阅读 · 0 评论 -
java线程虚假唤醒
public class MyStack { private List list = new ArrayList(); public synchronized void push(String value) { synchronized (this) { list.add转载 2016-04-05 14:03:33 · 1492 阅读 · 0 评论 -
使用javap命令或者eclipse的Bytecode visualizer插件阅读java字节码文件
阅读java的class文件,最常用的方法是jdk自带的javap命令,但是在eclipse有Bytecode visualizer插件,也可以很好地实现阅读;直接阅读class文件,能够了解一下代码如何执行的内幕,以下面这个代码为例一段用于阅读字节码的源码Java转载 2016-03-23 17:33:57 · 1609 阅读 · 1 评论 -
安装eclipse插件查看java字节码
我用的是eclipse 3.7.0点击Help->Install New Software,然后在里面的Work with输入:http://andrei.gmxhome.de/eclipse.html如下图:然后点next,一直下去,重启eclipse后,点击"Window"->"Show View"->"Other"->"Java"->"Bytecode"原创 2016-03-23 17:59:53 · 1594 阅读 · 2 评论 -
eclipse巧用正则表达式替换
在工作中,经常碰到重构代码,有些事情明明很简单,但要改的东西太多了,重复工作量太大,所以学点技巧是灰常有用的 首先在Person.java中有这些静态常量,注意至少有40多个静态常量 Java代码 ... public static final String PREFERENCE_HIDE_HELP_BLOG = "PREFERENCE_H转载 2016-04-27 14:13:03 · 1465 阅读 · 0 评论 -
秒懂Java动态编程(Javassist研究)
概述什么是动态编程反射动态编译调用JavaScript引擎动态生成字节码动态编程解决什么问题Java中如何使用Javassit使用方法动态生成一个类动态添加构造函数及方法动态修改方法体什么原理总结概述什么是动态编程?动态编程解决什么问题?Java中如何使用?什么原理?如何改进?(需要我们一起探索,由于自己也是比较菜,一般深入不到这个程度)。什么是动态编程动态...转载 2019-09-27 13:45:56 · 257 阅读 · 0 评论