- 博客(86)
- 资源 (5)
- 收藏
- 关注
转载 Android人生整理第一章:Linux系统编程第五节-进程管理
Linux进程管理常用命令 进程的管理命令有: pstree、ps、pidof、pgrep、pkill、pmap、kill、killall、job、bg、fg等 进程的管理工具: top、htop、vmstat、dstat、iostat、glances等 进程管理命令: pstree:以树状图的方式展现进程之间的派生关 实例 显示当前所有进程的进程号和进程idpstree -p显示所有进程的所有详细信息,遇到相同的进程名可以压缩显示。pstree -a.
2020-10-26 15:09:31
250
原创 Android人生整理第一章:Linux系统编程第四节-高级文件I/O
分散/聚集 I/O 是一种可以在单次系统调用中对多个缓冲区输入输出的方法,可以把多个缓冲区的数据写到单个数据流,也可以把单个数据流读到多个缓冲区中。也称为向量I/O(vector I/O)与线性I/O相比,分散/聚集 I/O 有如下几个优势:编码模式更自然如果数据本身是分段的(比如预定义放的结构体的变量),向量I/O提供了直观的数据处理方式。效率更高单个向量I/O操作可以取代多个线性I/O操作。性能更好除了减少发起的系统调用次数,通过内部优化,向量I/O可以比线性I/O提供更好的
2020-10-26 15:03:33
188
原创 Android人生整理第一章:Linux系统编程第二节-文件I/O
在对文件进行读写操作之前,首先需要打开文件,内核会为每个进程维护一个打开文件的列表。该列表称为文件表(file table)。文件描述符使用C语音的int类型表示。文件描述符的范围从0开始,到上限值减1。默认情况下,上限值为1024,但是可以对它进行配置,最大为1048576。因为负数不是合法的文件描述符,所以当函数出错不能返回有效的文件描述符时,通常会返回-1。按照惯例,每个进程都至少 包含三个文件描述符:0,1和2。除非显式关闭这些描述符。文件描述符0表示标准输入(sdtin),1表示标准输
2020-09-28 16:21:32
192
转载 Kotlin 学习第八章,委托
委托模式是软件设计模式中的一项基本技巧。在委托模式中,有两个对象参与处理同一个请求,接受请求的对象将请求委托给另一个对象来处理。Kotlin 直接支持委托模式,更加优雅,简洁。Kotlin 通过关键字 by 实现委托。类委托类的委托即一个类中定义的方法实际是调用另一个类的对象的方法来实现的。以下实例中派生类 Derived 继承了接口 Base 所有方法,并且委托一个传入的 Base 类的对象来执行这些方法。// 创建接口interface Base { fun print()}
2020-05-26 14:05:56
180
原创 Kotlin 学习第七章,对象表达式和对象声明
Kotlin 用对象表达式和对象声明来实现创建一个对某个类做了轻微改动的类的对象,且不需要去声明一个新的子类。window.addMouseListener(object : MouseAdapter() { override fun mouseClicked(e: MouseEvent) { // ... } override fun mouseEntered(e: MouseEvent) { // ... }})对象可以继承于某个基
2020-05-25 18:05:50
198
原创 Kotlin 学习第六章,泛型和枚举
class Box<T>(t : T) { var value = t}fun main(args: Array<String>) { var boxInt = Box<Int>(10) var boxString = Box<String>("Runoob") println(boxInt.value) println(boxString.value)}输出结果为:10Runoob泛型约束我们可以
2020-05-22 16:09:44
367
原创 Kotlin 学习第五章,数据类与密封类
数据类Kotlin 可以创建一个只包含数据的类,关键字为 data:data class User(val name: String, val age: Int)编译器会自动的从主构造函数中根据所有声明的属性提取以下函数:equals() / hashCode()toString() 格式如 “User(name=John, age=42)”componentN() functions 对应于属性,按声明顺序排列copy() 函数如果这些函数在类中已经被明确定义了,或者从超类中继承而来,就
2020-05-20 14:49:02
195
原创 Kotlin 学习第四章,继承、接口、扩展
Kotlin 中所有类都继承该 Any 类,它是所有类的超类,对于没有超类型声明的类是默认超类:class Example // 从 Any 隐式继承Any 默认提供了三个函数:equals()hashCode()toString()注意:Any 不是 java.lang.Object。如果一个类要被继承,可以使用 open 关键字进行修饰。open class Base(p: Int) // 定义基类class Derived(p: Int) : Base(p)
2020-05-13 16:15:53
250
原创 Kotlin 学习第三章,类和对象
Koltin 中的类可以有一个 主构造器,以及一个或多个次构造器,主构造器是类头部的一部分,位于类名称之后:class Person constructor(firstName: String) {}如果主构造器没有任何注解,也没有任何可见度修饰符,那么constructor关键字可以省略。class Person(firstName: String) {}getter 和 setterclass Person { var lastName: String = "zhang"
2020-05-13 14:32:51
173
原创 Kotlin 学习第二章,基础语法及用法汇总
Kotlin 学习第二章,基础语法及用法汇总fun sum(a: Int, b: Int): Int { // Int 参数,返回值 Int return a + b}public fun sum(a: Int, b: Int): Int = a + b // public 方法则必须明确写出返回类型无返回类型的fun方法// 如果是返回 Unit类型,则可以省略(对于public方法也是这样):public fun printSum(a: Int, b: Int) {
2020-05-13 13:57:09
207
原创 Kotlin Android 环境搭建
Android Studio 从 3.0(preview)版本开始将内置安装 Kotlin 插件。打开 Settings ( Mac 为 Preferences) 面板,在右侧找到 Plugins 选项 (快捷键 Ctrl+, Mac 下为 command+),搜索框输入 "Kotlin" 查找,点击 Search in repositories(仓库中搜索),然后安装即可,安装完成之后需要重启 Android Studio。创建新工程选择 Start a new Android Stu
2020-05-09 10:46:43
220
原创 Kotlin学习第一章
Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的Swift,由 JetBrains 设计开发并开源。Kotlin 可以编译成Java字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。Kotlin 程序文件以 .kt 结尾,如:hello.kt 、app.kt。package hello // 可选的包头 fun main(args: Array<String>)
2020-05-09 10:36:31
210
原创 Android之表单验证框架
下载地址:https://github.com/ragunathjawahar/android-saripaarSaripaar特性:使用Annotation标注的生命性规则可扩展性支持同步/异步验证,无线担心线程问题使用简单,只需下载 jar包,放到项目的libs目录下即可使用规则来隔离验证逻辑兼容其他Annotation框架,例如 AndroidAnnotations, Rob...
2020-04-18 14:04:10
630
转载 android 优秀框架整理
android 优秀框架整理2018年01月11日 11:28:29 晓果博客 阅读数:9871程序员界有个神奇的网站,那就是github,这个网站集合了一大批优秀的开源框架,极大地节省了开发者开发的时间,在这里我进行了一下整理,这样可以使我们在使用到时快速的查找到,希望对大家有所帮助!1. Retrofit 一句话介绍:Retrofit是一款类型安全的网络框架,基于HTTP协议...
2018-11-07 13:50:16
366
原创 Android之Context底层原理
Context的中文翻译为:语境; 上下文; 背景; 环境,在开发中我们经常说称之为“上下文”。从Android系统的角度来理解:Context是一个场景,代表与操作系统的交互的一种过程。Context在加载资源、启动Activity、获取系统服务、创建View等操作都要参与 。从程序的角度上来理解:Context是个抽象类,而Activity、Service、Application等都是该类的...
2018-10-22 15:21:14
646
转载 Android开发中常见的设计模式
对于开发人员来说,设计模式有时候就是一道坎,但是设计模式又非常有用,过了这道坎,它可以让你水平提高一个档次。而在android开发中,必要的了解一些设计模式又是非常有必要的。对于想系统的学习设计模式的同学,这里推荐2本书。一本是Head First系列的Head Hirst Design Pattern,英文好的可以看英文,可以多读几遍。另外一本是大话设计模式。单例模式首先了解一些单...
2018-10-15 16:21:16
213
转载 android开发四种引用的详解
简述:在android开发中,开发到一定程度的之后,就会开始关注关于APP的各种性能优化,其中很重要的一个点,就是关于四种引用的合理引用,另外在android的各种面试中,也会经常被问到关于四种引用的各种问题。哪四种引用四种引用分别为: 1. 强引用(StrongRefernce) 2. 软引用(SoftReference) 3. 弱引用(WeakReference) 4. 虚...
2018-10-15 14:50:42
301
原创 Android-View的绘制及自定义View
视图View主要分为两类:类别 解释 特点 单一视图 即一个View,如TextView 不包含子View 视图组 即多个View组成的ViewGroup,如LinearLayout 包含子View DecorView是一个应用窗口的根容器,它本质上是一个FrameLayout。DecorView有唯一一个子View,它是一个垂直Linea...
2018-09-03 14:01:30
454
原创 Message、Handler、MessageQueue、Looper之间的关系
简单的说,Handler获取当前线程中的looper对象,looper用来从存放Message的MessageQueue中取出Message,再有Handler进行Message的分发和处理.MessageQueue(消息队列):用来存放通过Handler发布的消息,通常附属于某一个创建它的线程,可以通过Looper.myQueue()得到当前线程的消息队列Handler:可以发布或者处理...
2018-09-03 13:32:20
994
原创 TCP与UDP
广播是TCP还是UDP协议? UDP协议TCP与UDP区别总结:1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保 证可靠交付3、TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的...
2018-09-03 13:23:57
281
原创 MPAndroidChart :二,饼图PieChart
二,饼图PieChart<LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <com.github.mikephil.charting.charts...
2018-08-30 14:38:37
438
转载 RecyclerView
com.android.support:recyclerview-v7:23.4.0从Android 5.0开始,谷歌公司推出了一个用于大量数据展示的新控件RecylerView,可以用来代替传统的ListView,更加强大和灵活。RecyclerView的官方定义如下:A flexible view for providing a limited window into a larg...
2018-08-27 14:13:09
316
原创 OkHttp
https://github.com/square/okhttppackage com.yaoxin.doctor.httpservice;import android.annotation.SuppressLint;import android.app.Activity;import android.content.Context;import android.content.S...
2018-08-27 14:11:24
322
转载 JiaoZiVideoPlayer
https://github.com/lipangit/JiaoZiVideoPlayer/blob/develop/README-ZH.md主要特点可以完全自定义UI和任何功能 一行代码切换播放引擎,支持的视频格式和协议取决于播放引擎,android.media.MediaPlayer ijkplayer 完美检测列表滑动 可实现全屏播放,小窗播放 能在ListView、View...
2018-08-27 14:10:40
1171
5
原创 MPAndroidChart :一,曲线图,折线图LineChart
https://github.com/PhilJay/MPAndroidChart图表控件包含很多类型图表,我们一个一个进行搜索与研究。一,曲线图,折线图LineChart依赖:project build.gradle 中allprojects { repositories { jcenter() maven { url "https...
2018-08-09 17:06:52
1835
原创 Android Glide使用
https://muyangmin.github.io/glide-docs-cn/doc/download-setup.htmlhttps://github.com/bumptech/glidehttps://github.com/bumptech/glide/tree/v3.7.0AS 引用dependencies { c...
2018-07-30 13:24:48
723
原创 Android 面试题总结
看了很多朋友写的博客,也结合自己的亲身经历,写下一篇可以覆盖稍微全面些的题型,当然答案的方向还是要有自我的理解。1、Android的四大组件是哪些,它们的作用?答:Activity:Activity是Android程序与用户交互的窗口,是Android构造块中最基本的一种,它需要为保持各界面的状态,做很多持久化的事情,妥善管理生命周期以及一些跳转逻辑service:后台服务于Ac...
2018-03-20 14:55:14
437
原创 C++ Primer 初学之旅
突然心血来潮打算重学一遍C++,说做就做#include 个人理解是导入需要依赖的包int main () { return 0; }
2017-07-12 17:19:30
401
转载 Android 自定义View实战系列 :时间轴
转载自:http://blog.csdn.net/carson_ho/article/details/75005994 前言 Android开发中,时间轴的 UI需求非常常见,如下图: 本文将结合 自定义View & RecyclerView的知识,手把手教你实现该常见 & 实用的自定义View:时间轴 目录 1. 知识储备本文采用 自...
2017-07-12 15:39:29
1292
转载 Android程序员必须知道的知识点
Android中国开发精英 目前包括: Android开源项目第一篇——个性化控件(View)篇 包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、TimeView、TipView、FlipView、ColorPickView...
2017-05-11 18:21:36
1214
转载 android开发命名规范
基本命名规范 类别 说明例子包包名一律小写, 少用缩写和长名;采用以下规则:[com].[组织名].[项目名] 后面再跟后面为模块名或层级名称。如:com.tuge.项目缩写.模块名 ? com. tuge.dzm.bookmark 如:com.tuge.项目缩写.层级名 ? com. t
2016-05-26 13:42:49
544
转载 提高工作效率的16条Android开发小经验
1.TextView中的getTextSize返回值是以像素(px)为单位的,而setTextSize()是以sp为单位的.所以如果直接用返回的值来设置会出错,解决办法是用setTextSize()的另外一种形式,可以指定单位:1234setTextSize(int unit, int size) TypedValue.COMPLEX_U
2016-05-25 16:50:46
482
原创 正则表达式及应用
正则表达式及应用一、 正则表达式(一)、概念: 正则表达式(regular expression)就是由普通字符(例如a到z)以及特殊字符(称为元字符)组成的一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的
2016-05-25 16:48:57
5110
原创 生产者消费者模型
生产者消费者模型一、介绍:(一)、概念: 如果要实现以下操作流程,使用Java代码来实现: 多个蛋糕师生产蛋糕,多个消费者购买蛋糕; 蛋糕的最大库存为5个; 早生产的蛋糕先被销售,最后被生产的蛋糕要最后被售出 如果要实现这个过程,一定要借助Java线程的并发协作来做。其实这在Java中叫做生产者消费者
2016-05-25 16:47:28
1091
原创 HTTP状态码
HTTP状态码HTTP状态码(HTTP Status Code)一些常见的状态码为:200 - 服务器成功返回网页 404 - 请求的网页不存在 503 - 服务不可用 一、1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码。代码 说明 100 (继续) 请求者应当继续提出请求。 服务器返回此
2016-05-25 16:46:52
238
原创 Android常用英文词汇
Android常用英文词汇ANR (Application Not Response ) bundle 捆,entire 整个的,完整的lifetime 生命周期entire lifetime 完整生命周期visible lifetime 可见生命周期foreground lifetime 前沿生命周期initiate 开始,创建,初始化
2016-05-25 16:46:25
928
Android群英传:神兵利器(带书签高清版)
2018-09-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人