- 博客(20)
- 资源 (6)
- 收藏
- 关注

翻译 JNI - 概述
JNI 简介前言JNI 概述历史背景目标JNI 解决方案JNI 编程前言本文是Oracle官方JNI文档的翻译基础上加上部分个人理解,原文地址 Chapter 1:Introduction本文介绍JNI(Java Native Interface)。JNI是Native编程接口,它允许运行在JVM(Java Virtual Mechine)上的应用跟使用其他语言(比如C、C++等)实现的...
2019-03-23 18:05:16
346

原创 Android UsbAccessory中你需要小心的坑及解决方案
本文旨在解决Usb连接过程中的问题而不注重具体实现过程,如果有对Usb连接过程感兴趣的朋友可以查看Android官方文档目录目录现实背景存在问题问题原因解决方案小结现实背景 现在智能硬件发展迅速,各种运动相机、无人机不断发展,而其中大部分都通过Usb跟手机之间建立链路连接通信,所以怎么处理好Usb的连接问题就显得很重要。存在问题...
2018-02-13 15:06:59
7060
2
翻译 JNI - 设计概述
JNI - 设计概述前言JNI 接口函数及指针编译、加载、链接Native方法解析Native方法前言本文是Oracle官方JNI文档的翻译基础上加上部分个人理解,原文地址 Chapter 2:Design Overview本文介绍 JNI(Java Native Interface)的主要设计问题,这些问题很多跟Native方法相关,调用方法的介绍在JNI - 接口调用。JNI最大的...
2019-03-24 17:40:17
252
原创 设计模式之装饰器模式
前言 装饰器模式可以动态地给对象加上一些职责,比起继承更加的灵活(文章后面慢慢体会)。在装饰类中既可以调用待装饰的原有类的方法,还可以增加新的方法,以扩充原有类的功能。在学习具体概念之前,我们先看熟悉的内容 — — Java IO 中装饰器的使用。Java IO 装饰器模式使用例子: // 获取文件内容作为 InputStream InputStream inpu
2016-12-24 14:40:40
763
原创 Java注解(三) 自定义注解与提取注解
自定义注解跟提取注解自定义注解主要讲解如何自定义跟在自定义中应该注意的问题。提取注解主要讲的是如何通过反射机制结合AnnotatedElement获取注解相关的信息
2016-05-01 16:58:45
24936
6
原创 Java注解(二) 系统注解
上一篇博文讲了Java注解是什么、有什么作用。现在让我们来谈谈Java本身提供的一些注解,包括内置注解跟元注解(后面解释)。 内置注解 : @Deprecated、@Override、@SuppressWarnings 元注解:@Retention、@Target、@Inherited、@Documented
2016-04-30 15:04:01
7117
4
原创 Java注解(一) 基本概念
这篇文章会介绍注解的基本概念,会介绍注解是什么,注解有什么作用等。 下一篇文章会介绍Java中的系统注解的使用方法,然后会有一篇文章讲解如何提解注解中的值,最后会有一个简单的ORM实现原理介绍。也就是说
2016-04-28 15:11:37
1743
2
原创 Android键盘切换闪动原理及解决方案
Android键盘切换闪动原理及解决方案主要内容键盘切换闪动原理键盘切换闪动解决方案设置键盘softInputMode使用adjustPan,增加一个与键盘同高的支撑视图(不推荐)设置键盘softInputMode使用adjustResize,在onMeasure时处理键盘事件键盘切换闪动原理上图中有几个状态(这里键盘softInputMode为adjustResize,如果对键盘弹出方式还
2016-04-06 17:59:39
7233
1
原创 Android 四大组件详解(四) BroadcastReceiver
文章主要从下面几个方面介绍BroadcastReceiver:1. 注册BroadCastReceiver ( 动态注册(Java代码中配置)跟静态注册(AndroidManifest.xml中配置) )2. 自定义广播3. BroadCastReceiver应用-获取收到信息内容并显示( 注册系统广播 )4. Demo源码
2016-01-26 15:11:34
823
1
原创 Android 四大组件 (三) ContentProvider 使用简介
简单介绍ContentProvider跟ContentProvider的使用,对联系人的增删改查操作
2016-01-25 15:40:03
1610
原创 Android 四大组件详解(二) Service
一开始学Android的时候就开始听说Service的相关内容,但是真正接触到Service并且使用它是在几个月前的一次IM(即时通讯)的实现上,IM的实现是基于Mqtt协议的,所以有一个Service专门来负责IM相关的操作,有空也会简单介绍一下Mqtt相关的知识。 Service是后台的概念,但它是运行在主线程的,这点很重要,千万别跟Thread搞混,也就是说如果你在Service中执行...
2016-01-21 11:01:07
820
原创 Android 四大组件详解(一) Activity
Android开发的经验已经有两年多了,最近想总结一下自己学到的知识。首先想到的就是Android入门就会听到的四大组件(Activity, Service, Content Provider, BroadCast Receiver),接着后面还会介绍AS使用的相关经验,UI界面各个组件的使用详解等... ...大体的计划就是这样,下面就来介绍今天要介绍的Activity。 在Androi...
2016-01-20 16:20:23
1068
原创 设计模式之观察者模式
观察者模式很简单,比如报纸,用户订阅就会定时给用户送,这里报纸就是主题,用户就是观察者。 观察者模式有一个主题,可以多个观察者,用户可以选择注册成为该主题的观察者,观察者也可以选择取消观察该主题。主题有内容更新就会通知每一个观察者。 下面就由一个比较简单地例子来介绍一下观察者模式。 假如在动物的世界里也有报纸,报纸的名字叫做Subject,森林里有老鼠,鸭子,狗等生物,他们和谐地生活着....
2014-12-09 16:51:25
896
原创 设计模式之策略模式
设计模式的目的是为了增加代码的可重用性和提高软件的可维护性,软件开发中维护和更新的工作量比一开始的工作量大得多,所以说一个好的设计模式有时候是非常必要的,首先让我们来简单介绍设计模式中的策略模式。本系列中的模式来源于Head First设计模式一书中,加上自己学习过程中的心得体会。 策略就是用来解决问题的,对于一个问题不同个体会有不同表现,我们就可以采用策略模式。比如书中提到的鸭子的模型,鸭...
2014-12-08 19:28:52
728
原创 数据结构-排序
排序问题是数据结构中很重要的一个问题,比如在查找的时候,在一个已经排好序的集合中可以采用二分查找的方法达到高效的查找,而在无序的集合中是没有比较快速查找元素的方法的。这里我将介绍几种常用的基本排序(插入排序,冒泡排序,选择排序)和几种效率比较好的排序(快速排序,归并排序,希尔排序),排序算法被写成了一个静态方法,可以直接调用。下面看具体的排序算法。 在介绍排序算法之前,先简单介绍下交换函数,
2014-12-03 17:36:55
850
原创 数据结构-二叉查找树(BST)
二叉查找树是一种比较特殊的二叉树,表现为任意节点的值都比左孩子的值要大,而且小于等于右孩子的值,采用中序遍历BST(Binary Search Tree)就可以的到排序好的元素集合,而且插入删除的时间消耗也比较合理,但是有一个缺点就是内存开销有点大,下面简单介绍BST。下面就是两棵二叉查找树BST实现主要采用递归来实现,所以在学习实现的过程中也可以加深对递归的理解和掌握。具
2014-12-01 19:54:20
1019
原创 数据结构-最大值堆原理和实现
堆(Heap)是由完全二叉树实现的,具体关于完全二叉树的性质等,下面会简单介绍。堆分为最大值堆和最小值堆,最大值堆中所有元素都大于它的孩子的值,最小值堆中所有元素的值都小于它孩子的值。一:完全二叉树所谓完全二叉树最基本的还是一棵二叉树,即一个节点最多有两个子节点,最少有0个子节点(即是叶子节点),而二叉树里面又有一种比较特殊的二叉树叫做满二叉树。满二叉树的特点就是除了叶子节点之外,所有的节点都有两...
2014-11-30 16:12:53
2949
原创 数据结构-堆栈和队列
在数据结构中,有些简单的线性结构是非常常用的,比如说堆栈可以用于实现函数的调用,队列可以处理一些需要排队的问题,下面就简单介绍一下这两种数据结构。一:堆栈 堆栈是一种特殊的数据结构,特点是FILO(First In, Last Out),而且处理的元素也只可以在栈顶这一端。下面给出堆栈常用接口,例如进栈出栈,查看栈顶元素等。#ifndef STACK_H#define STACK_H#i...
2014-11-29 20:06:10
847
原创 基于数组和基于链表线性表C++实现
首先,简单介绍下什么是线性表。线性表中数据元素之间的关系是一对一的关系,即除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的。线性表的逻辑结构简单,便于实现和操作。因此,线性表这种数据结构在实际应用中是广泛采用的一种数据结构。 然后让我们来看看线性表的两种实现方式基于数组(Arraybase list)和基于链表(Linked list)。 一:基于数组的线性表实现 类List...
2014-11-29 09:53:06
1200
Android学习笔记
2016-01-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人