`
OracleX
  • 浏览: 125553 次
  • 性别: Icon_minigender_1
  • 来自: 地球
社区版块
存档分类
最新评论
文章列表
单例模式应用于一个类只有一个实例的情况,并且为其实例提供一个全局的访问点。 特点: 1.一个类只有一个实例 2.自己创建这个实例 3.整个系统只能用这个实例 应用场景 外部资源:每台计算机有若干个打印机,但只能有一个PrinterSpooler,以避免两个打印作业同时输出到打印机。 内部资源:大多数软件都有一个(或多个)属性文件存放系统配置,这样的系统应该有一个对象管理这些属性文件。 实现方式 1.饿汉式:单例实例在类装载时就构建,急切初始化。(预先加载法) /** * 饿汉式(推荐) * */ public class Singleton1 { p ...
基本的ThreadLocal使用 public class ThreadLocalTest { static ThreadLocal tl=new ThreadLocal(); public static void main(String[] args) { for(int i=0;i<2;i++){ new Thread(new Runnable(){ int data =new Random().nextInt(); public void run() { System.out.println(Thread.currentThre ...
在软件开发过程中,你经历的每件事情都会潜移默化地影响着你。随着时间的流逝,年纪的增长,对于程序开发技术(相同/或者相关能力)以及自身的理解也会不断沉淀,这些最终也会帮助你达成目标——成为一名优秀的程序员。这里谈到的经历不仅限于程序员生涯里的里程碑,比如换工作、成为领导/经理或者自己创业。你所经历的每一份工作、每个项目(不论大小)、与团队成员的每次交流、甚至你实现的每一个程序模块,都会让你变得比以前更优秀、更有活力、更有见地。   在日常的工作当中不放过任何一点可以学习的新知识,会让你成为更加出色的程序员。我说的是重要的经验——你不必去关心琐碎的事情(比如每一次敲击键盘是否完美),重要的是把握好 ...
程序员是一个比较特殊的群体,他们因为长期和电脑打交道所养成的性格和脾气也是比较相近的。当然,既然是人,当然是会有性格的,也是会有脾气的。下面,让我来看看10种能把程序惹毛了的事情。一方面我们可以看看程序员的共性,另一方面我们也可以看看程序员的缺点。无论怎么样,我都希望他们对你的日常工作都是一种帮助。   第十位 程序注释   程序注释本来是一些比较好的习惯,当程序员老手带新手的时候,总是会告诉新手,一定要写程序注释。于是,新手们当然会听从老手的吩咐。只不过,他们可能对程序注释有些误解,于是,我们经常在程序中看到一些如下的注释:   代码:   r = n/2; //r是n的一半 ...
1、猫在练习长跑,乌龟讽刺道:再练,也不能跑出个长跑冠军!猫答:我成不了豹子,却能做最棒的猫!是的,努力做好自己,做到最棒,就是成功!2、一万元以内的奢侈品,可以买,但不可以炫耀。3、别人可以拷贝我的模式 ...
子线程先循环10次,然后主线程循环100次,再子线程循环10次,主线程循环100次,就这样循环往复50次。 public class Communtion01 { public static void main(String args[]) { final Bussiness buss = new Bussiness(); new Thread(new Runnable() { public void run() { for (int j = 1; j <= 50; j++) { buss.sub(j); ...
第一个示例更多的是运用了内部类的特性: 内部类重要特点:可以访问外部的成员变量,所以内部类不能在静态方法中实例化。 因为静态方法运行时不需要创建实例对象,而内部类想要访问成员变量,意味着外部类肯定要创建实例对象,二者相互矛盾。 所以下面就会报错 public class Synchronized01 { public static void main(String args[]) { ) // final Outputer outputer=new Outputer(); //这样做就没有成员变量可以访问 // new Thread(new Runnable() ...

工作一年

 在T公司工作快一年了,刚进入公司就参与到项目的开发中,开发小组加上我一共5个人。公司下达的任务是在一个月的时间必须完成这个项目,接下来进行的就是很多软件公司常用方式:加班,没日没夜的加班。所以我刚进入公 ...
入门 public class Time01 { public static void main(String[] args) { // Timer timer01=new Timer(); // timer01.schedule(new TimerTask(){ // // @Override // public void run() { // // System.out.println("bombing"); // }}, 1000); new Timer().schedule(new TimerTask() { ...
1.进程与线程    每个进程都独享一块内存空间,一个应用程序可以同时启动多个进程。比如IE浏览器,打开一个Ie浏览器就相当于启动了一个进程。    线程指进程中的一个执行流程,一个进程可以包含多个线程。    每个进程都需要操作系统为其分配独立的内存空间,而同一个进程中的多个线程共享这块空间,即共享内存等资源。    每次调用java.exe的时候,操作系统都会启动一个Java虚拟机进程,当启动Java虚拟机进程时候,Java虚拟机都会创建一个主线程,该线程会从程序入口main方法开始执行。   Java虚拟机每启动一个线程,就给会给该线程分配一个线程方法栈,用来存放相关信息(比如局 ...
   文章出自:http://blog.sina.com.cn/s/blog_66c069db0100yevq.html    经常在一些技术论坛里看到,有人抱怨说做开发好多年了,技术没有多大长进,薪水也没有提升;   <wbr> 经常会碰到一些做技术外包的同学,说我天天coding,coding ...
 很长时间对join方法感到疑惑,不明白到底是谁要阻塞,谁要继续执行(线程这部分亟需加强)。今天和一网友交流后疑惑得到解决,在此表示感谢Stephen_Liu。  假如在main方法中有个线程A,执行了A.join(),那么线程A继续执行,而main线程这阻塞在A.join()处,直到线程A执行完毕并正常退出,此时main方法中的A.join()才返回,然后继续执行A.join()后面的代码。 public class ThreadJoin extends Thread { public static int n = 0; static synchronized void inc ...
    实现Serializable借口的对象可以被转换成一系列字节,并可以在以后使用时完全恢复原来的样子。这一过程也可以在网络中进行,这样就可以先在windows机器上创建一个对象,对其序列化,然后通过网络发送给Linux机器,就可以在Linux机器上准确无误地恢复成原来的样子。整个过程不必关心数据在不同机器上如何表示,也不必关心字节的顺序或其他细节。       序列化的思想就是“冻结”对象,操作对象(写到磁盘,通过网络传输等),然后“解冻”对象,重新获得可用的Java对象。功能的实现要靠ObjectInputStream/ObjectOutputStream类,完全保真原数据,并且开发愿 ...
Mysql: String Driver="com.mysql.jdbc.Driver"; //驱动程序 String URL="jdbc:mysql://localhost:3306/db_name"; //连接的URL,db_name为数据库名 String Username="username"; //用户名 String Password="password"; //密码 ...

JUint测试

    博客分类:
  • J2SE
ClassA.java public class ClassA implements Serializable { private static final long serialVersionUID = 6013572251564847381L; private String name = "My name is a"; private ClassB b = null; ClassA() { b = new ClassB(); } public String show() { System.out.println(& ...
Global site tag (gtag.js) - Google Analytics