自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(102)
  • 资源 (1)
  • 收藏
  • 关注

原创 Java泛型编程

为什么要使用泛型 这是因为通过泛型可以定义类型安全的数据结构(类型安全),而无须使用实际的数据类型(可扩展)。这能够显著提高性能并得到更高质量的代码(高性能),因为您可以重用数据处理算法,而无须复制类型特定的代码(可重用)。在概念上,泛型类似于 C++ 模板,但是在实现和功能方面存在明显差异。 泛型的基本应用泛型可以解决数据类型的安全性问题,其主要原理是在类声明时通过一个标识表示类中某个属性的

2017-09-20 12:36:38 267

原创 Java多线程看我这一篇就足够了

通过本篇的学习你可以掌握以下内容:了解进程与线程的区别。掌握Java多线程的两种实现方式及区别。了解线程的状态变化。了解多线程的主要操作方法 。了解同步及死锁的概念。了解线程的生命周期。进程与线程进程是程序的一次动态执行过程,它需要经历从代码加载,代码执行到执行完毕的一个完整的过程,这个过程也是进程本身从产生,发展到最终消亡的过程。多进程操作系统能同时达运行多个进程(程序),由于CPU

2017-09-18 22:26:52 5107 10

原创 Java常用类库知识要点总结

在一个字符串内容需要频繁修改时,使用StringBuffer可以提升操作性能,因为StringBuffer内容可以改变,而String内容不可以改变。StringBuffer类中提供了大量的字符串操作方法,如增加,替换,插入等。Runtime表示运行时,在一个JVM中只存在一个Runtime,所以如果想要得到Runtime类的对象,直接使用Runtime类中提供的静态方法getRuntime()

2017-09-18 20:18:04 754

原创 Java泛型知识要点

*泛型可以使程序的操作更加安全,可以避免发生类型转换异常。*在程序中如果使用类时没有指定泛型,则泛型将被擦除掉,将使用Object接收参数。*可以使用通配符“?”接收全部泛型对象。*通过可以设置泛型的上限,通过可以设置泛型的下限。*泛型方法可以定义在泛型类中,也可以定义在普通类中。*泛型可以在接口中定义,实现泛型接

2017-09-18 19:36:01 495

原创 Java多线程知识要点

线程(Thread)是指程序的运行流程。多线程机制可以同时运行多个程序块,使程序运行的效率更高,也解决了传统程序设计语言无法解决的问题。如果要在类中激活线程,必须先做好下面两项准备: (1)此类必须是扩展自Thread类或实现Runnable接口,使自己成为它的子类。 (2)线程的处理必须编写在run()方法内。run()方法是定义在Thread类中的一种方法,因此把线程的的程序代码编写在r

2017-09-18 18:12:26 527

原创 使用动画的注意事项

OOM问题 这个问题主要出现在帧动画中,当图片数量较多且图片较大时就就极易出现OOM,这个在实际的开发中要尤其注意,尽量避免使用动画。内存泄漏 在属性动画中有一类无限循环的动画,这类动画需要在Activity退出时及时停止,否则将导致Activity无法释放从而造成内存泄漏,通过验证后发现View动画并不存在此问题。兼容性问题 动画在3.0以下的系统上有兼容性问题,在某些特殊场景可能无法正

2017-09-17 18:26:19 646

原创 解析异步消息处理机制

Android中的异步消息处理主要由4个部分组成:Message,Handler,MessageQueue和Looper。下面我就对这4个部分进行一下简要的介绍。Message Message 是在线程之间传递的消息,它可以在内部携带少量的信息,用于在不同线程之间交换数据。message可以携带what字段,arg1和arg2字段来携带一些整形数据,使用obj字段携带一个object对象。H

2017-09-15 10:46:29 522

原创 Android多线程编程

线程的基本用法 定义一个线程只需要新建一个类继承自Thread,然后重写父类的run()方法,并在里面编写耗时逻辑即可,如下所示:class MyThread extends Thread{@Overridepublic void run() {//处理具体的逻辑 }}那么该如何启动这个线程呢? 其实也很简单,只需要new出MyThread的实例,然后调用它的start()方法,这

2017-09-15 09:53:40 277

原创 webview的基本使用

webviewtest完成一个简单的网络加载,只需要以下三步:新建一个WebviewTest项目,修改activity_main.xml中的代码如下所示:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" androi

2017-09-15 08:23:19 375

原创 使用LitePal操作数据库

litepaltest使用LitePal操作数据库要使用LitePal的第一步,就是编辑app/build.gradle文件,在dependencies闭包中添加如下内容:compile ‘org.litepal.android:core:1.3.2’    这样我们就把LitePal成功引入到当前项目中了,接下来就是要配置litepal.xml文件。右击app/src/main目录下新建一个as

2017-09-14 22:35:56 387

原创 Activity的最佳实践

在这里我准备教你几种关于活动的最佳实践技巧知晓当前是在哪一个活动随时随地退出程序启动活动的最佳写法最佳实践源代码这个技巧将会教你如何根据当前的界面就能判断出这是哪一个活动。我们首先在ActivityTest项目上修改,首先需要新建一个BaseActivity类,代码如下:public class BaseActivity extends AppCompatActivity { @O

2017-09-14 20:39:58 492

原创 View的绘制流程

Measure过程对于测量我们来说几个知识点,了解这几个知识点,之后的实例分析你才看得懂。1、MeasureSpec 的理解对于View的测量,肯定会和MeasureSpec接触,MeasureSpec是两个单词组成,翻译过来“测量规格”或者“测量参数”,很多博客包括官方文档对他的说明基本都是“一个MeasureSpec封装了从父容器传递给子容器的布局要求”,这个MeasureSpec...

2017-09-11 19:56:20 2660 2

原创 Android事件分发机制

在Android开发中,事件分发机制是一块Android比较重要的知识体系,了解并熟悉整套的分发机制有助于更好的分析各种点击滑动失效问题,更好去扩展控件的事件功能和开发自定义控件,同时事件分发机制也是Android面试必问考点之一,如果你能把下面的一些事件分发图当场画出来肯定加分不少。废话不多说,总结一句:事件分发机制很重要。Android 事件分发流关于Android 事件分发机制网上的...

2017-09-11 19:51:39 430

转载 Glide的基本用法

一:简介在泰国举行的谷歌开发者论坛上,谷歌为我们介绍了一个名叫 Glide 的图片加载库,作者是bumptech。这个库被广泛的运用在google的开源项目中,包括2014年google I/O大会上发布的官方app。 https://github.com/bumptech/glide二:使用  123

2017-09-09 19:09:31 719

原创 EventBus和RxBus基本原理

在介绍两者的基本原理之前,我们首先应该了解一个完美的事件总线应该具备哪些功能?1.容易订阅事件:事件订阅者只要声明自己就好了,当事件发生时自然会被调到。订阅和取消可以方便绑定到Activity和Fragment的生命周期上。2.容易发送事件:事件发送者直接发送就好了,其他的事都不管。3.方便的切换线程:有些事必须主线程干,有些事必须非主线程干,所以这个还是要说清楚。4.性能:随着应用的成长,总线可能

2017-09-09 19:00:59 1167

原创 Rxjava2基本原理

首先要想在Android中使用RxJava2, 先添加Gradle配置: compile 'io.reactivex.rxjava2:rxjava:2.0.1' compile 'io.reactivex.rxjava2:rxandroid:2.0.1'在开始学习之前,先来介绍点原理性的东西。网上也有很多介绍RxJava原理的文章,通常这些文章都从观察者模式开始,先讲观察者,被观察者,订阅关

2017-09-09 18:46:32 1467

原创 快速上手kotlin

首先先了解一下什么是kotiln? Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。 Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。 JetBrains,作为目前广受欢迎的Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。 Kotlin已正式成

2017-09-09 17:59:07 725

原创 Android开发之Git基础操作

创建代码仓库 git config –global user.name”名字” git config –global user.email”名字@gmail.com”配置完成后,你就可以使用同样的命令来查看是否配置成功,只需要将最后的名字和邮箱地址去掉即可。接着到指定项目文件夹中创建本地代码仓库 git init仓库创建完成后就会在项目的根目录下生成一个隐藏的.git文件夹,这个文件夹用来记录

2017-09-09 10:00:33 220

原创 Android开发之JSON全解析

一、什么是JSON?JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度。JSON就是一串字符串 只不过元素会使用特定的符号标注。{} 双括号表示对象[] 中括号表示数组"" 双引号内是属性或值: 冒号表示后者是前者的值(这个值可以是字符串、数字、也可以是另一个数组或对象)

2017-08-28 22:36:01 306

原创 设计模式之MVC模式

本篇文章包含以下内容:MVC的介绍 MVC的实践MVC的介绍MVC (Model View Controller),是模型(model)视图(view)控制器(controller)的缩写,一种软件设计模式,用于组织代码用一种功能模块和数据模块分离的方法Model:模型层,负责处理数据的加载或者存储 View:视图层,负责界面数据的展示,与用户进行交互 Controll...

2017-08-28 17:12:54 340

原创 设计模式之MVP模式

本篇文章包含一下内容:MVP的介绍 MVP的实践MVP的介绍MVP模式(Model View Presenter)可以说是MVC模式(Model View Controller)在Android开发上的一种变种、进化模式Model:数据层,负责处理数据的加载或者存储 View:视图层,负责界面数据的展示,与用户进行交互 Presenter:中间者,绑定Model层和Vi...

2017-08-28 17:06:22 403

原创 一款非常适合新手练习的开源项目

###这是一款非常适合新手练习的开源项目,里面包含了的android开发的一些常用的技术点,例如Log的封装,Bmob后端云技术,Rxvolley网络框架,picasso多图异步加载,zxing二维码库等等###先来展示一波效果图吧     ####在此万分感谢以下开源库的作者  compile 'com.android.su

2017-08-28 11:15:33 5455

ACM算法大神讲解常用数据结构与算法优化(java版与c++版)

基本上一流的互联网公司面试都必考数据结构与算法,此资源不仅介绍了基本的数据结构与算法,更是把优化思想讲解的淋漓尽致,是你巩固基础和进阶的不二之选!

2017-08-26

空空如也

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

TA关注的人

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