《Android插件化开发指南》面世
本书在京东购买地址:https://item.jd.com/31178047689.html 本书Q群:389329264 (一)这是一本什么书 如果只把本书当作纯粹介绍Android插件化技术的书籍,那就大错特错了。 本书在研究Android插件化之余,还详细介绍了Android系统的底层知识,包括Binder和AIDL的原理、四大组件的原理、App的安装和启动流程、Context和ClassLoader的家族史。没有罗列大量的Android系统中的源码,而是以一张张UML图,把这些知识串起
django处理跨域
django处理Ajax跨域访问时使用javascript进行ajax访问的时候,出现如下错误 出错原因:javascript处于安全考虑,不允许跨域访问。下图是对跨域访问的解释: 概念: 这里说的js跨域是指通过js或python在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(Django)的数据。只要协议、域名、端口有任何一个不同,都被当作是不同的域。 跨域,简单来说就是 A 网站的 javascript 代码试图访问 B
linux下如何上传和下载文件
一. 安装工具包rz及sz lrzsz是一个unix通信套件提供的X,Y,和ZModem文件传输协议,可以用在windows与linux 系统之间的文件传输,体积小速度快 1 yum install -y lrzsz 二. 上传 输入命令行,会弹出对话框,选择你要上传的文件,选择打开就可以上传到linux主机,上传文件就在当面目录下 rz 可以通过ls来查看 三. 下载 在linux下输入如下命令 sz 文件名 在弹框中选择下载的本地路径,我是放在了桌面上,选择确定 1 sz 文件名 去桌面上
java装箱拆箱时都发生了什么?
一、装箱
我们先看装箱,有如下代码:
public class Box {
public void packing() {
Integer i = 1;
Float f = 2.0f;
Long L = 3L;
Boolean b = true;
Short s = 5;
Double ...
java源码阅读之java.util.Objects
之所以写这篇文章,是因为工作中接触到一个开源项目代码,而这个开源代码使用到了这个类。同时如果不是前面的包名java.util,都很容易看错成java超类java.lang.Object。
java.util.Objects是java1.7新增的一个类。下面这篇文章将基于1.7.0_80版本的类库源码展开。
一、类定义:
package java.util;
/**
* @since 1...
java TWR是怎么优雅我们的代码的?
我们在编写IO代码的时候,有的时候真的是对对java IO那种模板化的代码感到厌倦,而且写出来的代码,很臃肿丑陋。像下面这样的代码:
public void readFile(String filePath) {
FileInputStream fis = null;
InputStreamReader inReader = null;
B...
java枚举编译后是什么样子?
在java中,我们经常使用枚举来表示有限值的集合。
像下面的这个枚举类:
public enum Level {
HIGH,
MIDDLE,
LOW;
}
那么,枚举类编译之后,是个什么样子呢?
在JDK1.8.0_152环境下,我们使用javac编译这个枚举类,得到Level.class字节码文件。
利用javap我们反编译Level.class字节码文...
java源码阅读之java.lang.Enum
之所以要研究这个类,因为它是java中所有枚举的父类,本文基于JDK1.9.0的java源码进行展开。
一、类定义:
public abstract class Enum<E extends Enum<E>>
implements Comparable<E>, Serializable {
可以看到Enum是一个虚基类,并且实现了Comp...
Metircs源码阅读计划
今天在研究Kafka时,因为一个java.lang.NoDefClassFoundException的定位,让我发现了一个jar包,metrics-core的jar包。
这个jar包是干什么的呢?忍不住好奇的我,马上就打开浏览器开始查找资料。匆匆看了几眼网上的资料,我突然想想,为什么不自己看源码,从而直接看出这个jar包是干什么得呢?
说干就干,我在网上下载了metrics-core-2.2....
Metrics源码阅读(01)之HealthChecks
HealthChecks类,在com.yammer.metrics包下,这个包下面,有两个类,一个是HealthChecks,一个是Metrics。
HealthChecks从字面意义上来看,是健康检查,也就是体检。既然Metrics被Kafka应用,难道它是用来给Kafka做“体检”的?
带着问题,我们继续看,先看类定义:
一、类定义:
/**
* A manager class f...
Metrics源码阅读(02)之Metrics
Metrics类,看这个名字,就知道很重要了,都和项目名一致了,出身就高贵。当然得赶紧研究一下:
一、类定义:
/**
* A set of factory methods for creating centrally registered metric instances.
*/
public class Metrics {
普通的类定义,普通的class类。注意注释信息,一个Set...
C 语言实现程序计时笔记
有的时候写C代码,想知道代码的执行时间,不知道怎么做。心想要是java就好了,System.currentTimeMillis()或者System.nanoTime(),真的是很方便。经过查阅在C里可以这样做:
#include "stdio.h"
#include "time.h"
int main(int argc, char *argv[])
{
clock_t start, fin...
从java反编译学习字节码指令(一)
最近沉迷于java反编译,经常看到iconst_1指令,见得多了,也让我对它感到很好奇,它是不是就是固定代表int 1啊?
做个小测试,从11到0,看看它们分别对应字节码什么?
public class Bytecode {
public void ByteCode() {
int eleven = 11;
int ten = 10;
...
从链表的迭代遍历看java lambda表达式效率
随着JDK1.8的发布,lambda和函数式编程终于进入到java世界。在用了一段时间,甚至可以说是在硬往lambda和流API上靠。有一天,在跟着大牛学习java时,一句“lambda拖慢程序”突然让我意识到了什么,于是我做了个测试。现在,静下心来,回顾一下那个测试。
一个很简单的测试,就是一个List的遍历,我们看看这段代码:
import java.util.List;
import ...
从kafka源码阅读中看出了问题之除零不异常
最近在看kafka源码,
看到一个让我感到很陌生的地方,也引起了我深深地思考。
竟然还有可以除0合法的地方:
在org.apache.kafka.common.metrics.stats.Max类中,看到了构造函数:
public Max() {
super(Double.NEGATIVE_INFINITY);
}
我忍不住F3了一下Double.NEG...
从反编译的角度看abstract class与interface的区别
abstract class与interface傻傻分不清,今天我打算从反编译角度来看看二者的区别。
先写这么一个abstact class 一个空的虚基类。
public abstract class AbstractClass {}
再写这么一个interface 一个空的接口。
public interface Interface {}
在JDK1.8.0_151的环境下,...
从kafka源码阅读中看出了问题之abstract interface
今天在看到kafka的源码类org.apache.kafka.common.network.SslTransportLayer时,看到这个类引用了
javax.net.ssl.SSLSession这个类,点进去看了一下这个类,着实让我吃惊了一把。
public abstract interface javax.net.ssl.SSLSession
见惯了abstract class,还真没...
C语言实现两个数的交换
常常用C写排序算法时,经常写两个数的交换。想来,也把自己知到的这些方式记录一下:
(1)宏定义方法:
#define SWAP(a, b) {a = a + b; b = a - b; a = a - b;}
使用示例:
int a[2] = {5, 1};
SWAP(a[0], a[1]);
(2)指针:
void swap(int *x, int *y)
{
int ...
今日推荐
周排行