编程体会
文章平均质量分 81
David-Kuper
只有一个好的设计才能诞生出一款伟大的应用。
展开
-
数据库编程实战---经验心得
数据库编程实战 ——经验心得//程序在初始阶段,界面还有很多BUG遇到的困难:1.ADO数据库的链接,方式多种多样,最好只选一种,要杂糅,太容易出错,光链接数据库就花了好几个小时原创 2014-12-16 23:32:31 · 943 阅读 · 0 评论 -
Android基于AOP的非侵入式监控之——AspectJ实战
本博文的目的不是详细的介绍AspectJ的细节,而是最近项目用到了AspectJ,因此对其作了一些使用和重要概念上的总结。相信很多做过Web的同学对[AspectJ](https://eclipse.org/aspectj/doc/next/progguide/starting.html)都不陌生,Spring的AOP就是基于它而来的。如果说平常我们随便写写程序的时候,基本也不会用到它,需要调试的话无非就是多加一个原创 2016-05-24 10:45:15 · 21323 阅读 · 6 评论 -
Java泛型(一)——你所不知道的那些泛型背后
一泛型1编译期确定类型安全泛型Generics2参数化类型与原始类型的兼容性3类型擦除4泛型的定义与使用Java泛型(一)——泛型的定义与使用 Java泛型(二)——使用Gson解析嵌套泛型数组一、泛型1、编译期确定类型安全——泛型(Generics)泛型是提供给Javac编译器使用的。可以限定集合中输入的类型,让编译器在编译期间避免原始程序的非法输入,编译器编译带类型说明的集合时会去掉原创 2016-11-15 16:07:01 · 1980 阅读 · 0 评论 -
Android文件操作 —— 6.0之后文件操作
今天做一个需求,需要在SD卡创建公共文件夹,以前也做过,创建SD卡文件夹的代码很简单。但是却出现了问题,在6.0版本之后都不能创建,最后查了文档发现问题所在,就记录一下(很久没有做文件操作相关的功能,现在都7.0了,out太多!)。1、权限声明<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />原创 2017-03-05 02:04:54 · 4459 阅读 · 0 评论 -
Android——如何优雅的维护最前台的Activity实例
在Android开发过程中,我们有时候需要获取当前的Activity实例,比如弹出Dialog操作,所以维护一个当前显示的Activity是比较好的方式。关于如何实现由很多种思路,这其中有的简单,有的复杂,这里简单总结一下几种方式。反射我们可以像下面这样,通过反射来获取一个Activity的引用。 1. 获取ActivityThread中所有的ActivityRecord 2. 从Acti原创 2017-03-01 15:59:16 · 1431 阅读 · 0 评论 -
Android:Activity——生命周期深入详解
一、生命周期全面分析Android活动默认运行在当前进程所拥有的栈中,前台可见的活动则在活动栈的最顶部。其他后台活动则在栈的里面,在正常的情况下(内存充足)其他的活动并没有被回收或者杀死,它们仍然存在于栈中保持着原来的状态。当前面的活动退出后,后面的活动就会搬到前台使得被用户可见。如果在非正常情况下(内存紧张、按下Home键后右启动其他应用)那么栈内的非前台Activity就可能被回收,但是当我们返原创 2016-03-23 13:34:08 · 26315 阅读 · 3 评论 -
聊聊同步、异步、阻塞与非阻塞
[TOC] 近来遇到了一些常见的概念,尤其是网络编程方面的概念,如:阻塞、非阻塞、异步I/O等等,对于这些概念自己也没有太清晰的认识,只是很模糊的概念,说了解吧也了解,但是要让自己准确的描述概念方面的具体细节,却说的不那么准确,这也是自己在这几个方面也没有细细考究过的原因吧。经过看了些这几个概念的资料,发现同步、异步、阻塞、非阻塞的概念其实也并不难以理解,在此写下此文,欢迎拍砖,希望多多交流。一、转载 2017-02-09 15:56:27 · 702 阅读 · 0 评论 -
Java泛型(二)——使用Gson解析复杂的泛型嵌套泛型数据结构
Gson是由Google自家出来的Json解析库,使用起来兼容性方面当然会有很多优势,而且解析Json数据也很方便,掌握了Gson的一些基本使用之后就可以使用它解析很多复杂的Json数据了。但当我们要解析一个复杂的数据结构时,比如说List<**CardBean<*E*>**>这种,泛型之中还有泛型的数组结构,就比较麻烦了。下面我会给出一种方案,在此之前我还是先简单的介绍一下Gson的一些东西,大神请直接第二节原创 2016-11-15 17:37:02 · 19001 阅读 · 3 评论 -
Android学习笔记——Handler消息分发
Handler 消息分发Handler事件分发机制是 基于生产者/消费者模型,使用Linux下的pipe(管道)实现的,读取和写入相互协调实现等待/通知。Handler机制是用于处理线程间消息分发的。主要角色:Handler(事件处理)、MessageQueue(消息队列)、Looper(消息循环)。 一个线程下可以有多个Handle,但只能拥有一个MessageQueue和一个L原创 2016-07-23 15:48:24 · 871 阅读 · 0 评论 -
Android学习笔记——触摸事件分发
Android 触摸事件分发机制Android触摸事件分为三个过程:分发、截获、处理。截获是ViewGroup独有的,可以截断事件的分发过程, 处理是View独有的,所有处理事件都将试图看成一个普通的View(即使它是一个ViewGroup)。 正常分发顺序:DispatchTouchEvent()——> onInterceptTouchEvent()——> onTouch()——> onTouch原创 2016-07-23 15:44:51 · 680 阅读 · 0 评论 -
C语言指针与数组易混淆知识点(一)
一指针与数组二指针与函数三指针数组数组指针指向指针的指针四程序陷阱一、指针与数组指针:指针本身也是一个变量,它的内容是指向的内容的地址。指针同样有类型的区分,char 的指针只能指向char型数据,int 指针指向int型数据。但是指针所占内存单元的大小(即其内容)是跟操作系统的地址位数有关,比如32位地址的系统,那么指针所占的内存单元就是4个字节,16位就是2个字节,因此,指针的类型只是限原创 2016-03-25 15:59:17 · 9459 阅读 · 3 评论 -
Android:windowSoftInputMethod软键盘弹出的问题浅析
一、浅析很多时候在一些需要输入的界面上,我们需要呼出软键盘来打字。Android中会在AndroidMainfest.xml文件的 < activity />节点使用 android:windowSoftInputMode=”XXX”属性来设定呼出软键盘的属性。 下面就对一些属性做一个简单的列表说明。“stateUnspecified” 软键盘的状态(是否它是隐藏或可见)没有被指定。系统原创 2016-03-22 23:47:44 · 1652 阅读 · 1 评论 -
Android框架设计模式(三)——Observer Method
在介绍观察者模式之前,先补充两个概念:IOC(控制反转)、DIP(依赖倒置)。依赖倒置(控制反转),是框架设计的核心,因为有了它们会产生框架,框架的核心就是把【不变】的留在框架层次,把【变化】的留在应用层次,然后两个层次之间通过接口来实现沟通,降低耦合。它们两者本质是同样的,只是一个是从原则上面描述,一个是从方式上面描述。原创 2016-03-23 21:03:07 · 5120 阅读 · 2 评论 -
Android使用TabLayout报错—— java.lang.NoClassDefFoundError
我的手机是android 5.01的,今天本来打算使用TabLayout(坑爹的是5.1才支持)新布局来实现选项卡切换的,谁知道半途出现了依赖包无法识别的问题。 报的错误是:java.lang.NoClassDefFoundError。没有找到该类,可是我明明把support-design包、support-v7-appcompat给导进去了。之后又清理、依赖等都试过了。,但是原创 2016-02-05 01:57:36 · 2433 阅读 · 2 评论 -
android控件——继承AdapterView的控件无法使用addView方法
今天在写安卓的时候,使用ViewPager,每一个页面都使用到ListView,但是突然又不想写Adapter,然后就像自己添加几个TextView进去就行。谁知道,调用了AddView方法后报错了。 添加的代码如下: @Override public Object instantiateItem(View view, int position)原创 2016-02-05 01:34:19 · 2637 阅读 · 0 评论 -
设计模式之---简单工厂模式
设计模式就是来帮助我们设计出:易维护、可复用、可扩展、灵活性好的程序的,学习了设计模式受益匪浅。工厂,顾名思义:通过对原材料进行不同的加工来生产不同的品。设计模式里面的简单工厂模式也类似。通过传入的参数来对应创造不同的实例(这些不同实例是属于同一个继承链上的) ,然后返回一个基类的引用(或者指针)。原创 2015-10-13 01:07:21 · 769 阅读 · 1 评论 -
Java中数据存储方式、栈机制与引用的关系
总述: 这里是例举的Java当中的例子,其他语言如:C/C++(多一个指针)。但是基本的存储方式都是一样的,生命周期也是差不多的。这是我学了一年多的计算机的一点感悟,也是从翻阅其他书籍、和其他大神的博客得到的一些总结。 好多博客知识对引用做了很简单的区分(按值传递、按址传递),但是他们并没有考虑到程序运行时的机制,以及数据变量在内存中的分配。函数是在栈中运行的,所有要遵循栈的保护机原创 2015-03-20 18:15:26 · 2098 阅读 · 1 评论 -
唉!不要乱用函数哦,特别是你不熟悉的!
不要乱用一些自己不知道的函数!!!不然你会像我一样,死的很惨很惨!!!!就一点点问题!!你找一天都找不到!原创 2014-12-17 20:52:57 · 874 阅读 · 0 评论 -
Android——带你从ADB命令行查看Task任务栈的管理方式
一、概念1、TaskTask是指将相关的Activity组合到一起,以Activity Stack的方式进行管理。从用户体验上讲,一个“应用程序”就是一个Task(默认情况),但是从根本上讲,一个Task是可以有一个或多个Android Application组成的。 Task表示一个任务,每一个Task 会有一个ID作为唯一标识。一个进程(程序)有一个默认的task a原创 2017-03-26 17:59:46 · 8894 阅读 · 4 评论