笔记
文章平均质量分 80
吴豪杰
在校学生,专注于安卓开发
http://wuhaojie.top/
展开
-
Java输入输出流
read & write方法read和write方法在执行时都将阻塞,直至字节确实被读入或写出。available方法使我们可以去检查当前可读入的字节数量。当你完成对流的读写时,应该通过调用close方法来关闭它,否则可能写出字节的最后一个包永远也得不到传递,当然也可以用flush方法来人为地冲刷这些输出。if(is.available()>0){ ... is.read(buffe原创 2016-01-21 21:53:52 · 523 阅读 · 0 评论 -
Android 相关重难点知识整理
集合对 HashMap 进行排序: HashMap 本身无序,但其子类 LinkedHashMap 使用链表结构,实现了有序。通过 HashMap#entrySet() 方法可以将 Map 转为 Set<Entry> ,再在 ArrayList 的构造函数中可以传入 Collections ,正好 Set 和 List 的父类就是 Collections ,这样就可以调用 Collections原创 2016-12-16 11:31:55 · 2451 阅读 · 0 评论 -
《深入理解Java虚拟机》学习笔记
本系列文章为《深入理解Java虚拟机: JVM高级特性与最佳实践》阅读笔记。 垃圾收集器与内存分配策略引用计数法 : 给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1;当引用失效时,计数器值就减1;任何时刻计数器都为0的对象就是不可能再被使用的。但是,其不能解决对象之间的相互循环引用的问题。Java和C#,甚至包括古老的Lisp,都是使用 根搜索算法 判定对象是否存活的。该算原创 2016-10-09 10:05:41 · 344 阅读 · 0 评论 -
Java并发编程
线程安全无状态对象永远是线程安全的 无状态对象指的是没有成员域变量的对象原子操作 自增操作是三个离散操作的简写形式: 获取当前值,加1,写回新值。这是一个 读-改-写 操作的实例,其中,结果的状态衍生自它先前的状态。竞争条件 当计算的正确性依赖于运行时中的相关的时序或者多线程的交替时,会产生竞争条件;换句话说,想要得到正确的答案,要依赖于“幸运”的时序。最常见的一种竞争条件是 检查再运行原创 2016-09-03 19:55:53 · 430 阅读 · 0 评论 -
RxJava入门学习笔记
什么是RxJava?RxJava的自我介绍是一个在 Java VM上使用可观测的序列来组成异步的、基于事件的程序的库。这是一个非常精准的概括,但是用“异步”两字概括也许更为通俗易懂。此文将简要记录学习RxJava的笔记。 参考文献 给Android开发者的RxJava详解基本概念RxJava 有四个基本概念:Observable (可观察者,即被观察者)、 Observer (观察者)、原创 2016-03-19 21:00:20 · 440 阅读 · 0 评论 -
Android权限管理
前言农历腊月二十五,年味也愈加浓重了,在新年到来之前争取再多更新几篇博客。此文讲解安卓的权限管理,主要是针对Android 6.0新增加的动态权限获取的使用方法。 两种权限管理什么是权限管理大家也一定都知道,想必不需要笔者多说了,笔者在此只提一下目前的两种权限管理机制: 安装时权限管理: 这是在安卓5.1及以下采用的方案,指的是安装应用完成时,应用可以获得系统权限运行时权限管理: 安卓6.原创 2016-02-03 23:40:23 · 518 阅读 · 0 评论 -
深入理解Activity(二)
前言系列中上一篇文章中对Activity的基础知识进行了讲解,这篇文章主要讲一些易理解偏差的零碎知识点。 可交互与可见在Activity的生命周期中,出现了两个差不多的方法: onStart()与onResume(),与之配对的还有onStop()与onPause(),它们都是Activity出现在前台时调用,那它们有什么区别呢?区别在于:onStart()与onStop()都是处于前台,可见,原创 2016-02-02 15:22:02 · 494 阅读 · 0 评论 -
Accessibility辅助功能的使用
前言又到春节,大家这几天抢红包抢得高兴吗?最近,安卓“辅助功能”特性的应用倒是越来越火了,比如免Root自动安装应用、微信自动抢红包等,这些都是利用安卓的Accessibility实现的,所以是时候了解一下Accessibility了。 介绍 官方介绍: 许多Android用户有不同的能力,要求它们以不同的方式与他们的Android设备进行交互。这包括用户视觉、物理或年龄限制,防止他们完原创 2016-02-09 01:10:12 · 7082 阅读 · 0 评论 -
使用Tab创建滑动视图
滑动视图滑动视图就是在顶栏有个Tab标题栏,显示内容的标题,下面正文区域是ViewPager构成的可以滑动切换的布局,这种设计也是很常见的,一般用于新闻,应用市场等应用,Tab栏展示分类标题,ViewPager展示正文内容。 实现滑动视图首先要做的是让正文区域显示可以滑动切换的内容,毫无疑问,使用ViewPager来实现: <?xml version="1.0" encoding="utf-8"?原创 2016-01-29 16:45:25 · 466 阅读 · 0 评论 -
弹出消息的新方式——Snackbar
前言安卓学习的第一课应该就讲了安卓弹出消息Toast的使用,它能够简单快捷有效地以气泡方式提醒用户,但在MaterialDesign盛行的今天,Toast未免也太Low了,本文要讲的即是Toast的取代者——Snackbar。Snackbar介绍Snackerbar简单说就是用来取代Toast的,所以这里就不多说,放两张图大家自行体会。 Toast:Snackbar:使用CoordinatorLa原创 2016-01-26 18:19:46 · 2723 阅读 · 0 评论 -
安卓NavigationDrawer的使用
Navigation Drawer介绍 导航抽屉(NavigationDrawer)是一个面板,该面板显示应用程序的主导航选项在屏幕的左边缘。它通常是隐藏的,但当手指从屏幕左边缘滑出时,在应用程序中的最高层次,在动作栏中用户触摸应用程序图标。官方介绍总是那么不接地气,其实就是一个从左边拉出来的抽屉而已,是一个很常见的效果,说的再多也不如贴一张图看得明白。 关于导航抽屉的设计原则,可以参见Go原创 2016-01-25 16:46:42 · 729 阅读 · 0 评论 -
初探 Linux 系统编程之进程
本文对 Linux 系统编程的进程相关知识进行总结,包含了进程的创建方法、IPC 实现等。1 进程相关概念单道程序设计模式: DOS 操作系统多道程序设计模式: 通过时钟中断在硬件级别控制 CPU 轮转MMU: 内存管理单元,位于 CPU 内部,完成虚拟内存与物理内存的映射和设置修改内存访问级别PCB: 进程控制块,定义在 /usr/src/linux-haeders-3.16.0-原创 2016-12-26 22:13:42 · 650 阅读 · 0 评论