- 浏览: 229851 次
- 性别:
- 来自: 北京
最新评论
-
sfshine:
非常好非常好
Android 窗口管理 -
mthhk:
...
android3.0之Fragment(碎片)基础 -
FrankHB1989:
“C/C++标准不会保证这样的代码一定不会出错”的依据?你要说 ...
Duff's Device -
2006003845:
请问知道 刚体之间怎么不碰撞嘛 ?相互穿插
JBOX2D分析
文章列表
一、 在res/values 文件下定义一个attrs.xml 文件.代码如下: <?xml version="1.0" encoding="utf-8"?> <resources> <declare-styleable name="MyView"> <attr name="textColor" format="color" /> <attr name=&q ...
mode_shift=30
,mode_mask=-1073741824,
UNSPECIFIED=0,
EXACTLY=1073741824,
AT_MOST=-2147483648
import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
Fragment是Android honeycomb 3.0新增的概念,Fragment名为碎片不过却和Activity十分相似,下面Android123介绍下Android Fragment的作用和用法。Fragment用来描述一些行为或一部分用户界面在一个Activity中,你可以合并多个fragment在一个单独的activity中建立多个UI面板,同时重用fragment在多个activity中.你可以认为fragment作为一个activity中的一节模块 ,fragment有自己的生命周期,接收自己的输入事件,你可以添加或移除从运行中的activity.
一个fra ...
分析:JVM对于字符串常量的"+"号连接,将程序编译期,JVM就将常量字符串的"+"连接优化为连接后的值,拿"a" + 1来说,经编译器优化后在class中就已经是a1。在编译期其字符串常量的值就确定下来,故上面程序最终的结果都为true。
String a = "ab"; String bb = "b"; String b = "a" + bb; System.out.println((a == b)); //result = false
...
new指令格式:new indexbyte1,indexbyte2
new指令过程:
要执行new指令,Jvm通过计算(indextype1<<8)|indextype2生成一个指向常量池的无符号16位索引。然后JVM根据计算出的索引查找JVM常量池入口。该索引所指向的常量池入 ...
ldc指令格式:
ldc,index
ldc指令过程:要执行ldc指令,JVM首先查找index所指定的常量池入口,在index指向的JVM常量池入口,JVM将会查找 CONSTANT_Integer_info,CONSTANT_Float_info和CONSTANT_String_info入口。如果还没有这些入口,JVM会解析它们。而对于上面的hahaJVM会找到CONSTANT_String_info入口,同时,将把指向被拘留String对象(由解析该入口的进程产生)的引用压入操作数栈。
astore_1指令格式:
astore_1
astore_1指令 ...
19.3 指令invokespecial Invokespecial和invokeirtual的主要区别在于: invokespcial通常(只有一个例子) 根据引用的类型选择方法,而不是根据对象的类来选择,换句话说。它使用静态绑定而不是动态绑定。在下列使用invokespecial的三种情况中,动态绑定并不会产生所预期的效果。 19.3.1 指令invokespecial和<init>()方法 <init>() 方法(或者实例初始化方法)是编译器为构造方法和实例变量初始化方法放置代码的地方,类不会为源文件中的每个构造方法提供一个<init>()方法。如果没有 ...
本文介绍XMPP协议原理及相关信息。
XMPP协议简介
XMPP(Extensible Messageing and Presence Protocol:可扩展消息与存在协议)是目前主流的四种IM(IM:instant messaging,即时消息)协议之一,其他三种分别为:即时 ...
在Java中当我们要对数据进行更底层的操作时,通常是操作数据的字节(byte)形式,这时常常会用到ByteBuffer这样一个类。ByteBuffer提供了两种静态实例方式:
Java代码
public static ByteBuffer allocate
调用隐藏类的方法(转)
- 博客分类:
- Android
在上一篇中,我解释了为什么我们不通过反射就会很难使用internal和hidden API。这是因为android.jar中就没包含这些API,因此,没人能够在编译时引用这些类。
这篇文章将描述如何还原最初的android.jar。这将允许我们像使用公开的 ...
用过EditText的都知道,EditText有个特点,当在里面长按的时 候,会出现一个ContextMenu,提供了选择文字,复制,剪切等功能。有时候,我们会想,如果不出现这个ContextMenu,直接就在view 上选择文字,那多美好啊。相信很多人抱有这样的想法,很不幸,我也是。于是我就研究了一下EditText和TextView的代码,然后将这个问题解决 了。网上很多资料都说,要选择一段文字,只需要用Selection.getSelectionStart()和 Selection.getSelectionEnd()确定选择的文字的头和尾,然后加颜色就行。简直是胡扯啊,我敢说这样的代 ...
Serial收集器是单线程的垃圾收集器,单线程意味着它将暂停当前机器中的所有线程运行垃圾收集。对于不同的内存分代采用不同的垃圾回收算法。
ParNew收集器是Serial的多线程版本。
CMS:并发收集器(HotSpot)
并行:多条垃圾回收器并行工作
并发用户线程与垃圾回收线程同时执行
Parallel收集器是新生代收集器
Android 的源代码结构
- 博客分类:
- Android
Google提供的Android包含了原始Android的目标机代码,主机编译工具、仿真环境,代码包经过解压缩后,第一级别的目录和文件如下所示:.|-- Makefile(全局的Makefile)|-- bionic(Bionic含义为仿生,这里面是一些基础的库的源代码)|-- bootloader(引导加载器)|-- build (build目录中的内容不是目标所用的代码,而是编译和配置所需要的脚本和工具)|-- dalvik(JAVA虚拟机)|-- development (程序开发所需要的模板和工具)|-- external(目标机器使用的一些库)|-- frameworks(应用程序的框 ...