摘要:Apache组织开发了一套用于操作JavaBean的API,这套API考虑到了很多实际开发中的应用场景,因此在实际开发中很多程序员使用这套API操作JavaBean,以简化程序代码的编写。BeanUtils的作用:1)支持String到8种基本数据类型的转换;2)其他引用数据类型都需要注册转换器:C...
阅读全文
随笔分类 - javase
摘要:访问JavaBean属性的两种方式1)直接调用bean的setXXX或getXXX方法;2)通过内省技术访问(java.beans包提供了内省的API),内省技术访问也提供了两种方式: a)通过PropertyDescriptor类操作Bean的属性; b)通过Introspector类获得Be...
阅读全文
摘要:反射的作用1)在运行时判断任意一个对象所属的类;2)在运行时构造任意一个类的对象;3)在运行时判断任意一个类所具有的成员变量和方法;4)在运行时调用任意一个对象的方法。5)反射API可以获取程序在运行时刻的内部结构。6)使用反射的一个最大的弊端是性能比较差。相同的操作,用反射API所需的时间大概比直...
阅读全文
摘要:同步代码块实现生产者消费者模式class Person { private String name; private String sex; private Boolean isEmpty = Boolean.TRUE; // 表示存储区域是否为空 //生产 publi...
阅读全文
摘要:请编写一个多线程程序,实现两个线程,其中一个线程完成对某个对象int成员变量的增加操作,即每次加1,另一个线程完成对该对象成员变量的减操作,即每次减1,同时要保证该变量的值不会小于0,不会大于1,该变量的初始值为0。class Sample { private int number; p...
阅读全文
摘要:两个线程相互等着对方释放同步监听器;等着要对方的结果后才能继续执行就会发生死锁。男对女说:你先嫁给我,我再给你买房子;女对男说:你先给我买房子,我再嫁给你。多个线程同时锁住同一个监听对象。在开发中要避免死锁。死锁的例子:public class DeadLock { public static...
阅读全文
摘要:一、线程的实现方式方式一:继承Thread类一个类只要继承了Thread类,并重写run()方法,则就可以实现多线程的操作。public class ThreadDemo01 { public static void main(String[] args) { Thread1 t...
阅读全文
摘要:一、银行取款引出的问题模拟银行取钱的例子:public class ThreadDemo06 { public static void main(String[] args) { Bank bank = new Bank(); Runnable runnable =...
阅读全文
摘要:HashSet常用方法介绍public boolean add(E e)public boolean isEmpty()void clear()public Iterator iterator()int size()详细方法详见JDK帮助文档Object的equals方法和hashCode方法1、 ...
阅读全文
摘要:集合使用注意事项:1、集合当中只能放置对象的引用,无法放置原生数据类型,我们需要使用原生数据类型的包装类才能加入到集合当中去(JDK5之后会进行自动的装箱和拆箱操作,表面上看集合中是可以直接放置原生数据类型进去,但实质上是进过自动装箱成对象操作的);2、集合当中放置的都是Object类型,因此取出来...
阅读全文
摘要:public class StringDemo01 { public static void main(String[] args) { String s1 = new String("abc"); // a String s2 = "abc"; // b ...
阅读全文