自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (1)
  • 收藏
  • 关注

原创 [Java并发编程实战] 对象的共享

可见性 加锁的含义不仅仅局限于互斥行为,还包括内存可见性。

2017-05-18 13:54:48 447

原创 [Java并发编程实战] 基础知识

什么是线程安全性? 定义线程安全性:当多个线程访问某个类时,这个类始终都能表现正确的行为,那么就称这个类是线程安全的。 单线程:所见及所知(we know it when we see it)

2017-05-14 10:51:32 458

原创 Bitmap的高效加载和 Cache

Bitmap的高效加载和 CacheBitmap 的高效加载如何加载一个图片呢?BitmapFactory 类提供了四类方法:decodeFile 文件decodeResource 资源decodeStream 输入流decodeByteArray 字节数组可以采用 BitmapFactory.Options 来加载所需尺寸的图片

2016-07-01 23:17:12 934

原创 Android 的线程(AsyncTask、HandlerThread、IntentService详解)和线程池

Android 的线程和线程池在操作系统中,线程是操作系统调度的最小单元,同时线程又是一种受限的系统资源,即线程不可能无限制的产生,并且线程的创建和销毁都有一定的开销。

2016-07-01 20:20:40 6247

原创 Android的消息机制Handler详解

Android的消息机制详解Android的消息机制主要指 Handler 的运行机制

2016-06-30 22:18:27 3375

原创 ViewGroup 的事件分发机制

ViewGroup 的事件分发机制

2016-06-28 11:04:09 418

原创 View 的事件分发机制

View 的事件分发机制点击事件的分发过程由三个重要的方法来完成:dispatchTouchEvent、onInterceptTouchEvent和onTouchEvent。

2016-06-27 23:36:22 380

原创 Binder连接池

Binder连接池

2016-06-09 13:07:12 569

原创 Android中的IPC方式(二)—— AIDL

AIDL 来实现跨进程调用服务端的方法

2016-06-08 23:38:45 479

转载 设计模式—观察者模式(Observer)

转载自java_my_life-《JAVA与模式》之观察者模式:观察者模式(Observer)观察者模式是对象的行为模式,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。

2016-05-14 11:26:14 524

原创 Android中的IPC方式(一)—— Bundle、文件共享、Messenger

Bundle 文件共享 Messenger

2016-05-09 22:52:47 1333

原创 Binder 简介

Binder是Android的一个类,它实现了IBinder接口。从IPC角度来说,Binder是Android中一种跨进程通信方式,还可以理解为是一种物理设备,它的设备驱动是 /dev/binder ;从Android Framework角度来说,Binder是ServiceManager连接各种Manager(ActivityManager、WindowManager,等等)和相应Manager

2016-05-08 15:45:51 1946

转载 1.构建脚本基础

project 和 tasksGradle里的任何东西都是基于这两个概念

2016-05-04 22:34:26 463

原创 IPC基础

IPC的一些基础概念

2016-05-02 18:52:32 369

原创 Android中的多进程模式

开启多进程模式

2016-05-02 15:39:06 4294

原创 Android IPC 简介

IPC 是 Inter-Process Communication的缩写,意为进程间通信或者跨进程通信,指两个进程之间进行数据交换的过程。

2016-05-02 10:40:59 374

原创 IntentFilter的匹配规则

启动Activity分为两种,显示调用和隐式调用

2016-05-01 23:44:17 930

原创 Activity的Flags

Activity的FLAGS

2016-04-27 22:59:13 385

原创 Activity的启动模式

Acitivity的四种启动模式:standard、singleTop、singleTask和singleInstance

2016-04-26 22:54:28 319

原创 第十三条:使类和成员的可访问性最小化

设计良好的模块会隐藏所有色实现细节

2016-04-26 16:42:41 616

原创 第十二条:考虑实现Comparable接口

compareTo方法

2016-04-26 14:26:20 613

原创 Activity异常情况下的生命周期

Activity异常情况下的生命周期

2016-04-25 23:02:34 3430 2

原创 Activity典型情况下的生命周期分析

Activity典型情况下的生命周期分析

2016-04-24 23:21:15 715

原创 第九条:覆盖equals时总要覆盖hashCode

覆盖hashCode方法

2016-04-23 19:33:44 591

原创 第六条:消除过期的对象引用

这段程序有一个“内存泄漏”问题,如果一个栈先是增长,然后再收缩,那么,从栈中弹出来的对象不会被当做垃圾回收,即使使用栈的程序不再引用这些对象,它们也不会被回收。这是因为,栈内部维护这对这些对象的过期使用(obsolete reference),过期引用指永远也不会被解除的引用。修复的方法很简单:一旦对象引用已经过期,只需要清空这些引用即可。对于上述例子中的Stack类而言,只要一个单元弹出栈,

2016-04-22 09:12:29 916

原创 第八条:覆盖equals时请遵守通用约定

覆盖equals方法

2016-04-21 11:05:01 631

原创 第五条:避免创建不必要的对象

一般来说,尽可能的重用对象,如果对象是不可变的(immutable),它就始终可以被重用。String s = new String("stringette"); //DON'T DO THIS!该语句每次执行都会创建一个新的String实例,而这都是不必要的。String s = "stringtte";这样就只用了一个String实例。对于同时提供了静态工厂方法和构

2016-04-18 11:25:54 414

原创 第四条:通过私有构造器强化不可实例化的能力

有些时候我们需要编写只包含静态方法和静态域的类,如工具类,我们不希望被实例化,只要让这个类包含私有构造器,它就不能被实例化了//Noninstantiable utility classpublic class UtilityClass{ //Suppress defalut constructor for noninstantiability private Utili

2016-04-14 10:45:29 424

原创 第三条:用私有构造器或者枚举类型强化Singleton属性

Singleton(单例)指仅仅被实例化一次的类,常被用来代表那些本质上唯一的系统组件。

2016-04-13 23:17:46 412

原创 第二条:遇到多个构造器参数时要考虑用构建器

静态工厂和构造器有个共同的局限性:它们都不能很好地扩展到大量的可选参数。对于这种情况,习惯采用重叠构造器(telescoping constructor)模式。重叠构造器模式缺点就是当参数很多时代码会很难编写,不易阅读。还可以使用JavaBeans模式代替,调用一个无参构造器来创建对象,然后调用setter方法来设置每个必要的参数。JavaBeans的缺点就是构造过程被分到

2016-04-13 22:57:41 512

原创 第一条:考虑用静态工厂方法代替构造器

获取类的实例,类可以提供一个公有的构造器,还可以提供一个公有的静态工厂方法(static factory method),它只是一个返回类的实例的静态方法。例如:public static Boolean valueOf(boolean b){ return b ? Boolean.TRUE : Boolean.FALSE;}注意,这里的静态工厂方法与设计模式中工厂方法模

2016-04-13 13:45:04 699

原创 设计模式—单例模式

单例模式:应用场合:一个类在内存中只存在一个对象,保证整个应用程序中某个实例有且只有一个。类型:饿汉模式,懒汉模式饿汉模式/** * 饿汉模式 * */public class SingleMode { // 1.将构造函数私有化 private SingleMode() { } // 2.创建唯一实例,并初始化 private static SingleMo

2016-02-13 22:04:31 348

原创 android数据存储

在Android中一共提供4种数据存储方式,但是由于存储这些数据都是其应用程序私有的,所以如果需要在其他应用程序中使用这些数据,就要使用Android提供的Content Provider(数据共享)。Android中4种数据存储方式如下:Shared Preferences:用来存储"key-value paires"格式数据,它是一个轻量级的键值存储机制,只可以存储基本数据类型。(主要

2015-03-25 18:09:44 545

原创 Android动画详解

Android平台提供了两类动画,一类是Tween动画,即对通过对场景里的对象不断进行图像变换(平移、缩放、旋转);第二类动画是Frame动画,即顺序播放实现做好的图像,和播放电影类似。1.Tween动画Tween动画通过对VIew的内容完成一系列的图像变换(包括平移、缩放、旋转、改变透明度)来实现动画效果,主要有四种动画效果:(1)Alpha:渐变透明度动画效果。(2)Scale

2015-03-22 09:41:28 1039

原创 Graphics类

1.Paint和Color类  会绘图,首先得调整画笔,待画笔调整好之后,再将图像绘制到画布上,这样才可以显示在手机屏幕上。Android中的画笔是Paint类,Paint中包含了很多方法对其属性进行设置,主要方法:setAntiAlias:设置画笔的锯齿效果。setColor:设置画笔的颜色。setARGB:设置画笔的a,r,g,b值。setAlpha:设置Alpha值。

2015-03-21 10:43:06 864

原创 笔记:异常、日志、断言和调试

1.处理异常1.1异常分类  在Java程序设计语言中,异常对象都是派生于Throwable类的一个实例,所有的异常都是由Throwable继承而来,下一层立即分解为两个分支:Error和Exception。  Error类层次结构描述了Java运行时系统的内部错误和资源耗尽错误。  Exception类层次结构又分为两个分支:一个分支派生于RuntimeException;另一个

2015-03-19 16:16:06 703

原创 笔记:Java 接口与内部类

1.接口  在Java程序设计中,接口(interface)不是类,而是对类的一组需求描述,这些类要遵从接口描述的统一格式进行定义。  接口中的所有方法自动地属于public,在接口中申明方法时,不必提供关键字public。  接口中绝不能含有实例域,也不能在接口中实现方法。提供实例域和方法的任务应该由实现接口的那个类来完成。  为了让类实现一个接口,通常需要两个步骤:(1)将

2015-03-18 17:57:02 518

原创 笔记:Java 对象与类

面向对象程序设计如何创建标准Java类库中的类对象如何编写自己的类1.面向对象程序设计概述1.1 类    类(class)是构造对象的模板或蓝图。由类构造(construst)对象的过程称为创建类的实例(instance)。    封装(encapsulation)是与对象有关的一个重要概念。对象中的数据称为实例域(instance fields),操纵数据的工程

2015-03-11 14:55:00 493

MarqueeView

自定义TextView实现跑马灯效果

2016-05-21

空空如也

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

TA关注的人

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