java
文章平均质量分 96
一行两行
他强由他强,清风拂山岗;他横由他横,明月照大江;他自狠来他自恶,我自一口真气足。
展开
-
Volatile关键字的理解
一、简介volatile是Java提供的一种轻量级的同步机制。Java语言包含两种内在的同步机制:同步块(或方法)和volatile变量,相比于synchronized(synchronized通常称为重量级锁),volatile更轻量级,因为它不会引起线程上下文的切换和调度。但是volatile变量的同步性较差(有时它更简单并且开销更低),而且其使用也更容易出错。二、并发编程的3...原创 2021-01-14 23:57:36 · 255 阅读 · 0 评论 -
聊聊Java的多线程.(未完待续)
既然我们今天要说说多线程,那么我们不得不介绍介绍Java中线程的概念:线程介绍概念:线程是Java中重要的组成部分之一:"程序"(Program)是保存在存储设备上的文件; "进程"(Process)是正在计算机中执行的程序; "线程"(Thread)是进程中某个单一顺序的控制流或者一条执行路径. 在主流操作系统中,如 Mac,Linux,WIndows中线程有时...原创 2021-01-14 23:57:07 · 168 阅读 · 0 评论 -
Android中消息处理机制研究
消息机制概述本文亦在分析Android中Handler机制源码中Java层和C++层之间的关系,Android应用程序的每一个线程在启动时,都可以首先在内部创建一个消息队列,然后再进入一个无限循环中,不断检查它的消息队列是否有新的消息需要处理,如果有新的消息需要处理,那么线程就会将它从消息队列中取出来,并且对它进行处理;否则线程就会进入睡眠等待状态,直到有新的消息需要处理为止,这样就可以通过消息来驱动Android应用程序的执行。原创 2017-01-02 13:46:06 · 2039 阅读 · 0 评论 -
RXJava详解
前言我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard 的 Android 项目也在使用 RxJava ,并且使用的场景越来越多 。而最近这几个月,我也发现国内越来越多的人开始提及 RxJava 。有人说『RxJava 真是太好用了』,有人说『RxJava 真是太难用了』,另外更多的人表示:我真的百度了也谷歌了,但我还是想问: R转载 2017-09-15 20:14:12 · 568 阅读 · 0 评论 -
Android插件化的一点点探索
一、什么是插件化 谈到插件化,很多人会想到热修复,热更新,组件化这些名词。最近有网友在热补丁介绍及Andfix的使用 看了这篇文章给我发私信问,想把Andfix集成在自身项目里面。因为阿里出品,而且比较火。其实我当时也有过这个考虑,后面真正深入后,发现其实还有很多坑,而且github上面也很久没有代码更新了。综合各种原因,后面放弃了。(这里并不是诋毁Andfix,因为我自己也投入很多精力去研究...原创 2018-04-18 15:29:49 · 719 阅读 · 0 评论 -
华为p20,弹dialog点击返回键弹框不消失 bug。
啥也不说了上代码public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentV...原创 2019-07-23 21:40:22 · 367 阅读 · 0 评论 -
Lottie使用介绍:(二版未完再续)
在工作中产品提出了这么一个一个动画需求,如下图:其实这个需求本来直接用属性动画就解决了,但是为了学学Lottie就强行用了一把。(然后最后的结果还是用了属性动画,因为Lottie的交互性不强,或者说我不太会用;感觉Lottie动画主要用来展示性的动画,交互功能比较多的动画个人还是喜欢用属性动画);1.导入lottie库://lottie框架compile'com.airbnb....原创 2019-07-17 20:59:45 · 1461 阅读 · 0 评论 -
JVM知识总结(未完再续)
先给大家上一张图,表示JVM中都讲了什么知识,接下来我们再一步步讲:一.JVM的结构:(再来一张图大家肯定都见过)类加载器将Class文件读取后,放到运行时数据区,然后执行引擎执行或调用本地接口、本地库。他就被存储在运行时数据区被使用;下面我们来分别讲讲运行时数据区的各部分结构:JVM内存模型主要分为两部分:线程共享内存(上图中绿色),线程私有内存(上图中黄色);1.我...原创 2021-01-14 23:59:15 · 306 阅读 · 0 评论 -
用java内部类实现多重继承
[java] view plain copypackage test; /** * class one: Class1 * @author TJ */ public class Class1 { /** * method: getName * @return name */转载 2016-07-28 21:37:58 · 2535 阅读 · 0 评论 -
Java集合类之再总结
1.集合类类图Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└Set ├HashSet ├TreeSet ├LinkedHashSetMap├Hashtable├HashMap├WeakHashMap└SortedMap └TreeMap2.分类介绍转载 2015-06-27 21:42:43 · 387 阅读 · 0 评论 -
java变量的初始化之后的默认值
转载:http://blog.csdn.net/abc5382334/article/details/18254517对于类的成员变量不管程序有没有显示的初始化,Java 虚拟机都会先自动给它初始化为默认值。1、整数类型(byte、short、int、long)的基本类型变量的默认值为0。2、单精度浮点型(float)的基本类型变量的默认值为0.0转载 2015-10-25 19:53:39 · 800 阅读 · 0 评论 -
java中public,private,protect,default区别
Java中访问修饰符public、private、protect、default范围版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://lvdairy.blogbus.com/logs/51747079.html 同一个类同一个包不同包的子类不同包的非子类Pri转载 2015-05-24 20:44:09 · 31949 阅读 · 0 评论 -
java中关于this与super那点事
在Java中,this通常指当前对象,super则指父类的。当你想要引用当前对象的某种东西,比如当前对象的某个方法,或当前对象的某个成员,你便可以利用this来实现这个目的,当然,this的另一个用途是调用当前对象的另一个构造函数,这些马上就要讨论。如果你想引用父类的某种东西,则非 super莫属。由于this与super有如此相似的一些特性和与生俱来的某种关系,所以我们在这一块儿来讨论,希望能帮转载 2015-07-27 15:50:17 · 542 阅读 · 0 评论 -
ByteBuffer.allocate()与ByteBuffer.allocateDirect()方法的区别。
在Java中当我们要对数据进行更底层的操作时,一般是操作数据的字节(byte)形式,这时经常会用到ByteBuffer这样一个类。ByteBuffer提供了两种静态实例方式: public static ByteBuffer allocate(int capacity) public static ByteBuffer allocateDirect(int capacit转载 2015-10-16 21:51:15 · 29525 阅读 · 5 评论 -
java.nio.ByteBuffer中flip、rewind、clear方法的区别
对缓冲区的读写操作首先要知道缓冲区的下限、上限和当前位置。下面这些变量的值对Buffer类中的某些操作有着至关重要的作用:limit:所有对Buffer读写操作都会以limit变量的值作为上限。position:代表对缓冲区进行读写时,当前游标的位置。capacity:代表缓冲区的最大容量(一般新建一个缓冲区的时候,limit的值和capacity的值默认是相等的)。flip、re转载 2015-10-16 21:04:35 · 650 阅读 · 0 评论 -
java使用多线程实现生产者消费者问题
本例中我们用模拟吃苹果来实现生产者消费者问题: 模拟吃苹果的实例 一个家庭有三个孩子,爸爸妈妈不断削苹果往盘子里面放,老大、老二、老三不断从盘子里面取苹果吃。盘子的大小有限,最多只能放5个苹果,并且爸妈不能同时往盘子里面放苹果,妈妈具有优先权。三个孩子取苹果时,盘子不能为空,三人不能同时取,老三优先权最高,老大最低。老大吃的最快,取的频率最高,老二次之 ,老三再次原创 2015-12-20 22:37:13 · 1701 阅读 · 0 评论 -
使用java递归实现文件及文件夹的复制
完成老师布置的作业,写了这么小小的一个例子,其实在这个例子中比较重要的也就是递归的使用,在做这个实验时,开始犯了错就是在递归上,在实现循环+递归时一定要记住方法中使用的变量的属性,是局部变量还是成员变量.测试类:package com.xiyou.file;import java.io.File;import java.io.FileInputStream;import java.原创 2015-12-20 22:18:14 · 2628 阅读 · 1 评论 -
java,android中的Math用法
java.math.Math类常用的常量和方法:Math.PI 记录的圆周率Math.E记录e的常量Math.abs 求绝对值Math.sin 正弦函数 Math.asin 反正弦函数Math.cos 余弦函数 Math.acos 反余弦函数Math.tan 正切函数 Math.atan 反正切函数 Math.atan2 商的反正切函数Math.toDeg转载 2015-06-23 09:31:56 · 425 阅读 · 0 评论 -
JAVA 对象引用,以及对象赋值
关键字: java对象 引用Java对象及其引用关于对象与引用之间的一些基本概念。 初学Java时,在很长一段时间里,总觉得基本概念很模糊。后来才知道,在许多Java书中,把对象和对象的引用混为一谈。可是,如果我分不清对象与对象引用, 那实在没法很好地理解下面的面向对象技术。把自己的一点认识写下来,或许能让初学Java的朋友们少走一点弯路。转载 2015-10-25 21:28:05 · 413 阅读 · 0 评论 -
java中public与private还有protect的区别
java中public与private还有protect的区别方法/步骤先从其作用范围说起:priavte只能在其自己的定义类中使用,也不能够在其子类中使用,而public可以在所有的类中使用。protect能够在自已的定义类以及其子类中使用。从这张图我们可以看到。在其的子类当中protect是可以用的,而privat原创 2015-05-23 17:58:02 · 2795 阅读 · 0 评论