自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (5)
  • 收藏
  • 关注

原创 设计模式<面向对象的常用七大设计原则>

面向对象设计的目标之一在于支持可维护性复用,一方面需要实现设计方案或者源码的重用,另一方面要确保系统能够易于扩展和修改,具有较好的灵活性。 常用的设计原则有七个原则:1.单一职责原则(single responsibility principle,SPR) 一个类只负责一个功能领域中的相应职责。(或者可以定义为:就一个类而言,只有一个原因能够引起它变换)。单一职责原则是实现高内聚、低耦合的指导

2017-02-28 12:47:49 1150

原创 算法<改进的冒泡排序、直接插入排序、折半插入排序、希尔排序、快速排序、归并排序>

1.冒泡排序基本方法: 设待排序的序列中的元素个数为n,首先比较第N-2个元素和第N-1个元素,如果发生逆序则交换;然后对第N-3个元素和第N-2个元素做同样的处理;重复此过程直到处理完第0个元素和第一个元素。这样称为第一趟排序,第二趟排序从第N-2个元素和第N-3个元素开始做同样的操作,直到第零个元素和第一个元素。这样的排序需要N-1趟。 public static void bubb

2017-02-27 21:18:22 500

原创 Android<Fragment之间的通信以及Fragment和Activity的通信>

1.情景假设: 假设现在有一个需求,一个Activity中有FragmentLeft和FragmentRight的布局,在最下面有一个Textview的布局。 现在需要在FragmentLeft中的按钮被点击的时候,FragmentRight和Activity中的Textview做出响应,类似这种效果:2.解决办法:i.在FragmentLeft中定义一个接口: public interfa

2017-02-26 16:43:08 675

原创 Android<我所理解的Fragment>

1.Fragment(片段 )是什么Fragment 表示 Activity 中的行为或用户界面部分。可以将多个片段组合在一个 Activity 中来构建多窗格 UI,以及在多个 Activity 中重复使用某个片段。可以将片段视为 Activity 的模块化组成部分,它具有自己的生命周期,能接收自己的输入事件;可以在 Activity 运行时添加或移除片段(有点像您可以在不同 Activit

2017-02-24 17:05:48 474

原创 Android网络编程<我所理解的XML和JSON数据解析>

1.XML和JSON格式数据通常情况下,每一个需要访问网络的应用程序都会有一个自己的服务器,应用可以向服务器提交数据,也可以从服务器上获取数据。应用(客户端)和服务器之间 的数据传输常见格式有XML和JSON格式。 i.下面是XML格式的一个例子<apps><app> <id>1</id> <name>Google Maps</name> <version>1.0</ve

2017-02-24 11:38:07 2110

原创 Android<View的工作原理以及自定义View的方法>

来自《第一行代码》作者郭霖笔下,觉得写得很好遂分享给更多的人: Android LayoutInflater原理分析,带你一步步深入了解View(一) Android视图绘制流程完全解析,带你一步步深入了解View(二) Android视图状态及重绘流程分析,带你一步步深入了解View(三) Android自定义View的实现方法,带你一步步深入了解View(四)下面是一个自定义效果图:

2017-02-23 15:43:19 466

原创 Android<我所理解的Handler机制>

1.为什么需要Handler机制在我的<线程和进程在Android中的工作方式>中,明确地说明了应用启动时,系统会为应用创建一个名为“主线程”的执行线程。 此线程非常重要,因为它负责将事件分派给相应的用户界面小部件,其中包括绘图事件。 此外,它也是应用与 Android UI 工具包组件(来自 android.widget 和 android.view 软件包的组件)进行交互的线程。所以我们所有的涉

2017-02-23 11:24:01 3391 7

原创 Android<我所理解的Intent 和Intent-filter>

1.Intent Intent 是一个消息传递对象,可以使用它从其他应用组件请求操作。尽管 Intent 可以通过多种方式促进组件之间的通信,但其基本用例主要包括以下三个:启动 Activity: Activity 表示应用中的一个屏幕。通过将 Intent 传递给 startActivity(),可以启动新的 Activity 实例。Intent 描述了要启动的 Activity,并携带了

2017-02-22 19:28:14 689

原创 Android<我所理解的Activity>

1.什么是ActivityActivity 是一个应用组件,用户可与其提供的屏幕进行交互,以执行拨打电话、拍摄照片、发送电子邮件或查看地图等操作。 每个 Activity 都会获得一个用于绘制其用户界面的窗口。窗口通常会充满屏幕,但也可小于屏幕并浮动在其他窗口之上。一个应用通常由多个彼此松散联系的 Activity 组成。 一般会指定应用中的某个 Activity 为“主”Activity,即首次启

2017-02-22 13:20:11 500

原创 Android<我所理解的广播接收者>

1.广播Android应用可以发送或者接收来自系统或者其他应用的广播信息,这种模式神似设计模式中的观察者模式。Android系统广播消息: 当各种系统事件发生时,例如系统启动或者设备开始充电。应用程序还可以发送自定义广播,以通知其他应用。例如一些数据已经下载完毕。应用程序可以注册接收特定的广播。当发送广播时,系统自动将广播路由到已订阅接收该特定类型的广播的应用。2.接收广播应用程序可以通过以

2017-02-22 11:27:18 2196

原创 Android<我所理解的ContentProvider>

1.什么是ContentProvider内容提供程序管理对结构化数据集的访问。它们封装数据,并提供用于定义数据安全性的机制。 内容提供程序是连接一个进程中的数据与另一个进程中运行的代码的标准界面。如果想要访问内容提供程序中的数据,可以将应用的 Context 中的 ContentResolver 对象用作其他应用来与ContentProvider 通信。 ContentResolver 对象会与内容

2017-02-21 22:26:06 526 1

原创 Android<进程和线程在Android中的工作方式>

1.前言:当某个应用组件启动且该应用没有运行其他任何组件时,Android 系统会使用单个执行线程为应用启动新的 Linux 进程。默认情况下,同一应用的所有组件在相同的进程和线程(称为“主”线程)中运行。如果某个应用组件启动且该应用已存在进程(因为存在该应用的其他组件),则该组件会在此进程内启动并使用相同的执行线程。 但是可以安排应用中的其他组件在单独的进程中运行,并为任何进程创建额外的线程

2017-02-21 16:40:53 1140 2

原创 Android<我所理解的Service>

1.service是什么Service 是一个可以在后台执行长时间运行操作而不提供用户界面的应用组件。服务可由其他应用组件启动,而且即使用户切换到其他应用,服务仍将在后台继续运行。 此外,组件可以绑定到服务,以与之进行交互,甚至是执行进程间通信 (IPC)。 例如,服务可以处理网络事务、播放音乐,执行文件 I/O 或与内容提供程序交互,而所有这一切均可在后台进行。2.service的两种状态i.启动

2017-02-21 14:26:43 492

原创 Android<任务和返回栈>

应用通常包含多个 Activity。每个 Activity 均应围绕用户可以执行的特定操作设计,并且能够启动其他 Activity。 例如,电子邮件应用可能有一个 Activity 显示新邮件的列表。用户选择某邮件时,会打开一个新 Activity 以查看该邮件。一个 Activity 甚至可以启动设备上其他应用中存在的 Activity。例如,如果应用想要发送电子邮件,则可将 Intent 定义为

2017-02-20 19:39:37 474

原创 Android<五大布局>

1.布局的概念布局定义用户界面的视觉结构,如Activity或应用小部件的 UI。可以通过两种方式声明布局:i.在 XML 中声明 UI 元素。Android 提供了对应于 View 类及其子类的简明 XML 词汇,如用于小部件和布局的词汇; ii.运行时实例化布局元素。应用可以通过编程创建 View 对象和 ViewGroup 对象(并操纵其属性)。 Android 框架让你可以灵活地使用以下

2017-02-20 11:50:20 494

原创 一道Java面试题的思考

1.前几日同学发来了一道Java面试题,觉得挺有意思,于是决定写下个人的理解。题目是这样的: 需要在method方法被调用之后,仅打印出a=100,b=200 请写出method方法package jdk.lang;public class SystemIOE { public static void main(String[] args) { int a = 10;

2017-02-20 09:39:29 508

原创 数据结构(C++)<图的深度遍历和广度遍历>

1.图的遍历与树的遍历类似,对图的结构也可以进行遍历。图的遍历是指给定一个图G和其中任意一个顶点v0,,从v0出发,沿着图中各个边访问所有顶点,且每个顶点只访问一次。 需要借助一个数组visit[]记录顶点是否访问过。在开始遍历之前初始化数组中的每一个元素为FALSE,在遍历过程中一旦顶点i被访问就立即将visited[i]设置为TRUE。这样无论走到哪一个顶点,只要检查其对应的visited标志

2017-02-19 20:01:56 3196

原创 数据结构(C++)<图的邻接表表示>

1.邻接表图的邻接表存储方法跟树的孩子链表示法相类似,是一种顺序分配和链式分配相结合的存储结构。如这个表头结点所对应的顶点存在相邻顶点,则把相邻顶点依次存放于表头结点所指向的单向链表中。表结点(Nodetable)存放的是邻接顶点在数组中的索引。对于无向图来说,使用邻接表进行存储也会出现数据冗余,表头结点A所指链表中存在一个指向C的表结点的同时,表头结点C所指链表也会存在一个指向A的表结点。 邻接

2017-02-19 19:06:54 3085

原创 数据结构(C++)<图的邻接矩阵存储>

1.图的概念图是有顶点集合以及顶点的关系集合组成的一种数据结构。 a)完全图:由n个顶点组成的无向图,若有n*(n-1)/2条边,则称为无向图完全图。 在由n个顶点组成的有向图中,若有n*(n-1)条边,则称之为有向完全图。 b)权:在某些图中,边具有与之相关的数值,称为权重。权重可以表示从一个顶点到另一个顶点的距离、花费的代价等等。这种带权图也叫作网络。 c)度:与顶点v关联的边数称为度。

2017-02-18 23:07:55 1557

原创 数据结构(C++)<AVL树>

1.AVL树的概念AVL树又称高度平衡的二叉搜索树。 一棵AVL树或者是空树,或者是就要有一下性质的二叉搜索树:它的左子树和右子树都是AVL 树,且左子树和右子树的高度之差绝对值不超过1。如果一个结点的左子树和右子树的高度之差的绝对值超过1,则这棵树不是AVL树。2.平衡旋转如果一棵树原本是平衡的二叉搜索树,新插入一个新节点之后,造成了不平衡。此时必须调整树的结构使之平衡化。平衡化旋转分为单旋转(

2017-02-17 22:49:50 480

原创 数据结构(c++)<二叉搜索树>

1.概念二叉搜索树或者是一棵空树或者是一棵具有以下性质的树: a).每个节点都有一个作为搜索依据的关键码(key),所有节点的关键码互不相同。 b).左子树(如果存在)上所有的节点的关键码都小于根节点的关键码。 c).右子树(如果存在)上所有节点的关键码都大于根节点的关键码。 d).左子树和右子树都是一棵二叉搜索树 以下是二叉搜索树的例子: 从这些树中可以看出,任意节点的关键码都大于

2017-02-13 13:10:47 503

原创 数据结构(c++)最小堆模板类

1.数据结合如果有序,将为各种操作带来便利.从外表来看,优先级队列很像队列和栈,但是要构造高效率的优先级队列,需要比队列和栈考虑更多的因素。在优先级队列的各种实现中,堆是一最高效的一种数据结构。 最小堆:任意一节点的关键码都均 小于或者等于它的左右子女的关键码,位于堆顶(即完全二叉树的根节点的位置)的节点的关键码是整个集合中最小的,所以称为最小堆。最大堆与之相反。2.将一个堆调整为最小堆

2017-02-12 16:11:01 2605

原创 数据结构(C++)最小优先权队列实现<模板类>

1.优先级队列: 每一次都能取出队列中的具有最高优先权的元素,这种队列就是优先级队列。 2.代码实现 模板类PQueue:#ifndef PQUEUE_H#define PQUEUE_H#include<assert.h>#include<iostream>#include<stdlib.h>using namespace std;const int DefaultSize

2017-02-10 11:04:21 708

原创 二叉树的遍历<递归算法实现>、<非递归算法实现>

二叉树的遍历主要有三种:前序遍历、中序遍历、后序遍历 下面以遍历下颗树为例: 前序遍历:-+a*b-cd/ef 中序遍历:a+b*c-d-e/f 后序遍历:abcd-*+ef/- 递归实现public: //前序遍历 void preOrder(void(*visit)(BinTreeNode<T> *p)) { //递归算法 p

2017-02-09 21:26:43 646

原创 数据结构(C++) 二叉树模板类<链表存储表示>

1.二叉树 递归定义:一颗二叉树是结点的有限的集合,该集合或者为空或者是由一个根节点加上两颗分别称为左子树和右子树、互不相交的二叉树的组合。 二叉树的左右子树都还是二叉树,到达空子树的时候递归定义结束。许多基于二叉树的算法都利用了这个递归特性。 二叉树的特点是每个节点最多有两个子女,分别称为左右子女。在二叉树中不存在度数大于2的节点,并且二叉树的子树有左右之分,其子树的次序不能颠倒。

2017-02-09 17:22:31 3044

原创 C++函数指针和指针函数

1.函数指针 顾名思义,函数指针就是指向函数的指针变量。函数存于内存中,正如其他的指针一样,函数指针是只想存放这个函数的首地址的变量。函数指针的声明方式:返回类型 +(* 函数名)+(形参) 不带参数的函数指针 首先Load函数调用Say Hello函数#include <iostream>using namespace std;int SayHello();void Load(in

2017-02-08 15:34:42 392

adbwireless

adbwireless,无线调试

2016-10-20

写好的样式

bootstrap-3.3.6-dist

2016-05-24

Tomcat安装程序

2016-05-23

数据库驱动包

JDBC编程必不可少

2016-05-23

Eclipse各个版本汉化包

eclipse各个版本的汉化包,下载之后将文件夹1.features2.plugins覆盖即可完成汉化,非常简单

2016-05-23

空空如也

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

TA关注的人

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