自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(97)
  • 收藏
  • 关注

转载 小技巧——解决Github项目clone慢的问题

设置github的项目git命令走sock代理git config --global http.https://github.com.proxy socks5://127.0.0.1:1086(sock端口号)取消代理git config --global --unset http.https://github.com.proxy设置之前:设置之后:PS:注意复制的g...

2019-09-07 22:19:00 174

转载 30分钟入门Java8之方法引用

30分钟入门Java8之方法引用前言之前两篇文章分别介绍了Java8的lambda表达式和默认方法和静态接口方法。今天我们继续学习Java8的新语言特性——方法引用(Method References)。在学习lambda表达式之后,我们通常使用lambda表达式来创建匿名方法。然而,有时候我们仅仅是调用了一个已存在的方法。如下: Arrays.sort(stringsArray...

2016-08-25 11:46:00 188

转载 Android开发艺术探索笔记——View(二)

Android开发艺术探索笔记——View(二)View的事件分发机制学习资料:1.Understanding Android Input Touch Events System Framework2.Managing Touch Events in a ViewGroup3.Android事件传递机制4.Input Events5.Mastering the Andro...

2016-08-05 09:14:00 169

转载 Android开发艺术探索笔记—— View(一)

Android开发艺术探索笔记 ——View(一)View的基础知识什么是ViewView是Android中所有控件的基类。是一种界面层控件的抽象。View的位置参数参数名获取方式含义topgetTop()View左上角纵坐标leftgetLeft()View左上角横坐标bottomgetBottom()View右下角纵坐标...

2016-08-01 16:46:00 127

转载 理解RxJava:(四)Reactive Android

在前三部分,我在通用层面介绍了RxJava的工作原理。但是作为一个Android开发者,如何在工作中使用它呢?下面是一些给Android开发者的RxJava的具体应用。RxAndroidRxAndroid是RxJava在Android开发中的拓展。它包含能节省我们大量时间的特殊bindings。首先,其中有AndroidSchedulers,它能提供专门为Android线程系统提供...

2016-07-26 19:32:00 112

转载 理解RxJava:(三)RxJava的优点

理解RxJava:(三)RxJava的优点在第一部分,讲解了RxJava的基本结构。在第二部分,展示了operators的强大之处。但是你们可能仍然没有被说服,也没有足够的理由信服。下面是一些能让你信服的RxJava框架的优点。错误处理截至当前,我们一直都忽略onComplete()和onError()方法。它们标志着Observable停止发出items以及原因(不管是成功地完...

2016-07-25 17:07:00 511

转载 理解RxJava:(二)Operator,Operator

在第一部分,我讲解了RxJava的基本结构,也介绍了map()操作。然而,我能理解你仍旧不会选择使用Rxjava——你仍然还有很多东西没有学到。但是这个情况将很快得到改变。Rxjava一大部分的能力是因为其中的operators。让我们通过一个例子来向你们介绍更多的operators。初始假设我有一个这样的方法://返回一个基于文本查询网站链接的列表Observable<...

2016-07-24 09:32:00 108

转载 理解RxJava:(一)基础知识

理解RxJava:(一)基础知识本文翻译自Grokking RxJava, Part 1: The Basics,著作权归原作者danlew所有。译文由JohnTsai翻译。转载请注明出处,并保留此段声明。RxJava这些天成为了Android开发者关注的新热点。唯一的问题是它在你刚接触时难以理解。当你习惯了命令式编程,函数响应式编程就变得难以理解。但是一旦你理解了它,它就变得很棒了...

2016-07-22 16:08:00 111

转载 Android:如何从堆栈中还原ProGuard混淆后的代码

本文翻译自Android: How To Decode ProGuard’s Obfuscated Code From Stack Trace本篇文章是写给那些在他们的应用中使用ProGuard并且需要从堆栈信息中进行调试的Android开发者。这是一种非常简单就将混淆的错误信息转化为可读的方法。还原前以下是ProGuard混淆过的堆栈信息:Caused by: java.lan...

2016-07-19 14:53:00 350

转载 深入浅出经典面试题之——反转字符串

深入浅出经典面试题之——反转字符串前言如今无论大小公司,都喜欢出一些算法题来测试面试者的算法功底或者说是计算机功底。而如今Android和Java把很多方法都封装成API了,导致我们写代码往往只是调调API,没有深入了解过一些功能的底层算法实现。因此,研究算法一是能在面试中正确快速的解决算法题,而是能提高我们的编程功底,更好地编写出高效稳健的代码。今天,我们研究的是——反转字符串。...

2016-06-22 12:49:00 249

转载 30分钟入门Java8之默认方法和静态接口方法

30分钟入门Java8之默认方法和静态接口方法前言上一篇文章30分钟入门Java8之lambda表达式,我们学习了lambda表达式。现在继续Java8新语言特性的学习,今天,我们要学习的是默认方法和静态接口方法。这一Java8的新语言特性,在Android N中也得到了支持。至于如何在Android开发中配置Java8的开发环境,请查看上一篇文章30分钟入门Java8之lambd...

2016-06-19 14:35:00 68

转载 30分钟入门Java8之lambda表达式

前言Google在今年发布Android N开发者预览版,一并宣布开始支持Java 8。我们终于能在Android开发中使用到Java8的一些语言特性了。目前支持:默认方法lambda表达式多次注解今天我们就简要学习lambda表达式。配置开发环境首先需要下载安装JDK1.8。如果想在Android开发中使用lambda表达式,需要在Android Studio中配置...

2016-06-14 17:53:00 95

转载 和我一起学Effective Java之泛型

泛型不要在新代码中使用原始类型泛型(generic):声明中具有一个或多个类型参数原始类型(raw type):不带任何实际类型参数的泛型名称格式: 类或接口的名称 < 对应于泛型形式类型参数的实际参数 >如 List<String> 就是对应于List<E>的实际参数为String的参数化类型如与List<E>对应的原始类型...

2016-04-01 13:52:00 94

转载 和我一起学Effective Java之类和接口

类和接口使类和成员的可访问性最小信息隐藏(information hiding)/封装(encapsulation):隐藏模块内部数据和其他实现细节,通过API和其他模块通信,不知道其他模块的内部工作情况。原因:有效地解除各模块之间的耦合关系访问控制机制(access control):决定类,接口和成员的可访问性。由声明的位置和访问修饰符共同决定。对于顶层的类和接口,两种访问...

2016-03-22 00:15:00 101

转载 和我一起学Effective Java之创建和销毁对象

前言主要学习创建和销毁对象:1.何时以及如何创建对象2.何时以及如何避免创建对象3.如何确保它们能够适时地销毁4.如何管理对象销毁之前必须进行的清理动作正文一、用静态工厂方法代替构造器获取类的实例的常用方法有:1.公有的构造器2.公有的静态工厂方法下面通过Boolean类(基本类型boolean的包装类)的简单示例来学习://公有的构造器 public...

2016-03-15 23:47:00 72

转载 可能是最早的学习Android N新特性的文章

可能是最早的学习Android N新特性的文章Google在今天放出了Android N开发者预览版。Android N支持Nexus6及以上的设备。5太子Nexus5不再得到更新。Android N相比于Android 6.0增加了哪些新的功能呢,开发者要关心哪些API呢,通过本篇文章,将一一得到答案。Android N的新特性分屏多窗口(Multi-Window Supp...

2016-03-10 14:41:00 179

转载 Android进阶——深入浅出Handler(一)

Android进阶——深入浅出Handler(一)在学习Handler之前,首先要学习一些基本概念,这将对之后的学习有所帮助。主线程:Main Thread,又叫UI线程(UI Thread)。Android应用执行的线程,所以叫主线程。负责分发事件到合适的UI窗口,也是应用和Android UI套件交互的线程。所以叫UI线程。ANR:应用无响应(application not ...

2016-03-09 21:52:00 137

转载 Android开发——避免内存泄露

Android开发——避免内存泄露本文翻译自Avoiding memory leak——Post by Romain Guy著作权归原作者所有。转载请注明出处,由JohnTsai翻译Android应用被分配的堆的大小限制为16MB。这对于手机来说已经很多了,但对于一些开发者想获得的来说仍旧不够。即使你没有计划使用所有的这些内存。你应该尽可能的少用以避免其他应用在运行时因为内存不足...

2016-03-08 22:51:00 131

转载 手把手教你实现慕课网导航效果(二)——编码实现

手把手教你实现慕课网导航效果(二)——编码实现前言经过上一篇对慕课网导航效果的分析和验证,今天我们就来编码实现这一效果。还没有看过上一篇文章的同学,建议先看看手把手教你实现慕课网引导页效果(一)——分析验证。通过本篇文章,我们可以学习到:1.ViewPager+Fragment+FragmentPagerAdapter实现滑动导航页面2.VideoView(播放视频)的基本使...

2016-03-03 17:56:00 157

转载 手把手教你实现慕课网引导页效果(一)——分析验证

手把手教你实现慕课网引导页效果(一)前言相信程序员大多用过或者听过慕课网这个网站,今天我们要讲的是慕课网Android客户端引导页效果的模仿实现。首先,让我们看一下慕课网Android客户端的引导页是什么样的。正文1.分析看上面那个GIF图,分析可知。首先是一个显示慕课网LOGO的Activity,然后跳转到了今天我们要讲的引导效果的Activity(命名为GuideAct...

2016-03-02 22:59:00 99

转载 和我一起学《HTTP权威指南》——安全HTTP与HTTPS

安全HTTPHTTPS是最流行的HTTP安全形式。HTTPS方案的URL以https://开头使用HTTPS时,所有的HTTP请求和响应数据在发送到网络之前,都要进行加密。HTTPS在HTTP传输层下面提供了一个传输级的密码安全层(可使用SSL或TLS)数字加密对称密钥加密技术编码和解码使用的密钥值一样(密钥k)发送端和接收端共享相同的密钥k才能进行通信。缺点:发送...

2016-02-23 15:02:00 210

转载 和我一起学《HTTP权威指南》——客户端识别与cookie机制

客户端识别与cookie机制服务器需要区别是哪个客户端。个性化接触HTTP是匿名、无状态的请求/响应协议。Web站点希望:对客户端的用户有更多的了解追踪用户浏览页面的行为因此,产生了几种用户识别机制:包含用户身份信息的HTTP首部识别用户IP地址用户认证URL中嵌入识别信息HTTP首部User-Agent首部将用户所用浏览器的相关信息告知服务器。下...

2016-02-21 15:50:00 102

转载 和我一起学《HTTP权威指南》——Web服务器

Web服务器Web服务器会做些什么1.建立连接(接受或关闭一个客户端连接)2.接收请求(读取HTTP报文)3.处理请求(解释请求报文并采取行动)4.访问资源5.构建响应(创建带有正确首部的HTTP响应报文)6.发送响应7.记录事务处理过程(将已完成事务有关的内容记录在日志文件中)1.接受客户端连接处理新连接客户端请求TCP连接---->Web服务器建立连...

2016-02-19 17:13:00 117

转载 和我一起学《HTTP权威指南》——连接管理

连接管理1.TCP连接几乎所有的HTTP通信都是由TCP/IP承载的。浏览网页时客户端执行的操作:如浏览http://www.joes-hardware.com:80/power-tools.html浏览器收到这个URL时,会执行如下图的步骤。第1-3步会将服务器的IP地址和端口号从URL中分离出来第4步建立到Web服务器的TCP连接,在第5步通过这条连接发送一条请求报文...

2016-02-18 11:29:00 93

转载 《HTTP权威指南》学习笔记——HTTP报文

HTTP报文HTTP:互联网的信使HTTP报文:信使用来搬东西的包裹1.报文流HTTP报文:HTTP应用程序之间发送的数据块组成:元信息开头(文本形式,描述报文的内容和含义)+可选的数据部分。2.报文的组成部分三部分组成:起始行(描述报文)首部块(属性)主体部分(主体)报文的语法:两类:请求报文和响应报文请求报文格式:<method><...

2016-02-13 22:10:00 75

转载 《HTTP权威指南》学习笔记——URL和资源

URL与资源URL是互联网资源的标准化名称1.浏览互联网资源URL是浏览器寻找信息时所需的资源位置URI是一类更通用的资源标识符,URL是它的子集。URI的两个子集:URL和URNURL提供了一种统一的资源命名方式:URL方案(例如HTTP,FTP等)://服务器位置/路径2.URL的语法大部分URL方案的URL语法都建立在由9部分构成的通用格式上:<sch...

2016-02-05 14:17:00 125

转载 《HTTP权威指南》学习笔记——HTTP概述

1.HTTP——因特网的多媒体信使HTTP使用的是可靠的数据传输协议,能确保数据在传输过程中不会损坏或混乱。2.Web客户端和服务器Web服务器(HTTP服务器)根据客户端的请求返回服务端的数据。(动态/静态资源,有着不同的格式)2.1媒体类型HTTP给Web传输的对象使用MIME类型区分数据格式。MIME类型是一种文本标记。格式:主要的对象类型/特定的子类型HTM...

2016-02-04 22:42:00 100

转载 Android Material Design控件学习(三)——使用TextInputLayout实现酷市场登录效果

前言前两次,我们学习了Android Material Design控件学习(一)——TabLayout的用法Android Material Design控件学习(二)——NavigationView的学习和使用今天我们继续MD控件的学习和使用。在学习之前,我们先来看一下酷市场的登录效果。实现这种效果的正是我们今天的主角——TextInputLayout。学习不管学...

2016-02-03 23:30:00 118

转载 Android Material Design控件学习(二)——NavigationView的学习和使用

前言上次我们学习了TabLayout的用法,今天我们继续学习MaterialDesign(简称MD)控件——NavigationView。正如其名,NavigationView,导航View。一般我们用它和DrawerLayout实现抽屉式导航设计,效果如下图。学习文档地址:http://developer.android.com/reference/android/suppo...

2016-01-30 23:38:00 189

转载 Java编程思想学习笔记——枚举类型

前言关键字enum可以将一组具名的值有限集合创建一种为新的类型,而这些具名的值可以作为常规的程序组件使用。正文基本enum特性调用enum的values()方法可以遍历enum实例,values()方法返回enum实例数组,且数组中元素保持在enum声明时的顺序。public class TestEnum { public static void main(String...

2015-11-11 22:16:00 123

转载 Java编程思想学习笔记——注解

前言在Android开发的过程中,我们为了减少重复代码的编写,会使用类似ButterKnife,AndroidAnnotations这类依赖注解库。代码示例如下://不使用Button btn = (Button)findViewById(R.id.btn);//使用ButterKnife@Bind(R.id.btn)Button btn;//使用AndroidAnn...

2015-11-07 23:46:00 192

转载 图解HTTP学习笔记——确认访问用户身份的认证

前言认证功能能让Web页面只被有权限的人访问。而认证机制究竟是怎样一个原理呢?通过今天的学习能对这个有个大致的了解。正文什么是认证计算机无法判断对方的身份,需要客户端自报家门。服务端为确认客户端是否真的具有访问系统的权限,需要核对“登录者本人才知道的信息”、“登录者本人才会有的信息”HTTP使用的认证方式HTTP/1.1使用的认证方式如下所示。BASIC认证(基本...

2015-10-30 22:52:00 131

转载 图解HTTP学习笔记——简单的HTTP协议

简单的HTTP协议前言最近在学习Web开发的相关知识,发现《图解HTTP》这本书通俗易懂。所以花时间学习这本书,并记录下学习笔记。如上图,我们每天都在浏览网页,一般我们都是在浏览器地址栏输入要访问的网站的地址(如百度),按下回车,浏览器就显示了我们要访问的网站的网页。那么在我们敲下回车键的那一刻,究竟发生了什么呢。通过今天的学习,能大致了解其中原理,并简单学习HTTP协议。目...

2015-10-09 00:14:00 160

转载 Java编程思想学习笔记——类型信息

前言运行时类型信息(RTTI:Runtime Type Information)使得我们可以在程序运行时发现和使用类型信息。Java在运行时识别对象和类的信息的方式:(1)一种是RTTI,它假定我们在编译时已经知道了所有的类型。(2)另一种是反射机制,它允许我们在运行时发现和使用类的信息。为什么需要RTTI以使用了多态的类层次结构的例子举例:如上图,泛型是基类Shape,...

2015-10-06 13:40:00 106

转载 Java编程思想学习笔记——字符串

前言字符串操作是计算机程序设计中最常见的行为。不可变StringString对象是不可变的重载"+"与StringBuilderString对象是不可变的,可以给String对象加任意多得别名。String对象具有只读特性,所以指向它的任何引用都不可能改变它的值。String a = "a";String b = a;System.out.println("first:...

2015-09-19 10:18:00 77

转载 Android Material Design控件学习(一)——TabLayout的用法

前言Google官方在14年Google I/O上推出了全新的设计语言——Material Design。一并推出了一系列实现Material Design效果的控件库——Android Design Support Library。其中,有TabLayout, NavigationView,Floating labels for editing text,Floating Actio...

2015-08-15 09:40:00 218

转载 Java编程思想学习笔记——接口

1.抽象类和抽象方法抽象方法:不完整的,仅有声明而没有方法体。 abstract void f();抽象类:包含抽象方法的类。(若一个类包含一个或多个抽象方法,则该类必须限定为抽象的。)1.用抽象类直接创建对象是不安全的,因为这个抽象类是不完整的。编译器通过这种方式保证了抽象类的纯粹性。public abstract class Person { public a...

2015-07-22 23:13:00 68

转载 Java编程思想学习笔记——复用类

前言复用代码是Java众多引人注目的功能之一。达到复用代码的方法有:组合:新的类由现有类的对象所组成。(复用现有代码的功能,而非它的形式)继承:按照现有类的类型组建新类。(不改变现有类的形式,复用现有类的形式并在其中添加新代码)。面向对象程序设计的基石正文1.组合语法将对象引用置于新类中即可(非基本类型:在新类中放置引用,基本类型:直接添加就可以了)/** * 引擎...

2015-07-09 00:22:00 112

转载 Java编程思想学习笔记——类的访问权限

类的访问权限Java中,访问权限修饰词用于确定库中哪些类对于该库的使用者是可用的。public class Foo{}注意点:每个文件(编译单元)只能有一个public类。public类的名称必须完全和含有该编译单元的文件名相匹配,包括大小写。编译单元内没有public类也是可行的(不常这么用),在这种情况下,可以随意对文件命名。类既不可以是private的(除该类以...

2015-07-07 23:18:00 98

转载 Java编程思想学习笔记——访问权限修饰词

几种访问权限修饰词public,protected,private,friendly(Java中并无该修饰词,即包访问权限,不提供任何访问修饰词)使用时,放置在类中成员(域或方法)的定义之前的,仅仅控制它所修饰的特定定义的访问权。包访问权限是默认访问权限,没有任何关键字对于同一包中的所有其他类对这个成员都有访问权限,对于包之外的所有其他类,则没有访问权限。取得对某成员访问...

2015-07-04 13:05:00 91

空空如也

空空如也

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

TA关注的人

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