自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java提供的四种引用类型:强引用、软引用、弱引用、虚引用

目的:第一 是可以让程序员通过代码的方式决定某些对象的生命周期。第二 是有利于JVM进行垃圾回收。1、强引用当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不回收这种对象。如果想中断强引用和某个对象之间的关联,可以显示地将引用赋值为null,这样一来的话,JVM在合适的时间就会回收该对象。比如ArraryList类的clear方法中就是通过将引用赋值为null来实现清理工作的此处是ArrayList的clear方法截图在ArrayList类中定义了

2021-12-20 15:19:35 91

原创 Java HashCode()和Equals()

1、equals() 与 ==1.1、equals方法对于字符串来说是比较内容的,而对于非字符串来说是比较,其指向的对象是否相同的。通过判断两个对象的地址是否相等(即,是否是同一个对象)来区分它们是否相等。如果在类中被覆盖了equals方法,就可以用来比较内容的。1.2、如果是基本类型比较,那么只能用==来比较,不能用equals,equals()定义在JDK的Object.java中。1.3、对于基本类型的包装类型,是重写了equals方法的,所以比较的也是内容2、HashCode()hashC

2021-12-14 14:32:18 483

原创 JAVA虚拟机内存和GC

JAVA虚拟机内存和GC一、Java中的堆和栈堆和栈都是内存中的一部分,一个程序需要在这片区域上分配内存。众所周知,所有的Java程序都运行在JVM虚拟机内部,我们这里介绍的自然是JVM(虚拟)内存中的堆和栈。1、堆和栈的区别1.1、栈内存用来存储局部变量和方法调用。1.2、堆内存用来存储Java中的对象。无论是成员变量,局部变量,还是类变量,它们指向的对象都存储在堆内存中。2、独有还是共享栈内存归属于单个线程,每个线程都会有一个栈内存,其存储的变量只能在其所属线程中可见,即栈内存可以理解成线

2021-12-10 17:28:07 370

原创 Java多线程之线程通信生产者消费者模式及等待唤醒机制代码详解

前言前面的例子都是多个线程在做相同的操作,比如4个线程都对共享数据做tickets–操作。大多情况下,程序中需要不同的线程做不同的事,比如一个线程对共享变量做tickets++操作,另一个线程对共享变量做tickets–操作,这就是大名鼎鼎的生产者和消费者模式。正文一,生产者-消费者模式也是多线程生产者和消费者模式也是多线程的范例。所以其编程需要遵循多线程的规矩。首先,既然是多线程,就必...

2019-12-27 17:22:03 88

原创 Android组件之ContentProvider

一、URI与Uri大家可能经常会看到在开发时,怎么有的时候是URI,有的时候是Uri,这是怎么回事?名称如此相像的两个类是有什么区别和联系?1.所属的包不同。URI位置在java.net.URI,显然是Java提供的一个类。而Uri位置在android.net.Uri,是由Android提供的一个类。所以初步可以判断,Uri是URI的“扩展”以适应Android系统的需要。 2.作用的不...

2019-12-27 17:21:00 148

原创 Android组件之Activity

ActivityActivity的生命周期Activity的简单生命周期流程为onCreate();→onStart();【注:此时Activity处于不可见状态】→onResume();【注:此时Activity处于运行状态】→onPause();【注:此时Activity处于暂停状态】→onStop();【注:此时Activity处于停滞状态】→onDestroy();【注:调用了此方法...

2019-12-25 13:32:44 144

转载 Android组件之BroadcastReceiver

Android组件之BroadcastReceiverBroadcastReceiver介绍广播的种类标准广播(Normal Broa...

2019-12-25 13:31:47 87

原创 startService和bindService的区别,生命周期以及使用场景

Service 生命同期Service 生命同期startService 和bindService 区别startService: onCreate -> onStartCommand -> onDestory ,在多次调用startService的时候,onCreate不重复执行,但是onStartCommand会执行。startService调用了这后,会一直存在...

2019-11-28 20:55:07 1099

转载 Activity与Service的那些事

 原链接:[ https://www.2cto.com/kf/201605/504902.html ] 服务作为Android的四大组件之一,它并不像Activity那样高调(使用频繁),它就是那个默默无闻的工作者。由于不怎么用到,所以关于它的使用很容易忘记,现在有空就将它记录下来,方便后期查看。服务(Service)是Android中实现程序后台运行的解决方案,它...

2019-11-28 20:45:57 180

转载 Service的生命周期

原作者:在一颗大大大榕树下原链接:[ https://www.jianshu.com/p/902aa6a8f604 ]概念:Android四大组件之一,没有可视化界面,是一个运行于后台的服务程序。目录Service和线程的区别和场景管理Service的生命周期service和IntentService有什么区别启动服务绑定服务先后次序问题远程服务AIDLBinder...

2019-11-28 19:57:55 216

转载 Service和IntentService,Service和Activity之间通信

转载链接:https://blog.csdn.net/yu540135101/article/details/82737174Service/*** Android四大组件之一,Service 是长期运行在后台的应用程序组件。* Service 不是进程,也不是线程,它和应用程序在同一个进程中* Service中不能做耗时操作,运行在主线程中。*/12345Service应...

2019-11-28 16:32:03 182

转载 Service应用场景分析

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/qq_36299025/article/details/90812978————————————————众所周知,Service会根据不同的启动方式,会有不同的生命周期的回调。startService和bindService的区别就是该...

2019-11-28 16:11:31 464

转载 Android面试题集锦(2019最新总结)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声...

2019-11-28 15:47:08 242

转载 Android 面试精华题目总结

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/24015867下面的题目都是楼主在android交流群大家面试时遇到的,如果大家有好的题目或者好的见解欢迎分享,楼主将长期维护此帖。1、请解释下在单线程模型中Message,Handl...

2019-11-28 15:36:45 111

空空如也

空空如也

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

TA关注的人

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