自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

转载 ReactNative init 失败(import type {CommandT} from './commands' , SyntaxError: Unexpected identifier)

C:\Users\Zeking\Desktop\Code\Code\node_modules\react-native\local-cli\cliEntry.js:30import type {CommandT} from './commands'; ^^^^SyntaxError: Unexpected identifier at new Script (vm.js:...

2018-07-06 09:35:15 3244 12

原创 Groovy12_Json、xml、swing与生成器

1. Json 生成器 : JsonBuilderimport groovy.json.JsonBuilderimport groovy.json.JsonOutputimport groovy.json.JsonSlurper""""""// json 生成器def builder = new JsonBuilder()builder.json{ first '..

2018-05-16 22:49:16 270

原创 Groovy11_编译时元编程

利用ASTTransformation 来实现1. ASTTransformation 介绍lsn11_0.groovyclass Content{ def a; def b(){ }}println()MyASTTansformation.groovyimport org.codehaus.groovy.ast.ASTNode...

2018-05-05 17:34:49 935

原创 Groovy10_元编程(方法合成与委托)

1. 创建动态类// 1. 创建一个动态类// 在运行的时候创建一个类(动态类)def expand = new Expando(name:'hello',fun1:{"fun1"})expand.height = 100expand.fun2 = { "fun2"}println expand.nameprintln expand.heightprintln e...

2018-04-24 22:24:48 261

原创 Groovy09_MOP与元编程(方法注入)

现在讲的都是运行时元编程,而编译时元编程 比如 ButterKnife 使用AOP,进行事件和View的寻找和绑定 运行时元编程,方法注入 3中方式category 分类注入 (和继承类似)meteclass (ExpandoMetaClass)使用mixin 混合(和category类似,创建一个类,混合进要使用的对象中去, 这样我们就能使用这个对象本身的这个类型,没有的方法)...

2018-04-24 00:05:52 669

原创 Groovy08_MOP与元编程(方法拦截) ```

// java当中我们可以使用反射在运行的时候查看类的结构方法成员属性,// 但是不能修改一个类的实现,不能动态的往类中去注入一个方法// 而Groovy利用MOP元编程,可以做到这些,可以基于应用当前的状态,// 动态的添加或者改变一些类的对象的方法和行为// 比如一个类的一个方法我们没有写实现,可以通过服务器下发,吧这个方法的实现替换掉或者把里面的成员属性替换掉// 由终端或者控制台...

2018-04-17 23:08:33 228

原创 Groovy07_Groovy动态语言

动态类型语言中的类型是在运行时判断的,方法以及其实参也是在运行时检查的。 在使用过程中不会执行类型检查,可以通过TypeChecked开启类型检查。 同时由于使用动态节点调用,损耗性能,可以使用CompileStatic开启静态编译。1. 和java的差异groovydef i = new File("")println i.getParent()javap...

2018-04-17 22:33:10 223

原创 Groovy06_Groovy方法扩展与脚本调用

1. Groovy方法扩展1. 用Socket 来引出今天的内容server.groovy//线程 流def server = new ServerSocket(9999)def isRunning = truedef sockets = []def close(socket) { if (null != socket) { if (!...

2018-04-17 22:16:55 1188

原创 Groovy05_Groovy方法调用与运算符重载

1. Groovy方法调用// groovy方法调用class Person{ def name def age def getName() { println 'getName' return name } void setName(name) { println 'setName' ...

2018-04-16 23:22:04 521

原创 Groovy04_闭包

1. 闭包的基本定义和调用ls4_0.groovy// 1. 闭包def closure = { println 'grovvy'}println closure.getClass() // class lsn4_0$_run_closure1// 2. 调用闭包closure.call() // grovvyclosure() ...

2018-04-16 22:46:53 125

原创 Groovy03_集合

lsn3_Groovy集合1. List快捷的创建方式:[] 通过下标获取元素 更精简迭代方式 each collect 更精简的加入条目 << 展开操作符 *. 常用扩展:any every// 1.list// Java 写法def lst = new ArrayList()def lst2 = []println...

2018-04-03 17:20:35 200

原创 Groovy02_字符串与循环

1. 字符串字符串 单引号与双引号的区别 (使用闭包时候惰性求值) 多行字符串 对字符串类型的一些扩展 (execute、find)class lsn_2_0 { static String test(){ // 这是java的写法 //return "111" // 但是在Groovy当中,无论是我们的函数还是我们...

2018-04-03 14:20:28 550

原创 Groovy01_介绍

1. 构建工具 Gradle管理项目的整个周期: 依赖,编译,测试,发布。构建文件 build.gradle 包含了构建所需要的配置、外部依赖以及以任务形式实现某个特殊目的的指令和它们的依赖关系构建引擎 相当于翻译构建文件 处理声明的依赖定义,从它预定义或者配置指定的仓库中去获取它们,并使它们对项目可用。 依赖管理 处理声明的依赖定义,从它预定义或者我们指定的仓库中去获取它...

2018-04-03 10:17:30 200

原创 C语言05 - 文件操作 、预处理命令

1. 文件操作文件分为两部分: 控制信息 和 内容信息 文本文件 和 图片 本质上都是 二进制文件,只是控制信息 不同而已 读文件的流程: 磁盘(得到二进制文件)》 文件缓冲区》应用程序内存空间在widows看到的各种各样的文件比如jpg,png,avi各种不同类型的文件只是在 从磁盘读到文件缓冲区的时候他会根据文件的控制信息进行相应的编解码C语言 二进制文件和文本文件读写的区别: 二

2017-11-19 23:59:42 314

原创 C语言04 - 结构体、结构体指针、tyepdef、union、enum

1. 结构体定义和初始化// : 一系列不同类型的数据的结合 // 数组存储的是一系列相同数据类型的集合// 结构体是存储一系列不同数据类型的集合struct Student // 这时候并没有分配内存,只是声明了一个结构体变量,这个变量的名字是Student{ char name[20]; int age; char gender[10]; int c

2017-11-15 00:09:48 540

原创 C语言03 - 函数指针、内存分配、字符串使用

1. 函数指针int plus(int a, int b){ return a + b;}// 函数名是一个函数的首地址,我已我们可以将函数赋值给对应类型的函数指针int minus(int a, int b){ return a - b;}int plus2(int *a, int *b){ return *a + *b;}int minus2(char *a, c

2017-11-10 00:12:53 686

原创 C语言02 - 指针运算、数组与指针、指针变量名、指针与函数参数、指针函数、函数指针、二级指针

1. 指针的定义,指针的运算 int main(){ int a = 10; int *p; p = &a; *p = *p + 10; printf("p : %d , a:%d\n", *p, a); int y = 1 + *p; printf("y : %d\n",y); *p += 1; printf("p :

2017-11-08 00:12:13 231

原创 C语言01 - 基本数据类型 、sacnf、数组、指针

1. Hello JNI#include "stdafx.h"#include <Windows.h>int main(){ printf("hello jni, zeking les01 \n"); system("pause"); }2. 基本数据类型// 1. 基础数据类型// int short long float double char bool// sho

2017-11-08 00:09:44 394

原创 WebView 踩坑记

1. 通过WebView调起继承微信支付的H5页面 // 微信H5 支付 官方测试地址 String url = "http://wxpay.wxutil.com/mch/pay/h5.v2.php"; Map<String, String> extraHeaders = new HashMap<String, String>(); extraHeaders.put("

2017-10-29 22:27:28 1090

原创 JNI 学习笔记(三)-- JNI访问数组、引用、异常处理、缓存策略

1. 访问数组1. 基本类型的数组package com.zeking.jni;public class JniTest03 { public native void getArray(int[] intArray); static{ System.loadLibrary("JniTest03"); } public static void main(Str

2017-10-09 22:40:58 411

原创 JNI 学习笔记(二)-- JNI访问Java中各方法

1. JNI 访问 java 中的 非静态方法package com.zeking.jni;import java.util.Random;public class JniTest02 { public native void accessMethod(); int getRandom(int max){ return new Random().nextInt(max)

2017-10-04 18:51:40 525

原创 JNI 学习笔记(一)-- JNI函数调用流程,JNI理解和基本数据类型

1.介绍 - JNI/NDK/静态库/动态库1.JNIjava native interface Java中定义的一种用于连接Java和C/C++接口的一种实现方式 使用环境: java api 不能满足我们程序的需要的时候。 算法计算,图像渲染 效率要求非常高, 当需要访问一些已有的本地库2.NDKNative Development Kit 工具的集合。帮助开放者快速开放C/C++

2017-10-02 23:10:02 570

原创 JNI源码分析 (并实现JNI动态注册)

CC 的 编译 和 链接编译器使用android studio 创建一个工程SystemloadLibrary 找到so库文件 分析SystemloadLibrary 加载so库文件 分析JNI 动态注册JNI源码分析 (JNI动态注册)1. C/C++ 的 编译 和 链接c/c++ ========= 二进制文件对于C/C++ 一般分为两个阶段 1. 编译xxx.c ——> wi

2017-09-26 01:02:40 1721 5

原创 Retrofit2 学习笔记(二)

一 如何发送一个纯文本作为请求体方法一使用 Scalars Converter方法二使用 ResponseBody 类二 失败重连一. 如何发送一个纯文本作为请求体方法一:使用 Scalars ConverterScalars Converter 可以用于序列化的 text/plain 请求compile 'com.squareup.retrofit2:converter-scalars:2

2016-07-28 18:10:57 1046

原创 Retrofit2 学习笔记(一)

一 Retrofit 2 简单使用的粗略介绍环境配置简单封装 ServiceGeneratorConverter怎么获取返回的Header和响应码Log Requests and Responses同步请求 和 异步请求Synchronous and Asynchronous RequestsCancel Requests二 Retrofit 2 注解详解作用于方法1添加请

2016-07-27 15:17:02 1361 1

原创 RxJava 学习笔记(九) --- Error Handling 错误处理操作

onErrorReturn 指示Observable在遇到错误时发射一个特定的数据onErrorResumeNext 指示Observable在遇到错误时发射一个数据序列onExceptionResumeNext 指示Observable遇到错误时继续发射数据retry 指示Observable遇到错误时重试retryWhen 指示Observable

2016-07-15 17:54:30 1850

原创 RxJava 学习笔记(八) --- Combining 结合操作

Filter 只发射通过了谓词测试的数据项OfType ofType是filter操作符的一个特殊形式它过滤一个Observable只返回指定类型的数据Take 只发射开始的N项数据TakeLast 只发射最后N个元素TakeLastBuffer 将最后的N项数据当做单个数据发射Skip 跳过开始的N项数据SkipLast 跳过后面

2016-07-14 14:47:03 2494

原创 RxJava 学习笔记(七) --- Filtering 过滤操作

Filter 只发射通过了谓词测试的数据项OfType ofType是filter操作符的一个特殊形式它过滤一个Observable只返回指定类型的数据Take 只发射开始的N项数据TakeLast 只发射最后N个元素TakeLastBuffer 将最后的N项数据当做单个数据发射Skip 跳过开始的N项数据SkipLast 跳过后面

2016-07-12 15:51:45 4105 3

原创 RxJava 学习笔记(六) --- Transforming 变换操作符

Map 对序列的每一项都应用一个函数来变换Observable发射的数据序列Cast 操作符将原始Observable发射的每一项数据都强制转换为一个指定的类型然后再发射数据它是map的一个特殊版本FlatMap 将Observable发射的数据集合变换为Observables集合然后将这些Observable发射的数据平坦化的放进一个单独的ObservableConc

2016-07-07 13:45:56 1001

原创 RxJava 学习笔记(五) --- Creating 创建操作符

Create 使用一个函数从头创建一个ObservableJust 将一个或多个对象转换成发射这个或这些对象的一个ObservableFrom 将一个Iterable 一个Future 或者一个数组转换成一个ObservableDefer 只有当订阅者订阅才创建Observable为每个订阅创建一个新的ObservableTimer 创建一个在给定的延

2016-07-05 16:11:15 8644 4

原创 RxJava 学习笔记(四)

线程控制Scheduler二1Scheduler的API二2Scheduler的原理二1 subscribeOn 这边是版本110的源码 这边是版本116的源码 建议看这个2 observeOn1.线程控制Scheduler(二)给 Android 开发者的 RxJava 详解1)Scheduler的API(二)前面讲到了,可以利用 subscribeOn()结合 observeOn()

2016-06-30 17:00:43 3492

原创 RxJava 学习笔记(三)

我只是搬运工,本来想自己写,但是理解和语言表达真心过不了关, 源码方面,我详细点介绍, 笔记么,好东西我就抄 给 Android 开发者的 RxJava 详解线程控制Scheduler1)Scheduler的API在不指定线程的情况下, RxJava 遵循的是线程不变的原则,即:在哪个线程调用 subscribe(),就在哪个线程生产事件;在哪个线程生产事件,就在哪个线程消费事件。如果需要切换线

2016-06-24 17:36:34 898

原创 如何使用MarkDown 使 代码块高亮

我使用的是Mou, 它本身是不支持 代码块高亮的 , CSDN 的在线编辑 的 代码块是支持高亮的,虽然不太好看使用Mou的时候在 文章开头加入<link rel="stylesheet" href="http://yandex.st/highlightjs/6.1/styles/vs.css"><script src="http://yandex.st/highlightjs/6.1/hig

2016-06-23 18:35:04 5195 1

原创 RxJava 学习笔记(二)

给 Android 开发者的 RxJava 详解这篇文章已经写的很详细了。但是毕竟是别人的东西 ,既然是学习笔记,我当然要写写自己的总结或者摘要,剔除那些不需要的话https://github.com/ReactiveX/RxJava https://github.com/ReactiveX/RxAndroid 本人感觉只要掌握了 map 和 flatmap 其实就已经可以算入门了一.RxJava的

2016-06-23 18:04:20 1275

原创 RxJava 学习笔记(一)

一:什么是RxJavaRx是响应式编程的意思,本质是观察者模式,是以观察者(Observer)和订阅者(Subscriber)为基础的一部响应方式。在Android编程时, 经常会使用后台线程, 那么就可以使用这种方式. 目前的异步编程方式都会导致一些问题, 如1. Asynctasks can easily lead to memory leaks. 2. CursorLoaders with

2016-06-23 11:20:14 1052 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除