自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Handler机制详解

其实Looper负责的就是创建一个MessageQueue,然后进入一个无限循环体不断从该MessageQueue中读取消息,而消息的创建者就是一个或多个Handler 。1) Looper: 一个线程可以产生一个Looper对象,由它来管理此线程里的Message Queue2) Handler: 你可以构造Handler对象来与Looper沟通,以便push 新消息到 Me

2016-01-18 13:44:45 174

转载 Android高效加载大图、多图解决方案,有效避免程序OOM

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/9316683本篇文章主要内容来自于Android Doc,我翻译之后又做了些加工,英文好的朋友也可以直接去读原文。http://developer.android.com/training/displaying-bitmaps/index.html

2016-01-18 10:51:21 144

转载 Android Volley完全解析1

原文:点击打开链接1. Volley简介我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据。Android系统中主要提供了两种方式来进行HTTP通信,HttpURLConnection和HttpClient,几乎在任何项目的代码中我们都能看到这两个类的身影,使用率非常高。不过HttpURLConn

2016-01-16 17:16:31 213

原创 Activity的生命周期 和回调

最近在做一个小项目,其中用到了activity之间的跳转。从而就需要理解到Activity的生命周期,发现对这一块不是很熟,现在来梳理一遍。Activity就是布满整个窗口或者悬浮于其他窗口上的交互界面。在一个应用程序中通常由多个Activity构成,是4大组件之一。下面是Activity的经典图。1.启动Activity:系统会先调用onCreate方法,

2016-01-16 15:48:45 290

转载 java之 jvm

一、java虚拟机的生命周期:  Java虚拟机的生命周期 一个运行中的Java虚拟机有着一个清晰的任务:执行Java程序。程序开始执行时他才运行,程序结束时他就停止。你在同一台机器上运行三个程序,就会有三个运行中的Java虚拟机。 Java虚拟机总是开始于一个main()方法,这个方法必须是公有、返回void、直接受一个字符串数组。在程序执行时,你必须给Java虚拟机指明这个包换main

2016-01-11 16:04:41 170

java基础之hashmap 和hashtable的区别

HashMap底层是一个Entry数组,当发生hash冲突的时候,hashmap是采用链表的方式来解决的,在对应的数组位置存放链表的头结点。对链表而言,新加入的节点会从头结点加入。

2016-01-11 15:31:15 71

原创 java基础之IO流 字符转换流

IO流(读取转换流)读取转换流:InputStreamReader 字节流通向字符流的桥梁写入转换流:OutputStreamReader 字符流通向字节流的桥梁1public static void main(String...args)throws IOException{ BufferedReader bufr =new BufferedReader(new Inp

2016-01-11 11:14:07 190

原创 java基础IO流之字节流

字节流 :操作图片等数据用到字节流 字符流使用到的数组是char[] 字节流使用到的是Byte[] 字节流基类:InputStream OutputStream 1 字节读取流 拷贝图片public static void main(String []args){ InputStream is =null; OutputStream os =null; try

2016-01-11 10:45:57 181

原创 java基础 之io流字符流

1 IO流:  1  IO流用来处理设备之间的数据传输 2 Java对数据的操作是通过流的方式。Java用于操作流的对象都封装在IO包中。 3 流按操作数据分为两种:字节流与字符流。流按流向分为:输入流,输出流。字节流的抽象基类:Reader Writer 字符流的抽象基类: Inputstream  Outputstream  注意:由这四个类派生出来的子类名称都

2016-01-11 09:56:32 164

原创 java基础之 集合容器

集合和数组的区别:1存储元素问题:数组可以是基本类型,也可以是引用类型。集合只能是引用类型。(JDK1.5以后还可以存储基本数据类型,因为JDK1.5自动装箱拆箱)2长度问题:数组固定,集合可变。3是否同一类型:数组元素类型一致,集合元素类型可以不一致。为什么会出现这么多的容器呢?    因为每一个容器对数据的存储方式都有不同,这个存储方式称之为:数据结构。下面介绍具体的容

2016-01-09 16:59:21 223

原创 java基础 之 String类 StringBuffer StringBuilder

1String 类是一个特殊的类 一旦初始化就不可以改变,是一个特殊的对象。 String s1="abc";String s2=new String("abc"); 这两句话代表不同的含义 System.out.println(s1==s2) 返回值为false  ==比较的是 对应的首地址值 s1.equals(s2) 返回ture;比较内容 2字符串常见操

2016-01-09 16:05:54 226

原创 java基础a之多线程

1多线程:简单概念:Ctrl+Alt+Del(也就是在0数字旁边的.)看到进程了嘛!进程里面执行的程序里面就有很多的线程,当然你是看不到的懂吗?这都是编写代码的时候,程序员写的。当然你看过你打开软件的时候跳出了另外一个软件(也就是广告)吗?这就是又创建了一个进程,而这个进行里面有很多的线程,不是同时执行的哦,只是CPU在做着快速的切换。一个程序是一个进程,而一个进程里面可以有多个线程执

2016-01-08 21:48:12 179

原创 java三大特性之多态

多态:多态的概述:某一类事物的多种存在的多种形态。     1,多态的体现父类的引用指向了自己的子类对象。父类的引用也可以接收自己的子类对象。2,多态的前提必须是类与类之间有关系。要么继承,要么实现。通常还有一个前提:存在覆盖。3,多态的好处多态的出现大大的提高程序的扩展性。4,多态

2016-01-08 21:26:34 166

原创 java三大特性之 继承

1 继承:子类继承父类的特性,只支持单继承,只有一个父类。这样是避免多个父类时的冲突。子类继承了父类的特性,同时扩展功能。继承的出现:提高了代码的复用性,让类与类之间产生了关系。子类父类函数的特点:子类出现和父类一样的函数时,覆盖父类的函数。重写。父类独有的函数,子类没出现,子类同样保留了父类函数的功能继承的弊端:打破了封装性子类实例化过程:因为子类每一个构造函数内的第

2016-01-08 21:01:36 307

原创 java 构造函数 构造代码块 关键字

1 构造函数作用:1)初始化对象中的变量2)给对象中的private 类型的变量赋值。该对象建立的时候调用。2 构造代码块 {}     所用对象建立的时候调用,之所有对象的共性类容而且优先于构造函数执行和构造函数  this:关键字特点:  this代表其所在函数所属对象的引用。换言之:this代本类对象的引用。什么时候使用this关键字呢?

2016-01-08 17:42:43 330

原创 java 三大特性之封装

1 封装:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。封装好处:1.将变化隔离; 2.便于使用。 3.提高重用性。 4.提高安全性。 封装原则:将不需要对外提供的内容都隐藏起来。把属性都隐藏,提供公共方法对其访问。private:关键字A:用于修饰成员变量和成员方法。B:被修饰的内容在其他类中是不可以被访问的。 注意:私有仅

2016-01-08 17:33:02 232

原创 java的内存结构

1java内存区域的划分:寄存器 方法区 堆内存 栈内存 本地方法区 1)栈内存的特点:存储都是局部变量 (函数参数,函数内定义的变量,语句中定义的变量)变量一旦使用完(作用域结束),就会在栈内存中自动释放。2)堆内存特点:存储的是实体,对象 存储由new创建的对象和数组,由java虚拟机的垃圾回收装置管理。1.堆内存中的实体都有首内存地址值.

2016-01-08 17:04:58 324

原创 总结的比较重要的排序算法

对于每种排序算法,需要理解以下问题:1.算法思想是什么2.时间复杂度3.稳定性4.什么情况下适用?基于比较的排序,已证明,基于比较的排序算法时间复杂度不会低于O(nlgn)最好的情况能达到这个下限,包括:插入排序/希尔排序/选择排序/堆排序/冒泡排序/归并排序/快速排序不是基于比较的排序算法有望将时间复杂度降到O(nlgn)以下,适当的作为补偿,待排序的序列

2016-01-08 16:17:47 357

转载 各个算法

各种排序算法的分析及java实现  排序一直以来都是让我很头疼的事,以前上《数据结构》打酱油去了,整个学期下来才勉强能写出个冒泡排序。由于下半年要准备工作了,也知道排序算法的重要性(据说是面试必问的知识点),所以又花了点时间重新研究了一下。  排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为

2016-01-07 21:30:30 184

原创 java数据结构与算法 B树 B-树 B+树

1B树、B-树、B+树、B*树的概念参考点击打开链接1.1 B树:即二叉搜索树:       1.所有非叶子结点至多拥有两个儿子(Left和Right);       2.所有结点存储一个关键字;       3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树;       如: 如果B树的所有非叶子结点的左右子树的结

2016-01-07 19:42:26 721

原创 数据结构之AVL树 红黑树

红黑树BST的各种操作的时间复杂度是依赖于树的高度,通过使得BST成为红黑树,确保每次对BST进行插入和删除之后,树的高度上限依然是logn.红黑树,本质上来说就是一棵二叉查找树,而且是平衡的查找二叉树 -- 让BST效率更优定义红黑树中每个结点包含五个域:color,key,left,right 和p。通过对一条从根到叶子的路径上各个节点着色方式的限制,红黑树确保

2016-01-07 19:30:44 222

原创 树 - (二叉查找树,红黑树,B树)-二叉查找树 BST

二叉查找树 BST查找树是一种数据结构,支持动态集合操作。在二叉查找树上执行基本操作的时间与树的高度成正比。对已n个节点的完全二叉树,各种操作的最坏情况运行时间O(logn). 但是如果二叉查找树退化成含n个节点的线性链,各种操作的最坏情况运行时间O(n)。 一颗随机构造的二叉查找树的操作平均时间是O(logn).性质:对于任何节点x,其左子树的关键字最大不

2016-01-07 17:14:09 245

原创 树 - (二叉查找树,红黑树,B树)二叉树

1. 二叉树1.1 性质二叉树最重要的操作某过于遍历,namely 按照某一顺序访问树中的所有节点。通常有四种遍历方式:深度优先:- 前序遍历 (根-左-右)10,6,4,8,14,12,16用途:1 拷贝树。 2 计算前缀表达式- 中序遍历 (左-根-右)4,6,8,10,12,14,16用途:BST(二叉搜索树)的中序遍历以非降序方式输出节点。

2016-01-07 15:27:32 355

原创 java数据结构和算法 栈表队列2

1 链表(双向) 每个对象包括一个关键字域和两个指针域prev,next;链表是一种动态的数据结构,其操作需要通过指针进行。链表内存的分配不是在创建链表时一次性完成,而是每添加一个节点就分配一次内存。由于没有闲置内存。他的空间效率比数组更高。相对于数组,长度可变;插入删除更容易。(单向链表):从头插 从尾插 public class LinkList { No

2016-01-07 10:26:03 208

原创 java数据结构和算法2 表 栈和队列1

1栈(stack):又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。栈的实现public class stack { int

2016-01-06 14:05:06 417

原创 java数据结构与算法1

数据结构的特性最大子序列public class maxsubnum { /** * @param args最大子序列 */ public static void main(String[] args) { // TODO Auto-generated method stub int arr[]={-1,4,5,1,-3,2}; System.out.

2016-01-06 13:33:17 236

原创 自定义EditText形状 和自定义Checkbox

一 自定义EditText<EditText android:id="@+id/etSearch" android:layout_width="fill_parent" android:layout_height="wrap_content" android:

2016-01-06 13:01:48 267

原创 andriod学习之路5 popuwidow

popuwidow 本文通过一个弹出拍照和选择图片的popuwidow  来解释如何自定义popuwidow 首先我们需要了解一些参数的意义:    popupWindow.showAtLocation(mActivity.findViewById(R.id.pop_parent), Gravity.BOTTOM, 0, 0);在父组件的底部popupWindow显示提

2016-01-06 10:08:38 224

原创 android学习之路4 进度条

本文将从几个方面来讲解进度条的设置。1.条形进度条 :不同图片的方式来实现      第一步:在xml中<ProgressBar android:layout_width="fill_parent" android:layout_height="wrap_content" android:max="100" android:i

2016-01-06 09:15:50 314

原创 android学习之路3 dialog使用

首先我们来看最简单的dialog使用 使用系统默认的对话框AlertDialog.Builder ab = new AlertDialog.Builder(this); //ab.setTitle("警告"); ab.setMessage("是否真的退出?"); ab.setPositiveButton("退出", new DialogInterface.OnC

2016-01-05 19:35:59 255

原创 Android学习之路2 Activity 之布局

###view的布局1.RelativeLayout(相对布局)        android:layout_centerHorizontal    当前控件位于父控件的横向中间位置    android:layout_centerInParent    当前控件位于父控件的中央位置    android:layout_alignParentBottom    当前控件低端与父

2016-01-05 19:17:48 197

原创 android学习之路1

Android系统是建立在Linux系统之上的,该平台由 操作系统,中间件,用户界面和软件4层组成。1.应用#Android体系结构* 底层Linux操作系统* library c/c++的函数库* 应用程序框架层 java提供的函数库* 应用程序   一 应用程序层      该层提供一些核心应用程序包,例如电子邮件、短信、日历、地图、浏览器和联系人管理等。同时,开发者可

2016-01-05 18:43:24 246

View事件机制

View事件机制 的学习

2016-03-29

空空如也

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

TA关注的人

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