- 博客(54)
- 资源 (1)
- 收藏
- 关注
转载 厌倦了NullPointException?Optional拯救你
摘抄于:http://tianweishu.com/2015/12/08/use-optional-avoid-nullpointexception/I call it my billion-dollar mistake. It was the invention of the null reference in 1965. I couldn’t resist the temptati
2016-01-05 21:39:24
672
原创 TextView——文本省略显示
TextView——文本省略显示关于TextView中文本省略显示,通常我们可以设置android:elipsize属性就可以。android:elipsize属性主要有以下四种:(1)marquee (滚动显示)(2)end (末尾显示...)(3)middle(中间显示...)(4)none (不显示省略号,多余自动不显示)其中,end、middle、none,
2015-10-05 15:37:16
667
转载 面试心得与总结---BAT、网易、蘑菇街
之前实习的时候就想着写一篇面经,后来忙就给忘了,现在找完工作了,也是该静下心总结一下走过的路程了,我全盘托出,奉上这篇诚意之作,希望能给未来找工作的人一点指引和总结, 也希望能使大家少走点弯路 , 如果能耐心读完,相信对你会找到你需要的东西。先说一下LZ的基本情况,LZ是四川某985学校通信专业的研究生(非计算机),大学阶段也就学了C语言,根本没想过最后要成为码农。大四才开始学java,研
2015-09-22 18:35:10
1175
原创 性能优化——Android内存优化
性能优化——Android内存优化(1)【MDCC技术大咖秀】Android内存优化之OOMhttp://www.csdn.net/article/2015-09-18/2825737/1未完待续......
2015-09-21 14:14:53
559
原创 Android Studio学习 ——如何找到当前类/方法被引用位置
Android Studio学习 ——如何找到当前类/方法被引用位置当前类/方法被引用位置查找步骤:1)假设要找add函数所有被使用的地方,先光标定位到add函数2)右键选择“Find Usages" (快捷方式 ctrl+g)3)在Find窗口就可以看到所有使用的地方了 比较方便!Get 新技能,之前一直使用是ctrl +h 全文字符串匹配
2015-09-21 12:39:32
4594
原创 Android 程序员经常逛的地方
Android 程序员经常逛的地方(1)Android 开发官网http://developer.android.com/intl/zh-cn/training/index.html未完待续... ...
2015-09-21 09:40:56
545
原创 Android 开源项目分类汇总
Android 开源项目分类汇总Android 开源项目分类汇总:https://github.com/Trinea/android-open-project欢迎补充!
2015-09-18 16:52:59
370
原创 Android 安全方面知识汇总
Android 安全方面知识汇总一、官方Security Tips http://developer.android.com/intl/zh-cn/training/articles/security-tips.html二、其他待续......
2015-09-18 14:17:27
485
转载 遇到问题你可以 at 的那些 Android 开发者
遇到问题你可以 at 的那些 Android 开发者碰到问题,首先我们建议 Google,无果可 @ GitHub 上的 Android 开发者。1. Android 开源交流群成员https://github.com/orgs/aosp-exchange-group/people2. android-cn 成员https://github.com/
2015-09-18 11:15:12
445
转载 Android 开发最佳实践
Android 开发最佳实践从Futurice公司Android开发者中学到的经验。 遵循以下准则,避免重复发明轮子。若您对开发iOS或Windows Phone 有兴趣, 请看iOS Good Practices 和 Windows client Good Practices 这两篇文章。摘要使用 Gradle 和它推荐的工程结构把密码和敏感数据放在gradle.
2015-09-18 09:51:33
448
原创 Android 常用性能测试工具汇总
Android 常用性能测试工具汇总Android 常用性能测试工具主要分为以下几个部分:(1)网络抓包:Fiddler(2)内存分析:MAT,DDMS(AllocationTracker),Leakcanary(Square), TraceView(3)静态分析:Find Bugs,Lint(4)压力测试:Monkey,Monkeyrunner(5)自
2015-09-16 11:31:50
854
原创 Android 性能测试工具- Emmagee
Android 性能测试工具- EmmageeEmmagee是监控指定被测应用在使用过程中占用机器的CPU、内存、流量资源的性能测试小工具。支持SDK:Android2.2以及以上版本Emmagee功能介绍1、检测当前时间被测应用占用的CPU使用率以及总体CPU使用量2、检测当前时间被测应用占用的内存量,以及占用的总体内存百分比,剩余内 存量3、
2015-09-16 10:53:54
656
原创 Android 内存泄漏的原因
Android 内存泄漏的原因开发中需要注意的点以免内存泄漏:(1)不要让生命周期长于Activity的对象持有到Activity的引用(2)尽量使用Application的Context而不是Activity的Context(3)尽量不要在Activity中使用非静态内部类,因为非静态内部类会隐式持有外部类实例的引用。如果使用静态内部类,将外部实例引用作为弱引用持有。
2015-09-15 21:49:17
376
原创 HTTP 的应答码,错误码,通信码
HTTP 的应答码,错误码,通信码"100" : Continue "101 " : witching Protocols "200" : OK "201 " : Created "202 " : Accepted "203 " : Non-Authoritative Informati
2015-09-15 15:24:02
754
原创 HttpURLConnection 与 Android HttpClient 对比
HttpURLConnection 与 Android HttpClient 对比9/15/2015 11:00:00 AM # Android中Http请求方式的目前使用比较多的主要有HttpURLConnection 与 Android HttpClient 两种,接下来介绍两种方式的异同,最后以代码的形式重点介绍一下HttpURLConnection 的使用。#一、两种请求方式对比是否带
2015-09-15 11:23:59
1261
2
转载 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2015-09-15 10:53:55
365
转载 程序员八荣八耻
以动手实践为荣,以只看不练为耻。以打印日志为荣,以出错不报为耻。以局部变量为荣,以全局变量为耻。以单元测试为荣,以手工测试为耻。以代码重用为荣,以复制粘贴为耻。以多态应用为荣,以分支判断为耻。以定义常量为荣,以魔法数字为耻。以总结思考为荣,以不求甚解为耻。转载于:http://qifuguang.me/2015/09/04/程序员八荣八耻/
2015-09-14 14:15:29
281
原创 Android 单击事件的几种写法
Android 单击事件的几种写法(1)采用在Activity中创建一个内部类定义点击事件 button = (Button) this.findViewById(R.id.btn); button.setOnClickListener(new MyListener());
2015-09-12 15:40:45
990
原创 屏幕适配——Drawable 资源
屏幕适配——Drawable 资源上一篇:Support Screen 相关知识http://blog.csdn.net/yaozhifeng123456/article/details/48377719这里介绍一下,屏幕适配相关的Drawable资源:首先:你需要在AndroidManifest.xml文件的元素如下添加子元素 1.android:anyD
2015-09-11 20:51:41
633
转载 AndroidManifest.xml文件详解(supports-screens)
AndroidManifest.xml文件详解(supports-screens) 转载于:http://www.cnblogs.com/andriod-html5/archive/2012/05/21/2539418.html语法(SYNTAX):android:resizeable=["true"|"false"] android:
2015-09-11 20:37:42
599
原创 GC Root 对象有哪些
GC Root 对象有哪些 JVM垃圾回收的根对象的范围有以下几种:(1)虚拟机(JVM)栈中引用对象(2)方法区中的类静态属性引用对象(3)方法区中常量引用的对象(final 的常量值)(4)本地方法栈JNI的引用对象以下部分引用于:http://blog.csdn.net/fenglibing/article/detai
2015-09-11 17:04:45
10354
原创 Android SDK 支持的加密算法
Android SDK 支持的加密算法一、Android SDK 支持的加密算法Android SDK 目前支持4种加密算法:MD5 ,SHA,HMAC,AES。其中,前面三种为不可逆加密算法,AES,为可逆加密算法。 下面介绍前面3种不可逆加密算法:(1)MD5(信息-摘要算法)用于文件校验,不管文件大小,经过MD5后能够生成唯一的MD5值
2015-09-11 15:46:11
2516
原创 JNI 与 NDK
JNI 与 NDK一、前言JNI是Java调用Native机制,全称为 Java Native Interface,是Java 语言的特性,换句话说JNI和Android没有关系,在PC上开发Java的应用,如果运行在Windows平台使用 JNI是是经常的,比如说读写Windows的注册表。NDK是Google公司推出的帮助Android开发者通过C/C++本地语
2015-09-11 15:11:14
356
转载 Android 基础进阶 (一)
Android 基础进阶 (一)基础总结篇之一:Activity生命周期基础总结篇之二:Activity的四种launchMode基础总结篇之三:Activity的task相关基础总结篇之四:Service完全解析基础总结篇之五:BroadcastReceiver应用详解基础总结篇之六:ContentProvider之读写联系人基础总结篇之七:Content
2015-09-11 14:26:57
418
原创 final,finally和finallize的区别&&override和overload的区别
final,finally和finallize的区别&&override和overload的区别(1)请简述final,finally和finallize的区别是什么? 1) final用于申明属性,方法和类,表示属性不可变,方法不可以被覆盖,类不可以被继承。 2)finally是异常处理语句结构中,表示总是执行的部分。 3)finallize表示是
2015-09-11 13:49:17
922
原创 横竖屏问题总结
横屏 竖屏问题总结一、横竖屏切换时Activity 生命周期的总结(1)不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次(2)设置Activity的android:configChanges="orientation"时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执
2015-09-11 11:08:21
375
原创 常见网络编程面试题(一)
常见网络编程面试题(一)(1)tcp和udp的区别TCP:是面向连接的流传输控制协议,具有高可靠性,确保传输数据的正确性,有验证重发机制,因此不会出现丢失或乱序。UDP:是无连接的数据报服务,不对数据报进行检查与修改,无须等待对方的应答,会出现分组丢失、重复、乱序,但具有较好的实时性,UDP段结构比TCP的段结构简单,因此网络开销也小。(2)流量控制和拥塞控制1)拥
2015-09-11 10:46:55
430
原创 设计模式——结构型模式
设计模式——结构型模式结构型设计模式是从程序的结构上解决模块之间的耦合问题,包括以下七种模式:适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式1. Adapter适配器模式Adapter模式通过类的继承或者对象的组合侧重于转换已有的接口,类适配器采用“多继承”的实现方式,带来了不良的高耦合,所以一般不推荐使用。对象适配器采用“对象
2015-09-10 21:37:34
324
原创 Android 中涉及的设计模式
Android 中涉及的设计模式1、适配器模式:ListView或GridView的Adapter简介:不同的数据提供者使用一个适配器来向一个相同的客户提供服务。 2、建造者模式:AlertDialog.Builder简介:可以分步地构造每一部分。 3、命令模式:Handler.post后Handler.handleMessage简介:把请求封装成一个对象发
2015-09-10 21:30:07
539
原创 Android Serialiable 与 Parcelable 区别
Android Serialiable 与 Parcelable 区别一、序列化、反序列化是什么序列化本质就是把对象内存中的数据按照一定规则,变成一系列的字节数据(因为java里面采用的是Unicode 编码的 16位),然后再把这些字节数据写入流中。而反序列化的过程刚好相反,先读取字节数据,然后再重新组装成java对象。所需要进行序列化的类,都必须实现Serializ
2015-09-10 21:07:59
583
原创 ConcurrentHashMap 原理简要分析
ConcurrentHashMap 原理简要分析在之前写过HashTable 与HashMap 两者之间的异同:http://blog.csdn.net/yaozhifeng123456/article/details/48345707通过前面文章,可以知道HashMap中未进行同步考虑,而Hashtable则使用了synchronized,带来的直接影响就是可选择,我
2015-09-10 20:45:50
289
原创 Android UI 优化方向
Android UI 优化方向Android在UI优化方面可以从以下五个方面入手:(1)Adapter优化(2)背景和图片优化(3)绘图优化(4)视图和布局优化 (Include、Merge、ViewStub)(5)内存分配优化具体详细内容,待续......
2015-09-10 20:17:59
288
原创 线程池总结
线程池总结 线程池基本思想:是一种对象池的思想,开辟一块内存空间,里面存放了众多(未死亡)的线程,池中线程执行调度由池管理器来处理。当有线程任务时,从池中取一根,执行完后线程对象归池,这样可以避免反复创建线程对象锁带来的性能开销,节约系统资源。(1)线程池分类1)动态创建线程池2)创建固定大小的线程池3)创建具有延迟的线程池4)建
2015-09-10 20:12:40
246
原创 Java 内部类
Java 内部类(1)内部类定义 定义在类内部的类叫做内部类,缩小了可见性。(2)内部类的分类根据内部类的定义结构不同,可以把内部类分为两种:成员式和局部式;成员式:定义的地方与成员变量和成员方法类似,就像类的一个成员一样;局部式:定义在方法体中,仅属于局部范围所有; 成员式内部类:可以分为静态内部类和成员内部类局部式内部类:普通局部
2015-09-10 19:48:48
340
原创 synchronized 与 lock
synchronized 与 lock(1)代码层Lock是基于在语言层面实现的锁,Lock锁可以被中断,支持定时锁。在安全的前提下,可以很随意的释放锁,如果安全的话。Synchronized是基于JVM实现的,称之为对象的内置锁,Java中的每一个对象都可以作为锁。1)对于同步方法,锁是当前实例对象。2)对于静态同步方法,锁是当前对象的Class对象。
2015-09-10 19:34:43
346
原创 Java 设计模式——单例模式
Java 设计模式——单例模式一、单例模式有以下三个特点1)单例类在整个系统中只能有一个实例2)单例类必须自己创建自己的实例3)单例类必须系统中其他对象提供这个实例二、单例模式两种类型(1)饿汉式先初始化对象;类一加载就存在; Single 类一进内存,就已经创建好对象。(2)懒汉式对象是方法被调用
2015-09-10 17:05:41
485
原创 HashTable 与 HashMap 异同
HashTable 与 HashMap 异同1)HashMap 不是线程安全的 ,是一个接口,是 map 接口的子接口,是将键映射到值的对象,其中键和值都是对象,并且不能包含重复键,但可以包含重复值。HashMap允许 nullkey 和 nullvalue,而Hashtable 不允许。2) HashTable是线程安全的一个Collection。HashMap是
2015-09-10 16:55:13
274
原创 抽象类与接口的区别
抽象类与接口的区别(1)抽象类1)含有 abstract修饰符的class 即为抽象类,abstract类不能创建的实例对象。2)含有 abstract方法的类必须定义为abstract class,abstractclass 类中的方法不必是抽象的。3)abstract class 类中定义抽象方法必须在具体(Concrete)子类中实现,所以,不能有抽象构造
2015-09-10 16:48:41
258
原创 StringBuilder 和 StringBuffer 区别
StringBuilder 和 StringBuffer 区别前言:可以介绍一下String类是一个不变类注意两点:对象可变与不可变;线程是否安全 1)在执行速度方面:StringBuilder> StringBuffer 2)StringBuffer与StringBuilder,均为字符串变量,是可改变的对象,每当用它们对字符串做操作时,实际上是在一个对象上操作
2015-09-10 16:42:30
240
原创 堆与栈的区别
堆与栈的区别Java应用程序在运行过程中的内存,一般会涉及:寄存器、栈、堆、常量池、代码段、数据段。java的内存分为两类:一类是栈内存,一类是堆内存。栈内存是指程序进入一个方法时,会为这个方法单独分配一块私属存储空间,用于存储这个方法内部的局部变量,当这个方法结束时,分配给这个方法的栈会释放,这个栈中的变量也将随之释放。 堆是与栈作用不同的内存,一般用
2015-09-10 16:37:08
239
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人