- 博客(42)
- 资源 (5)
- 收藏
- 关注
原创 Java注解(annotation)概述
Annotations, a form of metadata, provide data about a program that is not part of the program itself. Annotations have no direct effect on the operation of the code they annotate。一般来说Annotation有如下三种使用情
2017-12-27 09:30:16
279
原创 Android中的消息队列和线程队列机制
ndroid通过Looper、Handler来实现消息循环机制。Android的消息循环是针对线程的,每个线程都可以有自己的消息队列和消息循环。Android系统中的Looper负责管理线程的消息队列和消息循环。通过Looper.myLooper()得到当前线程的Looper对象,通过Looper.getMainLooper()得到当前进程的主线程的Looper对象。
2017-06-13 10:02:04
10623
原创 android动画基础知识最全总结
动画设计几个原则:1、动画一定要有用 不要为了动画而动画2、动画是为了让用户体验更平滑3、动画是为了让用户使用的时候更自然自然的动画指的是动画要尽量与人在现实生活中的感知一致,越一致,人的思维开销就越小,也就越舒服4、某些精心设计的动画还能表达一些含义,有效降低用户的学习和使用软件的成本不要为了动画而动画,使用动画是为了与人现实生活中的认知相
2017-01-20 14:48:32
1325
原创 设计模式系列-----------单例模式
单例模式:确保一个类只有一个实例,并提供一个全局访问点。一些类提供公共功能供别人调用,本身不会处理业务逻辑,类会被许多类和线程调用。
2016-04-11 11:35:01
355
转载 AndroidStudio系列------------配置技巧
内置终端直接替代cmd命令行,一个IDE全部搞定。完善的插件系统,如Git、Markdown、Gradle等,直接搜索下载。版本控制系统,安装的时候就自带GitHub, Git, SVN等流行的版本控制系统,可以直接check out你的项目,边写代码边右键可以直接具备BCompare功能与其他版本进行对比修改。1、断点调试上图为debug 视图,1指向的是现在调试程序停留的代码行
2015-06-26 11:41:25
583
原创 UML类图几种关系的总结
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)。
2015-06-25 14:29:17
460
转载 Android基础系列-----------GUI系统之WindowManagerService
在Android系统中,对系统中的所有窗口进行管理是窗口管理服务WindowManagerService的职责。
2015-06-11 11:35:54
632
转载 Android基础系列-----------GUI系统之Android的UI显示概述
Android设备的显示屏被抽象为一个帧缓冲区(Frame Buffer),而Android系统中的SurfaceFlinger服务就是通过向这个帧缓冲区写入内容来绘制应用程序的用户界面的。Android系统在硬件抽象层中提供了一个Gralloc模块,封装了对帧缓冲区的所有访问操作。
2015-06-11 11:35:29
2139
原创 Android基础系列-----------OpenGL ES(一)
Android apk 里面的画图分为2D和3D两种:2D是由Skia 来实现的,Skia 也会调用部分opengl 的内容来实现简单的3D效果;3D部分是由OpenGL|ES实现的,OpenGL|ES是OpenGL的嵌入式版本。
2015-06-09 21:40:41
897
原创 Android基础系列-----------Intent简析
在Android系统设计中,Intent可以被应用于除ContentProvider外的其他三种组件。
2015-06-05 18:06:29
555
原创 Android基础系列-----------Android系统启动过程简析
Android设备的启动必须经历3个阶段。即BootLoader,Linux Kernel和Android系统服务。严格来说,Android系统实际上是运行于Linux内核之上的一系列“服务进程”,这些进程是维持设备正常工作的关键,而它们的“老祖宗”就是init。作为android系统第一个被启动的进程,init的PID值为0。它通过解析init.rc脚本来构建出系统的初始运行形态。
2015-06-03 21:29:39
1461
转载 设计模式系列-----------装饰器模式(Decorator)
转自:装饰器模式(Decorator)1、认识装饰器模式 装饰模式能够实现动态的为对象添加功能,是从一个对象外部来给对象添加功能。通常给对象添加功能,要么直接修改对象添加相应的功能,要么派生对应的子类来扩展,抑或是使用对象组合的方式。显然,直接修改对应的类这种方式并不可取。在面向对象的设计中,而我们也应该尽量使用对象组合,而不是对象继承来扩展和复用功能。装饰器模式就是基于对象
2015-06-03 10:04:05
427
原创 Android进程间通信系列-----------进程间的数据传递载体Parcel
Parcel是一种数据的载体,用于承载希望通过IBinder发送的相关信息(包括数据和对象引用)。也就是说Parcel是一个容器,它主要用于存储序列化数据,然后可以通过Binder在进程间传递这些数据。
2015-06-02 08:57:13
2108
原创 Java I/O系统----------- 标准I/O
程序的所有输入都可以来自于标准输入,它的所有输出都可以发送到标准输出,以及所有的错误信息都可以发送到标准错误。标准I/O的意义在于:可以很容易的把程序串联起来,一个程序的标准输出可以成为另一个程序的标准输入。
2015-06-01 16:14:00
517
原创 Java I/O系统----------- 类图框架
Java类库中的I/O类分成输入和输出两部分,通过继承,任何自InputStream或Reader派生而来的类都含有名为read()的基本方法,用于读取单个字节或者字节数组。同样,任何自OutputStream或Writer派生而来的类都含有名为write()的基本方法,用于写单个字节或者字节数组。但是,通常不会用到这些方法,它们之所以存在是因为别的类可以使用它们,以便提供更有用的接口。因此,很少使用单一的类来创建流对象,而是通过叠合多个对象来提供所期望的功能(这就是装饰器设计模式)。实际上,Java中“流
2015-06-01 16:08:53
4064
原创 Android基础系列-----------Android进程/线程管理应用示例(Android中的消息队列和线程队列机制)
Android通过Looper、Handler来实现消息循环机制。Android的消息循环是针对线程的,每个线程都可以有自己的消息队列和消息循环。Android系统中的Looper负责管理线程的消息队列和消息循环。通过Looper.myLooper()得到当前线程的Looper对象,通过Looper.getMainLooper()得到当前进程的主线程的Looper对象。
2015-05-28 17:30:23
1329
原创 java多线程系列----------- 共享受限资源(二)
有时,只是希望防止多个线程同时访问方法内部的部分代码而不是防止访问整个方法。通过这种方式分离出来的代码段被称为临界区(critical section),它也使用synchronized关键字建立。这里,synchronized被用来指定某个对象。此对象的锁被用来对花括号内的代码进行同步控制:
2015-05-26 09:42:49
472
原创 java多线程系列----------- 共享受限资源(一)
可以把单线程程序当作在问题求解域求解的单一实体,每次只能做一件事。因为只有一个实体,所以永远不用担心诸如“两个实体试图同时使用一个资源”这样的问题——比如,两个人在同一个地方停车,两个人同时走过一扇门。
2015-05-25 08:48:09
1160
原创 Android基础系列-----------Android进程/线程管理
1、四大组件并不是程序(进程)的全部,而只是它的“零件”。2、应用程序启动后,将创建ActivityThread主线程。3、同一个包中的组件将运行在相同的进程空间中。4、不同包中的组件可以通过一定的方式运行在相同的进程空间中。5、一个Activity应用启动后至少会有3个线程,既一个主线程和两个Binder线程。
2015-05-21 13:58:06
903
原创 Android基础系列-----------Android系统框架
Android系统是有众多的子项目组成的。从编程语言角度来看,这些项目主要是使用Java和C/C++来实现的;从整体系统框架而言,分成内核层、硬件抽象层、系统运行库层、应用程序框架层以及应用程序层。
2015-05-21 10:08:05
1162
转载 Android基础系列----------- Application的作用
What is ApplicationApplication和Actovotu,Service一样是android框架的一个系统组件,当android程序启动时系统会创建一个 application对象,用来存储系统的一些信息。通常我们是不需要指定一个Application的,这时系统会自动帮我们创建,如果需要创建自己 的Application,也很简单创建一个类继承 Applicatio
2015-05-04 08:53:39
303
转载 AndroidStudio系列------------Gradle
什么是Gradle?Gradle是一种依赖管理工具,基于Groovy语言,面向Java应用为主,它抛弃了基于XML的各种繁琐配置,取而代之的是一种基于Groovy的内部领域特定(DSL)语言。安装Gradle在Android Studio系列教程一–下载与安装中新建项目成功后会下载Gradle,貌似这个过程不翻墙也是可以下载,但是访问特别慢,建议翻墙下载。那么下载的Grad
2015-03-31 14:27:21
344
转载 Android事件处理机制系列-----------Touch事件处理机制
原文地址点击打开链接android中的事件类型分为按键事件和屏幕触摸事件,Touch事件是屏幕触摸事件的基础事件。 一个最简单的屏幕触摸动作触发了一系列Touch事件:ACTION_DOWN->ACTION_MOVE->ACTION_MOVE->ACTION_MOVE...->ACTION_MOVE->ACTION_UP当屏幕中包含一个ViewGroup,而这个ViewGroup又包含
2015-02-25 15:24:02
408
原创 Android基础系列----------- 资源适配
本篇文章全面而深入的讲解了Android屏幕适配的原因、重要概念、解决方案及最佳实践,我相信如果你能认真的学习本文,对于Android的屏幕适配,你将有所收获!
2015-01-24 18:26:15
577
转载 写代码如坐禅:你是哪一类程序员
当编译占用你时间时你会怎么做。不只是编译,即使是在等待任何短暂的计算机操作结束,这段时间你会干些什么?和你的工作日休息比起来这点时间是微不足道的,但是总的来说它还是能对你的生产率和幸福感感带来巨大帮助的。顺便说一下,这篇文章内容不是只针对开发者和程序员。它对任何使用电脑的聪明人都有效。后面还会附上图片。现在让我们开始吧!为什么要写这篇文章我最近开始在我的工作习惯里使
2015-01-06 11:56:07
592
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人