William的小星球 
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于
  •     

transient关键字

###作用:transient关键字可以让实现了Serializable接口的类中的属性不被序列化。就是哪个属性加了transient,他就不能被序列化。代码证明:bean: public class User implements Serializable{ private String name; private transient int age; public String getName() { return name; } public void setName(String tname) { name =
 2017-12-13   Java   

对象与垃圾回收

gc只负责回收堆内存中的对象,不会回收任何物力资源(如数据库连接,网络IO等)。 程序无法精确控制gc的运行,gc会在合适的时候进行。当对象永久失去引用后(=null),系统就会在合适的时候回收它所占的内存。 在gc回收任何对象之前,总会调用它的finalize方法,该方法可能使对象重新获得引用,导致gc取消回收。 ##对象在内存中的状态: 可达状态:对象被创建后,有一个以上的变量引用它,程序可通过引用变量来调用该对象的实例变量和方法。 可恢复状态:程序中某个对象不再有任何变量引用它,它进入可恢复状态,gc准备回收该对象所占的内存,在回收该对象之前,系统会调用所有可恢复状态对象的fina
 2017-12-12   JVM   

BroadcastReceiver

基础总结篇之五:BroadcastReceiver应用详解
 2017-12-11   Android   

java线程池总结

我学习线程池的第一篇讲的最好、最明白的文章:java&android线程池-Executor框架之ThreadPoolExcutor&ScheduledThreadPoolExecutor浅析(多线程编程之三) 另外一个是能快速帮你回忆的总结性文章,说的也不错:通俗易懂,各常用线程池执行的-流程图 ThreadPoolExecutor的构造方法的参数: public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize,
 2017-12-09   java并发   

线程的同步

这个博客讲的非常好java中同步(synchronized)详解
 2017-12-08   Java   

关于Handler,Looper,-Message,-MessageQueue的文章收藏

Hongyang:Android 异步消息处理机制 让你深入理解 Looper、Handler、Message三者关系 拭心:Android 进阶14:源码解读 Android 消息机制( Message MessageQueue Handler Looper)
 2017-12-08   Android   

Handler可能引起的内存泄漏

参考文章http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/1106/1922.html 在用handler的时候如果这么用就一定会发生内存泄漏: public class MainActivity extends AppCompatActivity { private Handler myHandler=new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg
 2017-12-04   Android   

静态变量何时被gc回收?

参考:http://blog.csdn.net/yogkin/article/details/53404855结论:只要静态变量没有被销毁也没有=null,其对象就一直被保持引用,也即引用计数不可能是0,不会被垃圾回收。 文中还有4个关于静态变量的点: 静态变量在类被加载的时候分配内存。类在什么时候被加载?当我们启动一个app的时候,系统会创建一个进程,此进程会加载一个Dalvik VM的实例,然后代码就运行在DVM之上,类的加载和卸载,垃圾回收等事情都由DVM负责。也就是说在进程启动的时候,类被加载,静态变量被分配内存。 静态变量在类被卸载的时候销毁。类在什么时候被卸载?在进程结束的
 2017-12-04   Android   

AIDL

参考hongyang的博客: Android aidl Binder框架浅析 #跨应用的进程间通信:首先要有两个应用:1、现在Android Studio里创建两个应用,两个module。2、一个应用做client,一个应用做server。3、实现client应用调用server应用中的服务。 开始动手:###创建一个server应用:Manifest文件: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.andr
 2017-12-03   Android   

对象序列化

1.Serializable接口2.Parcelable接口 ##Serializable接口java中的接口,使用简单,开销大(IO操作多),主要用于将对象序列化到存储设备中或者通过网络传输对象。标识接口,没有方法,直接实现这个接口就可以序列化用ObjectOutputStream和ObjectInputStream操作。 ##Parcelable接口主要要用于在内存中序列化,效率高,android平台专属,一般用于Intent中传递对象 public class Person implements Parcelable { private String name; pri
 2017-12-01   Android   
1…1718192021

搜索

Hexo Fluid