![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
_沐风_
这个作者很懒,什么都没留下…
展开
-
用interrupt处理冻结的线程
class StopThread implements Runnable{ private boolean flag=true; //循环标记 @Override public synchronized void run() { while(flag){ try { wait(); } catch (Exception e) { flag=false;原创 2014-10-26 17:05:24 · 621 阅读 · 0 评论 -
利用等待唤醒机制实现线程间的通信
class Res{ private String name; private String sex; private boolean flag=false; public synchronized void setInfo(String name,String sex) { if(flag) try { this.wait(); } catch (Interrup原创 2014-10-25 20:56:42 · 376 阅读 · 0 评论 -
jvm常量池
在jvm规范中,每个类型都有自己的常量池。常量池是某类型所用常量的一个有序集合,包括直接常量(基本类型,String)和对其他类型、字段、方法的符号引用。之所以是符号引用而不是像c语言那样,编译时直接指定其他类型,是因为java是动态绑定的,只有在运行时根据某些规则才能确定具体依赖的类型实例,这正是java实现多态的基础。为了对常量池有更具体的认识,下面引用几个例子:1,常转载 2014-10-31 00:02:42 · 388 阅读 · 0 评论 -
线程通信举例——生产者、消费者
class Resource{private boolean flag=false;//Resource里是否有资源public int count=0; //生产的编号public synchronized void setInfo() {while(flag)try {this.wait();//Resource对象作为锁旗标,wait()方法释放所占资源,同时释放锁} catch (Inte原创 2014-10-26 08:38:26 · 375 阅读 · 0 评论 -
自己写个类实现对小数的四舍五入,保留相应的位数
虽然利用java.math.BigDecimal可以进行小数的四舍五入,但是不能保留相应的位数,如下: System.out.println( Float.parseFloat(new BigDecimal("12.2355").setScale(3, BigDecimal.ROUND_HALF_UP).toString())); System.out.println( Fl原创 2014-11-30 10:50:53 · 460 阅读 · 0 评论 -
在try/catch里return语句比finally语句先执行
在使用finally时想到一个问题,如果在try...catch语句中有return语句,思考它跟finally语句的执行顺序。撸码试试:package javaTest;public class ReturnTest { public static final int test2(){ try { int i = 1 / 0 ; } catch (Excepti原创 2015-11-26 23:22:33 · 418 阅读 · 0 评论 -
服务器端处理上传文件的示例
本文只是简单记录。服务器端代码(需要commons-fileupload的jar包):import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; impor原创 2015-12-14 23:41:14 · 488 阅读 · 0 评论