java
文章平均质量分 55
Javakotlin
矜持的写作
展开
-
Java闭包问题探究
浪费时间是一桩大罪过。——卢梭闭包的概念闭包(Closure)是一种能被调用的对象,它保存了创建它的作用域的信息。 JAVA并不能显式地支持闭包,但是在JAVA中,闭包可以通过“接口+内部类”来实现。java8中出现了lamada表达式的方式来实现闭包。Java闭包的作用传递函数行为;简化访问流程,方便属性访问;形成封闭的执行作用域;可以实现java的伪多继承;Java闭包的使用问题java闭包在初始化时一般都是使用匿名的方式创建。类似如下代码:setOnClickListe..原创 2021-12-03 20:43:16 · 2016 阅读 · 0 评论 -
Android页面劫持问题整理
什么是Activity劫持APP正常的Activity界面被恶意攻击者替换上仿冒的恶意Activity界面进行攻击和非法用途。界面劫持攻击通常难被识别出来,其造成的后果不仅会给用户带来严重损失,更是移动应用开发者们的恶梦。举个例子来说,当用户打开安卓手机上的某一应用,进入到登陆页面,这时,恶意软件侦测到用户的这一动作,立即弹出一个与该应用界面相同的Activity,覆盖掉了合法的Activity,用户几乎无法察觉,该用户接下来输入用户名和密码的操作其实是在恶意软件的Activity上进行的,最终会发生什.原创 2020-05-26 11:20:38 · 1728 阅读 · 0 评论 -
通过Java反射机制获取对象实例属性值
在java的世界中,java有类这一个概念,java对象是java类的一个实例,这里就不画uml图了,这都是很简单的概念。那么问题来了,类的是谁的对象实例呢?从其他的语言上,我们或多或少回听说,一切皆是组件啊,一切皆是对象之类的话,java也是以面向对象为核心理论的语言,那么类作为对象的实例化,我们可以大胆的想象下,类又是谁的实例化呢?大家先不要反驳我,我们就类比推理下。其实,在java的世界...原创 2020-03-17 17:02:56 · 2980 阅读 · 4 评论 -
Java警惕自增操作的陷阱
浪费时间是一桩大罪过。——卢梭java自增自减方法的使用导致的问题。public class Test{Private static int count;Public static void main(String[]args){ for(int i=0;i<10;i++){ count = count++;//或者count = count—; } System....原创 2019-12-19 17:51:16 · 188 阅读 · 0 评论 -
volatile解决Java指令重排的问题
决定一个人的一生,以及整个命运的,只是一瞬之间。——歌德什么是指令重排呢?指令重排是指在程序执行过程中, 为了性能考虑, 编译器和CPU可能会对指令重新排序.int a = 1;//第一步int b = a;//第二步int c = 4;//第三步这段代码第一步和第二步是不会被重排的。但是,第三步是可能会被重排的。重排后的代码如下:int c = 4;int a = 1;...原创 2019-12-12 16:52:14 · 505 阅读 · 0 评论 -
volatile解决Java内存可见性问题
在java的世界中存在的各种各样的关键字,就像其他的语言一样,这些关键字组成了这个丰富的java的世界。有很多关键字大家是比较的熟悉的,但是还有一些关键字,连作者自己都没有遇到过或者是遇到过也没有使用过。今天我们就来聊聊”volatile”.java开发中有内存这个概念,我想大家没有不知道的吧,代码在虚拟机中执行是需要将code读到内存中的。一个人的世界如果这块儿内存空间是单个“人”用...原创 2019-12-12 16:37:56 · 313 阅读 · 0 评论