网站首页动画怎么做的,没有域名怎么搭建网站,大一网页设计作业成品,做静态网站工资多少类概述 定义一个包含任意类型的描述数据对象#xff0c;此对象可以发送给Handler。对象包含两个额外的int字段和一个额外的对象字段#xff0c;这样可以使得在很多情况下不用做分配工作。 尽管Message的构造器是公开的#xff0c;但是获取Message对象的最好方法是调用Messag…类概述 定义一个包含任意类型的描述数据对象此对象可以发送给Handler。对象包含两个额外的int字段和一个额外的对象字段这样可以使得在很多情况下不用做分配工作。 尽管Message的构造器是公开的但是获取Message对象的最好方法是调用Message.obtain()或者Handler.obtainMessage(), 这样是从一个可回收对象池中获取Message对象。 1、首先创建Handler对象 [java] view plaincopy private Handler mHandler new Handler() { public void handleMessage(android.os.Message msg) { switch (msg.what) { case 1: textShowTV.setText(展示中...); break; } }; }; 2、然后是消息处理 [java] view plaincopy //①使用new Message() // Message mess new Message(); //②使用Message.obtain() Message mess Message.obtain(); mess.what 1; //mHandler.obtainMessage(1)与上两行的代码一样可以参考源码查看 // Message mess mHandler.obtainMessage(1); mHandler.sendMessage(mess); 通过比较我们会发现这两种获取Message的实例的方法不一样于是我看了源码果然不一样进入obtain方法 图1进入Message方法 图2查看obtainMessage源码 图3 查看Message.obtain(this, what) 源码 图4 然后再次点击obtain() 方法代码又回归到了图1 总结 上面的图1中obtain方法的注释中说得很明白从整个Messge池中返回一个新的Message实例在许多情况下使用它因为它能避免分配新的对象如果是这样的话那么通过调用obtainMessage方法获取Message对象就能避免创建对象从而减少内存的开销了。