自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java中Int、Integer、new Integer()之间的区别

Java中有八种基本数据类型,Int是其中之一。而Integer是Int的封装,即Integer其实是一个对象。可以通过new来创建一个Integer对象,也可以直接将Int值赋给Integer变量。它们之间的区别如下:一:IntInt是Java八种基本数据类型之一,一般大小为4字节32位,取值范围为2^-31—2^31。两个Int类型变量用“==”比较的是内容的大小。例如:int a...

2019-08-26 16:15:49 10191 4

原创 Android中进程的五个优先级介绍

一个进程的优先级跟它所包含的组件的状态相关。一:前台进程前台进程只要满足以下条件之一:(1)该进程有一个Activity正在跟用户交互,即该Activity实例处于活动栈顶。(2)该进程有一个BroadcastReceiver,并且正在调用它的onReceive()方法。(3)该进程有一个Service,该Service是一个前台服务。(4)该进程有一个Service,该S...

2019-08-26 14:54:16 1193

原创 Android性能优化方向和相关工具

开发一款性能优良的应用是每一个Android开发者都必须经历的挑战。在移动端资源有限的前提下,提高应用的性能显得尤为重要。常见的提高APP性能的优化方向有三个:布局和渲染优化、内存优化、功耗优化。一:布局优化所谓布局优化,就是尽量减少布局的嵌套层级,减少无用的布局。主要的优化方法有:(1)优先使用RelativeLayout来减少布局嵌套层数,否则尽量使用LinearLayout...

2019-08-25 22:20:43 486 1

原创 Android中Service的onStartCommand()方法返回值和参数含义

当通过startService(intent)方法启动一个Service时,会调用Service的onStartCommand()方法。该方法有3个参数:intent、flags、startId。有4个返回值:START_STICKY、START_NOT_STICKY、START_REDELIVER_INTENT、START_STICKY_COMPATIBILITY。一 返回值含义1...

2019-08-25 13:43:32 2310

原创 Java关于Try-Catch-Finally的执行顺序和Return值问题总结

一:执行顺序问题1.当三个代码块都有代码时:(1)首先执行Try代码块,如果Try代码块顺利执行,就直接执行Finally代码块。(2)首先执行Try代码块,如果Try代码块发生异常,就会执行Catch代码块,最后执行Finally代码块。2.当只有Try和Finally代码块时:(1)首先执行Try代码块,如果Try代码块顺利执行,就直接执行Finally代码块。...

2019-08-23 22:49:03 350

原创 Android事件分发机制流程解析

一:什么是事件分发所谓事件分发,就是将一次完整的点击所包含的点击事件传递到某个具体的View或ViewGroup,让该View或该ViewGroup处理它(消费它)。分发是从上往下依次传递的,其中可能经过的对象有最上层Activity,中间层ViewGroup,最下层View。例如在屏幕中有一个Button控件,点击它时该次点击事件就会从Activity传到Button所在的ViewGroup...

2019-08-23 19:47:58 2846 2

原创 Android之View的绘制流程解析

一:绘制大致流程一个APP由许多Activity组成,每个Activity都对应一个界面呈现给用户,而每一个界面都是由各种View和ViewGroup组成,总体结构是一个树形结构,如图所示:在上图中,DecorView是所有视图的根视图,也就是最顶层布局,它是一个ViewGroup。每个Activity的View绘制流程都是先从DecorView的绘制开始,然后依次递归绘制它的子Vie...

2019-08-22 21:12:04 206

原创 Java之Set、List、Map内容整理

一:SetSet接口继承自Collection,存储的数据无序,不可重复。Set有三个常用实现类:HashSet、TreeSet、LinkedHashSet。三个实现类都是线程不安全的。(1) HashSet:一般单纯用来存储无序且无重复的数据。底层基于HashMap,所以底层数据结构是数组+链表,和HashMap一样通过hashcode()、equals()方法保证数据无重复。(2)...

2019-08-18 21:33:53 116

原创 Java中final、finally、finalize的定义和区别

这三兄弟内容上并没有交集,但是因为长的像,所以常常被放在一起比较。。。。一:finalfinal是一个关键字,用来声明类、变量和方法。final具有终止的含义。当用final修饰一个类时,这个类就无法再被继承了,也就是说这个类就到此为止了,它不会再有子类了。当用final修饰一个变量时,那么这个变量就变成了一个常量,不允许再被重新赋值,所以一个final修饰的变量通常在声明时...

2019-08-16 23:21:59 296 1

原创 Java中四种引用:强引用、软引用、弱引用、虚引用

在Java1.2版本以后,引用被分成了四种类型:1.强引用。2.软引用。3.弱引用。4.虚引用。四种引用强度依次减弱。一:强引用具有强引用的对象是必需的对象,比如:Class a = new Class()。这里引用变量a就是一个强引用。当一个对象具有强引用时,垃圾回收器不会去回收它,除非这个对象没有再被引用了。当内存空间不足时,Java虚拟机宁愿抛出OutOfMemoryError...

2019-08-16 22:33:01 210

原创 Java内存中的新生代、老年代、永久代相关内容

注:新生代和老年代都是Java堆中的内存空间,划分方法跟存储对象的生命周期有关。永久代是方法区中的。一:新生代新生代是堆中的一块内存空间,大约占据堆内存的1/3,用来存放新创建的对象,对象生命周期较短。在新生代中进行内存回收时采用的是复制算法(参考GC篇),具体如下:1。新生代中的内存分为三个区:Eden区、SurvivorFrom区、SurvivorTo区,三个区的内存大小比为8:1...

2019-08-16 21:57:57 1237

原创 Java之GC(垃圾收集)相关内容整理

在Java语言中,内存这一块的内容一般是由虚拟机来管理的,开发者无需自己手动操作管理。所以像GC垃圾收集之类的操作都是由虚拟机自动执行的。什么是GC(Garbage Collection)?为什么要进行GC操作?GC收集的垃圾其实就是内存,当某块内存存储的对象不再被使用时,就有必要回收这块内存,否则将会导致内存泄漏(无用资源没有被回收),进而导致内存溢出(内存不够用)。关于GC需要了...

2019-08-16 21:14:16 230

原创 Java设计模式之Builder模式

Builder模式的定义很抽象:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。(不管它,直接看应用)Builder模式在Android开发中的应用:通过创建静态内部类Builder的方式来给外部类初始化赋值,增加代码的可读性。一、例子:假如有一个Person类,代码如下:public class Person{ private ...

2019-08-12 21:31:16 301

原创 Java中静态内部类和非静态内部类的区别

在一个类中定义的类叫内部类,内部类可以为静态内部类(用static关键字修饰),也可以为非静态内部类(普通类)。区别一: 静态内部类可以有静态成员变量和方法,非静态内部类只能有非静态的成员变量和方法。也就是说,在内部类中如果要定义静态成员,则该内部类一定要用static关键字声明为静态的。(跟抽象类类似,如果要在类中定义抽象方法,则该类一定要声明为抽象类)。区别二:...

2019-08-12 20:34:01 1689

原创 Java设计模式之单例模式

单例模式:保证一个类在整个应用中只有一个实例,该类自动创建实例并提供方法供整个系统调用。优缺点:对于需要消耗许多资源的类,只创建一个实例能够有效提高性能。单例类很难扩展,并且职责过重。如何做到单例模式:1.防止外部调用构造函数实例化,所以构造函数声明为Private。2.定义一个静态方法供外部调用实例。3.由类本身进行实例化操作。4.注意线程安全。单例模式的五种常见写法:一、...

2019-08-09 21:39:15 246

原创 Android系统四层体系架构

Android体系架构分为四层:应用层、应用框架层、库层、内核层。(盗用一张图)一、应用层应用层包括手机上的所有APP,无论是系统自带的还是用户开发的。他们都是基于第二层应用框架层开发的。二、应用框架层Android开发人员接触最多的就是框架层,该层提供了各种各样的系统API,开发人员通过使用这些API来构建上一层的各种各样的APP。这些API包括且不限于:Acti...

2019-08-09 20:00:48 18218

信息安全原理

信息安全方面的文件,主要讲述ARP攻击的原理以及实现过程

2018-04-02

空空如也

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

TA关注的人

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