
Java
Java
victory08
程序员最重要的素质就是冷静,还有就是从千头万绪中理出头绪!
展开
-
JAVA中文字节编码确认
在使用java进行程序开发时,难免会遇到中文原创 2014-11-09 09:24:13 · 1336 阅读 · 0 评论 -
JavaMail发送邮件AuthenticationFailedException异常解决
在使用JavaMail发送邮件时遇到一个问题,同样是163的邮箱,一个邮箱地址在transport.connect的时候没问题,另外一个一直报javax.mail.AuthenticationFailedException异常,确定用户名和密码是正确的,尝试把javax.mail.jar的版本从1.4更新到最新的1.5.5还是没有解决,通过接口: Session session = Session.原创 2016-07-07 15:15:26 · 7027 阅读 · 0 评论 -
Java字符编码
1 英文字符编码在GBK,UTF-8中表现是一致的 2 中文字符GBK编码、UTF-8编码调用String.length()返回的长度是一致的,都是中文字符的个数,但getbyte()的结果不通,GBK每个中文字符占两个字节,UTF-8每个中文字符占三个字节原创 2016-04-05 15:47:30 · 376 阅读 · 0 评论 -
追踪函数调用栈
有时候发现一个接口被调用了多次,想反向查找接口在哪里被调用的,但如果代码不熟悉,很难确定是在哪里被调用的,这时可以使用打印调用栈的方法,在被调用接口中加上打印调用栈的信息,通过观察打印的调用栈信息来判断接口是在哪里被调用的,具体打印调用栈的方法如下:StackTraceElement[] stacks = new Throwable().getStackTrace(); for(in原创 2016-03-10 14:59:28 · 1388 阅读 · 0 评论 -
追踪函数调用栈
有时候发现一个接口被调用了多次,想反向查找原创 2014-10-31 10:49:35 · 754 阅读 · 0 评论 -
单例模式下的嵌套调用导致栈溢出
单例模式下的嵌套调用导致栈溢出package com.asyntask;import android.util.Log;public class Demo2 { public void print() { Demo1.getInstance().print(); Log.d("Demo2", "demo2"); }}package com.asyn原创 2015-12-01 16:56:31 · 1021 阅读 · 0 评论 -
Java intern
public class HelloString { public static void main(String[] args){ //JVM维持一个字符串常量池 String A = "abc"; String B = new String("abc"); //两种创建方式不一样,B是创建在堆上的 Syste原创 2015-11-25 09:29:36 · 360 阅读 · 0 评论 -
获取异常详细信息
public static String getExceptionAll(Exception ex) { StringBuilder builder = new StringBuilder(); StackTraceElement[] trace = ex.getStackTrace(); for (StackTraceElement s : trac原创 2015-11-17 10:52:34 · 764 阅读 · 0 评论 -
android中利用Java反射机制获取系统相机对象
if (Build.VERSION.SDK_INT > 10) { try { Class clsCamera = Camera.class; Method staticMethodOpen = clsCamera.getMethod("open",原创 2012-10-09 09:11:15 · 1312 阅读 · 0 评论 -
接口类中的成员变量默认为static final设计思路
接口类中声明的变量必须是static final的,从设计思想上来推测,接口是高度抽象的,接口的属性是类的属性,不能在对象中被修改,基于这两个特点所以接口中的变量被修饰为static和final,这两个关键字分别对应是类的属性并且是不可被具体对象修改的。原创 2015-08-16 19:44:57 · 856 阅读 · 0 评论 -
多线程访问HashMap容易犯的错误
多线程对HashMap的访问有一个容易犯的错误描述如下:HashMap做为一个成员变量通过接口被多个线程获取访问,在一个线程中更新修改,如果读线程和写线程访问的是同一个成员变量,而且线程间没有同步,就会导致数据异常甚至程序崩溃。即使通过线程同步保证对hashmap的读写是串行,也不是很好的方法,一是要使用全局的锁保证线程间的互斥,开销比较大,二是全局锁会造成读或写线程的阻塞等待,体验也不是很好。所以原创 2015-08-16 20:37:09 · 4696 阅读 · 1 评论 -
子类继承父类的变量和父类原有变量的关系
做项目的时候错认为在子类中修改从父类继续下来的变量值,会影响到其他继承该变量的子类,实际上不是的,每个继承了这个变量的子类,相当于拷贝了一份变量,对变量的修改影响也仅限于自身,不会影响到父类的变量值,更不会影响到其他子类对应的变量值。特意写的demo验证下://父类public abstract class AbstractParent { public int common = 1;原创 2015-08-13 23:20:03 · 12185 阅读 · 3 评论 -
java的wait和notify方法浅析
关于java的wait和notify方法首先总结一下几点: 1 wait和notify是Object类的基本方法,也就是说每个对象都有wait和notify方法,wait和notify方法主要用于线程间同步 2 wait和notify方法必需在同步代码块内调用,否则会抛异常,假如有synchronize(b){},那么b.wait或b.notify必须在大括号内调用,也就是说只有确保已经获取一个原创 2015-08-26 23:35:37 · 598 阅读 · 0 评论 -
HashMap排序
import java.util.ArrayList;import java.util.Collections;import java.util.HashMap;import java.util.Iterator;import java.util.List;public class Demo { public static void main(String[] args) { HashMap ma原创 2014-12-23 10:57:46 · 632 阅读 · 0 评论 -
Java正则表达式使用
String source = "己不破券二比并亡 丑不冠带主不还乡"; String regex = "[>]([\u4e00-\u9fa5]+)"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(source); while(matcher.find()){ Syst原创 2014-11-16 22:24:38 · 439 阅读 · 0 评论 -
面向对象OCP原则
开-闭原则:一个软件实体应该对扩展开放,对修改关闭。满足开闭原则的模块符合下面两个标准:对扩展开放 ------- 模块的行为可以被扩展从而满足新的需求。对修改关闭 ------- 不允许修改模块的源代码。(或者尽量使修改最小化)这两个标准看似相互矛盾的,那么我们怎么实现他们呢?怎样实现开闭原则?抽象多态继承接口为什么要遵循开放关转载 2014-11-27 15:18:48 · 626 阅读 · 0 评论 -
Java写CSV文件
FileOutputStream out = null; OutputStreamWriter osw = null; BufferedWriter bw = null; try { String testFile = "c:/Users/yanvictory/test.csv"; File file = new File(testFile);原创 2014-11-16 22:11:42 · 568 阅读 · 0 评论 -
英文日期格式转换
今天在写代码的时候,遇到一个原创 2014-10-26 23:25:10 · 18378 阅读 · 0 评论 -
反射调用对象的自定义接口
public interface MyInteface { public void func1(); public void func2();}import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;public class Reflect { public M原创 2016-08-22 23:05:23 · 1261 阅读 · 0 评论