
Java
文章平均质量分 55
guangwen_lv
这个作者很懒,什么都没留下…
展开
-
Java反射应用
JAVA 反射机制的简单应用 开发的时候有时候会碰到这样的情况,我们在写程序的时候并不知道需要调用某个对象的哪个方法,只有程序运行后,我们才能够知道。或许我们需要根据客户端传过来的某个String 参数的值来判断我们应该执行哪个方法。在这种情况下JAVA 的反射执行就可以帮上忙了。下面是我做的一个简单的测试代码,提供给大家做个参考。import java.lang.reflect.In转载 2014-09-05 13:27:16 · 343 阅读 · 0 评论 -
java抽象类总结
抽象类可以没有抽象方法;没有抽象方法还要声明为abstract class,是想让其他类去继承该基类,而不是直接实例化它。原创 2015-04-23 15:24:49 · 348 阅读 · 0 评论 -
Java实现同步与互斥
synchronized----实现互斥wait,notify-----实现同步原创 2014-09-15 16:01:52 · 866 阅读 · 0 评论 -
大端、小端、网络字节序
一、大端、小端"大端"和"小端"表示多字节值的哪一端存储在该值的起始地址处;小端存储在起始地址处,即是小端字节序;大端存储在起始地址处,即是大端字节序;或者说:1.小端法(Little-Endian)就是低位字节排放在内存的低地址端(即该值的起始地址),高位字节排放在内存的高地址端;2.大端法(Big-Endian)就是高位字节排放在内存的低地址端(即该值的起始地址),低位字节排放转载 2014-09-12 16:01:08 · 553 阅读 · 0 评论 -
Java多线程wait与synchronized方法
两种wait()方法 第一种需要一个以毫秒计的时间作参数,它的意思和sleep()一样,都是:“暂停一段时间”区别在于:1.wait()会释放对象的锁,也就是说在线程wait()期间,别的线程可以调用它的synchronized方法。 线程sleep()的时候,不会释放对象的锁。当对wait中的线程调用interrupt时,会先重新获取对象的锁,再抛出Interr转载 2014-08-28 15:30:12 · 2421 阅读 · 0 评论 -
java面试题及答案
JAVA相关基础知识1、面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的转载 2014-09-07 10:09:44 · 604 阅读 · 0 评论 -
一个简单的线程池实现
import java.util.List;import java.util.Vector;public class ThreadPool { private static ThreadPool instance_ = null; //定义优先级别常数,空闲的线程按照优先级不同分别存放在三个vector中 public static final int转载 2014-09-09 16:41:24 · 405 阅读 · 0 评论 -
如何终止java线程
终止线程的两种种方法 有三种方法可以使终止线程。 1. 使用退出标志,使线程正常退出,也就是当run方法完成后线程终止。 2. 使用stop方法强行终止线程(这个方法不推荐使用,因为stop和suspend、resume一样,也可能发生不可预料的结果)。 3. 使用interrupt方法中断线程。 1. 使用退出标志终止线程转载 2014-09-09 16:35:42 · 388 阅读 · 0 评论 -
Java 集合类
一、关系图继承关系图二、几个比较重要的接口和类简介1、List(有序、索引、可重复) List里存放的对象是有序的,同时也是可以重复的,List关注的是索引,拥有一系列和索引相关的方法。 ArrayList(数组、快速访问) ArrayList可以理解成一个可增长的数组,因此可以通过索引快速访问。转载 2014-09-09 14:52:18 · 433 阅读 · 0 评论 -
Java 线程池学习--创建Java线程池
在使用线程池之前,必须知道如何去创建一个线程池,在Java5中,需要了解的是java.util.concurrent.Executors类的API,这个类提供大量创建连接池的静态方法,是必须掌握的。 一、固定大小的线程池 import java.util.concurrent.Executors; import java.util.concurrent.Exec转载 2014-09-09 15:33:27 · 430 阅读 · 0 评论 -
Java线程池使用说明
一简介线程的使用在java中占有极其重要的地位,在jdk1.4极其之前的jdk版本中,关于线程池的使用是极其简陋的。在jdk1.5之后这一情况有了很大的改观。Jdk1.5之后加入了java.util.concurrent包,这个包中主要介绍java中线程以及线程池的使用。为我们在开发中处理线程的问题提供了非常大的帮助。二:线程池线程池的作用:线程池作用就是限制系统中执行线程的数量。转载 2014-09-09 15:40:40 · 342 阅读 · 0 评论 -
Java 线程池学习--线程池ThreadPoolExecutor使用简介
一、简介 线程池类为 java.util.concurrent.ThreadPoolExecutor,常用构造方法为: ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue workQueue, RejectedEx转载 2014-09-09 15:35:36 · 471 阅读 · 0 评论 -
Java 线程池学习-简介
Java里面线程池的顶级接口是Executor,但是严格意义上讲Executor并不是一个线程池,而只是一个执行线程的工具。真正的线程池接口是ExecutorService。下面这张图完整描述了线程池的类体系结构。 标记一下比较重要的类:ExecutorService:真正的线程池接口。ScheduledExecutorService转载 2014-09-09 15:28:23 · 370 阅读 · 0 评论 -
Java 线程池学习--线程池实例讲解
Java5增加了新的类库并发集java.util.concurrent,该类库为并发程序提供了丰富的API多线程编程在Java 5中更加容易,灵活。本文通过一个网络服务器模型,来实践Java5的多线程编程,该模型中使用了Java5中的线程池,阻塞队列,可重入锁等,还实践了Callable, Future等接口,并使用了Java 5的另外一个新特性泛型。 简介 本文将实现转载 2014-09-09 15:37:15 · 441 阅读 · 0 评论 -
两个对象值相同 (x.equals(y) == true) ,但可有不同的 hash code ,这句话对不对?
答:不对,有相同的 hash code这是java语言的定义:1) 对象相等则hashCode一定相等;2) hashCode相等对象未必相等1.如果是基本变量,没有hashcode和equals方法,基本变量的比较方式就只有==;2.如果是变量,由于在java中所有变量定义都是一个指向实际存储的一个句柄(你可以理解为c++中的指针),在这里==是比较句柄的地址(你可以理解为指针的存储地转载 2014-09-07 10:52:10 · 2802 阅读 · 1 评论 -
Java可变参数的使用
Java1.5增加了新特性:可变参数。适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。注意:可变参数必须位于最后一项。当可变参数个数多余一个时,必将有一个不是最后一项,所以只支持有一个可变参数。因为参数个数不定,所以当其后边还有相同类型参数时,java无法区分传入的参数属于前一个可变参数还是后边的参数,所以只能让可变参数位于最后一项package转载 2014-09-07 14:09:57 · 405 阅读 · 0 评论 -
回调的理解
软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。同步调用是一种阻塞式调用,调用方要等待对方执行完毕才返回,它是一种单向调用;回调是一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口;异步调用是一种类似消息或事件的机制,不过它的调用方向刚好相反,接口的服务在收到某种讯息或发生某种事件时,会主动通知客户方(即调用客户方的接口)。回调和异步原创 2015-04-23 15:55:18 · 504 阅读 · 0 评论