
JAVA
文章平均质量分 88
经过5年的开发阶段,再次重温java语言之美,并对其进行深刻的总结;
学术袁
水晶帘外娟娟月,梨花枝上层层雪。花月两模糊,隔窗看欲无。
月华今夜黑,全见梨花白。花也笑姮娥,让她春色多。
展开
-
Java链表|头指针和虚拟头结点的区别
Java语言单向链表环境下,头指针和虚拟头结点在使用上有何区别?头指针指向空(即Node head = null),不存在的节点,此时链表为空;虚拟头节点是实际存在的,只不过它存放的元素是空,指向的下一个节点也是空。一旦设立了虚拟头节点,整个链表中所有的节点都会有1个前驱节点,这样一来,我们在任意位置执行增、删、改、查都将变得简单且操作统一。如果没有设置虚拟头结点而是使用头指针,则须要if-else逻辑判空的操作。.........原创 2022-07-07 20:08:44 · 1271 阅读 · 0 评论 -
架构演进|研究mvp到mvvm(传统架构mvvm和Jetpack下的区别)
探究MVP、MVVM架构实现方案,MVP如何向MVVM演进。以及在传统MVVM实现基础上如何实现的etpack组件下的MVVM架构。此架构相比传统架构又有何优缺点。Jetpack下的新架构,使用组件LiveData、ViewModel可关联宿主生命周期(有效避免空指针)。使用ViewModel组件,又能有效防止页面数据由于内存不足等非正常原因导致的数据丢失。若同时基于Databinding,此时Activity和Fragment只关注UI逻辑和用户的交互即可,数据绑定则交给Databinding!.....原创 2022-06-16 20:52:09 · 896 阅读 · 2 评论 -
字节码插桩(javassist)之插入代码块|IOC框架(Hilt)之对象注入~研究
字节码插桩(javassist)之插入代码块|IOC框架(Hilt)之对象注入新版本AS下报错:Error resolving plugin [id: 'com.android.application', version: '7.2.0', apply: false]> Plugin request for plugin already on the classpath must not include a version......原创 2022-05-21 18:10:07 · 814 阅读 · 0 评论 -
"&" 和 "&&" 以及 "|" 和 "||"的区别
与(&,&&)和或(|,||)的区别 使用与操作的时候,要求前后几个表达式的内容都是true,最终结果才是true,如果有一个是false,则最终结果就是false; 使用或操作的时候,要求前后几个表达式只要有一个true,则最终结果就是true,如果全都是false,则最终结果才是false;原创 2014-03-20 14:44:03 · 14815 阅读 · 1 评论 -
foreach使用方法 和 枚举使用方法
foreach使用方法 和 枚举使用方法foreach:这种循环方法的基本语法如下:for(type variable : 数组或者集合){ ..... ........}为了更方便理解,写一段代码:List names=new ArrayList();names.add("josn");names.add("tom");names.add("原创 2014-03-26 18:50:50 · 3894 阅读 · 0 评论 -
Java-唠下《泛型》
JDK5版本中引入了泛型的概念。目的是提高程序的健壮性,将可能会出现在运行时的错误暴露在编译时。例如,我们经常遇到的错误:ClassCastException.定义泛型,当顿悟之后,也很简单。但是想要有更熟练的程度熟读下源码,还是很不错的;使用泛型需要注意的地方:实例类共享在程序运行时,泛型类是被所有这种类的实例所共享的。因为实际上在编译后的字节码类中,泛型会被擦除...原创 2018-03-19 12:56:01 · 273 阅读 · 0 评论 -
Java-唠下《内部类》
在一个类的内部定义的类称之为内部类;内部类允许将一些逻辑相关的类组织在一起,并控制内部类代码的可视性。要点事项注意实例内部类自动持有当前实例的引用。详细见 代码块-A在实例内部类中不能定义静态成员,而只能定义实例成员。详细见 代码块-B静态内部类的实例不会自动持有外部类的特定实例的引用。详细见 代码块-C局部内部类定义在一个方法中,可见范围只限当前方法且不能使用访问...原创 2018-03-14 11:10:53 · 377 阅读 · 0 评论 -
Java-唠下《继承》
继承是复用程序代码的有力手段。它有两个重要的概念:方法重载和方法覆盖。 继承关系最大的弱点就是——打破封装;而组合关系与之相比,她的优势是不会破坏封装。但是组合关系却会比继承关系要创建更多的对象。方法重载(Overload)要点重载的行为发生在同一个类中。方法名相同。方法的参数类型、个数、顺序(前提是参数签名不相同)至少有一项不同。方法的返回类型可以不同。(不是重...原创 2018-03-14 15:25:43 · 296 阅读 · 0 评论 -
Java-唠下《生命周期》
Java 虚拟机为 Java 程序提供运行时环境,其中一项重要的任务就是管理类和对象的生命周期。 类的生命周期从类被加载、连接和初始化开始,到类被卸载时结束;而类对象的生命周期进入开始阶段,Java虚拟机要为对象分配内存,并初始化她的实例变量。当程序不在使用该对象时,她的内存可以被Java虚拟机的垃圾回收器回收,此时对象就会结束自己的生命周期。public class Ja...原创 2018-03-14 17:23:38 · 282 阅读 · 0 评论