JVM 与类加载 Java 语言中,类型的加载、连接和初始化都是在运行期进行的。这样会导致一些性能的开销,但同时使得 Java 成为了一种可以动态扩展的语言。比如编写一个面向接口的程序,可以到运行时再对其具体的实现类进行指定。Android...
JVM 与 Class 提到 Class 文件我们先来讨论一下 Java 的跨平台性。Java 是一种『一次编写,到处运行』的语言,也就是说它具有跨平台性。这与 C/C++ 『一次编写,处处编译』的跨平台性不同,Java 的跨平台性是依赖于 Java 虚拟机(以下...
Binder 是 Android 系统进程间进行跨进程通信的主要方式。我们都知道 Android 系统是基于 Linux 的,那么 Linux 已经提供了如管道(Pipe)、信号(Signal)、套接字(Socket)、报文队列(Message)、共享内存(Share Memory)、信号...
我的个人博客:blog.n0texpecterr0r.cn Github:https://github.com/N0tExpectErr0r 首先在这里提前祝看到这篇文章的各位元旦快乐! 2019马上到来,虽然文笔烂但还是要在这里稍微啰嗦一下自己的2018。 记得去年的这个时候还在游戏部...
由于自己之前常用到的很多开源框架比如GreenDao、EventBus、ButterKnife、ARouter等都用到了自定义的注解,感觉自己应该花时间去学一下怎么在自己写的库中用到注解了,因此写下了这样一篇文章。 什么是注解 首先,要明白什么是注解。 ...
Java中的ClassLoader 任何的Java程序都是由若干的.class文件组成的完整Java程序。程序运行时需要将.class文件加载到JVM中使用。而负责加载.class文件的就是ClassLoader机制。 ClassLoader的作用简单来说就是加载.class文件,提供给程...
目前很多网站都开始不再使用HTTP协议,而是使用HTTPS协议,原因是因为它相比HTTP协议更加安全。那么,它究竟安全在哪里呢? HTTP协议为何不安全 在说明为何HTTPS是一个安全的协议之前,我们先来讨论HTTP协议为什么是不安全的。 问题一...