`
chriszeng87
  • 浏览: 745500 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表

java的反射机制

    博客分类:
  • Java
  使用反射不同于常规的Java编程,其中它与 元数据--描述其它数据的数据协作。Java语言反射接入的特殊类型的原数据是JVM中类和对象的描述。反射使您能够运行时接入广泛的类信息。它甚至使您能够读写字段,调用运行时选择的类的方法。 反射是一种强大的工具。它使您能够创建灵活的代码,这些代码可以在运行时装配,无需在组件之间进行源代表链接。但反射的某些方面存在一些疑问。在本文中,我将深入讨论为什么您可能 不希望在程序中使用反射,以及您应该这样做的理由。在了解了权衡性分析之后,您可以自行决定是否利大于弊。 使用反射的启点总是 java.lang.Class 实例。如果您希望与预先定义的类协作,那 ...

Java的scanf

    博客分类:
  • Java
   读入: 用Scanner类定义对象进行控制台读入,Scanner类在java.util.*包中 Scanner cin=new Scanner(System.in);// 读入 while(cin.hasNext())   //等同于!=EOF {    int n;    BigInteger m;    n=cin.nextInt(); //读入一个int;    m=cin.BigInteger();//读入一个BigInteger;
Hashtable是Dictionary的子类,HashMap是Map接口的一个实现类HashTable的应用非常广泛,HashMap是新框架中用来代替HashTable的类,也就是说建议使用HashMap,不要使用HashTable。可能你觉得HashTable很好用,为什么不用呢?这里简单分析他们的区别。1.HashTable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。 2.HashTable不允许null值(key和value都不可以),HashMap允许null值(key和value都可以)。Ha ...
在JDK1.2以前的版本中,当一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及状态,程序才能使用它。这 就像在日常生活中,从商店购买了某样物品后,如果有用,就一直保留它,否则就把它扔到垃圾箱,由清洁工人收走。一般说来,如果物品已经被扔到垃圾箱,想再 把它捡回来使用就不可能了。  但有时候情况并不这么简单,你可能会遇到类似鸡肋一样的物品,食之无味,弃之可惜。这种物品现在已经无用了,保留它会占空间,但是立刻扔掉它也不划算,因 为也许将来还会派用场。对于这样的可有可无的物品,一种折衷的处理办法是:如果家里空间足够,就先把它保留在家里,如果家里空间不够,即使把家里所有 ...

Java的序列化

    博客分类:
  • Java
    序列化是把一个对象的状态写入一个字节流的过程,它执行RMI,RMI允许一台机器上的JAVA对象调用不同机器上的JAVA对象方法,对象可以作为参数提供给那个远程方法,发送机序列化该对象并传送它,接收机执行反序列化。     序列化和反序列化的关系图表可形成包含循环引用的顺序图表。这是整个序列化的总体思想。 而Serializable接口属于支持序列化的一个接口,只有一个实现它的对象可以被序列化工具存储和回复,Serializable接口没有定义任何成员,只用来表示一个累可以被序列化,若该类可以序列化,那么它的所有子类都可以。 下面是关于序列化的一个实例: 程序名称:Serializatio ...
这个例子有点局限,消费者每次只能等生产者生产了n个Q后消费完这n个。     package com.test; class Q { int n; boolean valueSet = false; //Q的value是不是已经设置过了 synchronized int get() { if(!valueSet) try { wait(); //wait until Producer produce a product and notify ,释放锁 } catch(InterruptedException e) { ...
       这里要说的是工厂方法模式。 1. 工厂方法模式的定义:工厂方法模式定义了创建对象的接口,但让子类来决定实例化哪个product类,推迟类的实例化到子类。   2. 工厂方法负责对象的创建,实际的对象创建在子类中进行。这使得父类的client code(调用工厂方法的代码)与子类的创建代码解藕。抽象方法在Creator的父类中定义,一般定义如下:                   abstract Product factoryMethod(String type)   Creator子类必须实现工厂方法。实现了对interface编程而不是instance编程。 ...
转自:http://blog.csdn.net/zyxnetxz/article/details/4681942   一、什么是Java虚拟机     当你谈到Java虚拟机时,你可能是指:     1、抽象的Java虚拟机规范     2、一个具体的Java虚拟机实现     3、一个运行的Java虚拟机实例二、Java虚拟机的生命周期     一个运行中的Java虚拟机有着一个清晰的任务:执行Java程序。程序开始执行时他才运行,程序结束时他就停止。你在同一台机器上运行三个程序,就会有三个运行中的Java虚拟机。     Java虚拟机总是开始于一个main()方法,这个方法必须是公 ...
Java提供了两类主要的异常:runtime exception和checked exception。checked 异常也就是我们经常遇到的IO 异常,以及SQL异常都是这种异常。对于这种异常,JAVA编译器强制要求我们必需对出现的这些异常进行catch。所以, 面对这种异常不管我们是否愿意,只能自己去写一大堆catch块去处理可能的异常。 但是另外一种异常:runtime exception,也称运行时异常,我们可以不处理。当出现这样的异常时,总是由虚拟 机接管。比如:我们从来没有人去处理过NullPointerException异常,它就是运行时异常,并且这种 ...
转自  http://blog.sina.com.cn/s/blog_4d979c250100s0u0.html   View重绘和内存泄露的好像是面试经常问的问题1. View的刷新:在需要刷新的地方,使用handle.sendmessage发送信息,然后在handle的getmessage里面执行invaliate或者postinvaliate.2. GC内存泄露出现情况:1.数据库的cursor没有关闭2.构造adapter时,没有使用缓存contentview 
安装指定apk public void setupAPK(String apkname){ String fileName = Environment.getExternalStorageDirectory() + "/" + apkname; Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive"); m ...
px (pixels)像素dip (device independent pixels)设备独立像素sp (scaled pixels — best for text size)放大像素--对文本大小最好pt (points)点in (inches)英寸mm (millimeters)毫米     dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了 支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。     HVGA 320x480 WVGA  480x800 FWVG ...
 近期很多公司招聘Android程序员,就一些常见的Android面试基础题做下总结,看看你能做出多少道?   1. Intent的几种有关Activity启动的方式有哪些,你了解每个含义吗?     这里Android123提示大家,Intent的一些标记有FLAG_ACTIVITY_BROUGH ...
     进程、线程的概念实在太重要,在每个编程语言里都有相应的实现机制,面试的时候也经常被问到,今天稍微梳理以下,说的不好请投隐藏帖。    1.进程         《APUE》上的解释:程序是存放在磁盘上,处于某个目 ...
转自: http://www.cnblogs.com/luxiaofeng54/archive/2011/02/12/1952391.html 一:什么是NDK? NDK 提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so 和 java 应用一起打包成apk。这些工具对开发者的帮助是巨大的。 NDK 集成了交叉编译器,并提供了相应的mk 文件隔离CPU、平台、ABI 等差异,开发人员只需要简单修改mk 文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so。NDK 可以自动地将so 和Java 应用一起打包,极大地减轻了开发人员的打包工作。 ...
Global site tag (gtag.js) - Google Analytics