
Java 知识乱弹
文章平均质量分 93
李斯维
这个作者很懒,什么都没留下…
展开
-
这一文,关于 Java 泛型的点点滴滴 二 (extends、super、<?> 通配符、泛型与反射)
本文在上一篇的基础上,介绍了 extends 、super 、?等泛型中的通配符,并在最后介绍了使用泛型获取泛型信息,阅读本文大家会对 Java 泛型有一个更深的理解。原创 2024-07-28 11:37:24 · 1537 阅读 · 0 评论 -
这一文,关于 Java 泛型的点点滴滴 一(泛型基础、类型擦除)
泛型是 Java 中的非常重要的点,本文将对 Java 中的泛型进行全面的介绍,并使用代码示例演示 Java 泛型的使用方式。并特别介绍了 extends 、super 、?等泛型中的通配符,阅读本文大家会对 Java 泛型有一个更深的理解。原创 2024-07-27 22:59:45 · 1245 阅读 · 0 评论 -
一文掌握 Thread 类里的常用方法(yield、interrupted、join、daemon)
本文介绍了 Java 中的 Thread 中的一些常用方法,这些常用方法在多线程编程中极为重要。本文针对每个方法都用了不同的讲解方式,言简意赅,值得一看原创 2024-07-21 17:32:29 · 1128 阅读 · 0 评论 -
Java基础知识之 使用 Cleaner 替代 finalize
本文介绍了Object.finalize 方法,并详细说明了这个方法替代方案:Cleaner,并通过一个完整的例子,介绍了这个方法是如何进行 Java 对象的清理工作的。原创 2024-07-18 23:44:12 · 1164 阅读 · 0 评论 -
Java 基础知识之 依赖注入(Dependency Injection)
本文介绍了在 Java 开发中常用的 依赖注入 设计模式的基本概念,并演示了使用和不使用依赖注入时代码的区别及影响,详细说明了依赖注入的4种方式,最后介绍了几个常用的依赖注入框架。原创 2024-07-05 23:29:00 · 2962 阅读 · 0 评论 -
Java 基础知识之 switch 语句和 yield 关键字
本文讲解 Java 中 switch 关键字的用法,包括其传统用法和 Java 12 之后新添加的 switch 表达式,并演示了 yield 关键字。原创 2024-07-03 23:17:50 · 1326 阅读 · 2 评论 -
Java 基础知识之 深拷贝与浅拷贝(Cloneable接口、clone方法)
本文讲解 Java中深拷贝和浅拷贝的区别,并有示例演示其中区别。对于 Cloneable 接口和 clone 方法也进行了解释。原创 2024-07-02 09:29:34 · 1035 阅读 · 0 评论 -
一文掌握 Object 类里的所有方法(wait、notify、finalize)
本文讲解了 Object 里面的所有方法,包含常用的5个方法:getClass、hashCode、equals、clone、toString,除此之外本文重点讲解了 Object 中与线程相关的方法:wait、wait(long)、notify、notifyAll。对于线程的等待和唤醒进行了详细的讲解。最后介绍了 finalize 方法,介绍了该方法的使用方式和替代方案。原创 2024-06-29 13:25:47 · 1276 阅读 · 2 评论 -
制作自己的 @OnClick、@OnLongClick(告别 setOnClickListener,使用注解、反射和动态代理)
本文利用注解和反射的巧妙结合,在运行时进行事件和 View 的绑定,实现一个运行时的事件绑定注解框架。以 @OnClick 和 @OnLongClick 为例,读者跟着文章一步步将实现自己的运行时的事件绑定注解。原创 2024-06-15 13:37:29 · 1098 阅读 · 2 评论 -
代理模式与静态代理、动态代理的实现(Proxy.newProxyInstance、InvocationHandler)
代理模式是23种设计模式中比较常用的一种,属于结构型设计模式。在 Android 领域中,有大量的库都使用了代理模式,例如 Retrofit 使用动态代理来实现 API 接口的调用,Dagger 使用代码生成和反射机制来创建依赖注入的代理对象等等。本文将带你了解代理模式,并且介绍静态代理和动态代理的实现方式。原创 2024-06-12 15:34:59 · 1368 阅读 · 2 评论 -
Java Reflection 反射使用 完全指南
Java 中的反射大家都不陌生,有很多很好的文章都进行了讲解,但是很难找到一篇文章能完全解释反射的所有用法,特别是反射获取这个对象的注解的信息和泛型信息,往往都停留在了获取类的函数、方法,构造上。所以这篇文章将全面讲解 Java 反射中的所有用法,特别是对于类中的注解的获取上。另外,本文章不会对反射的原理进行讲解,看完本文你应该只能学会怎么用反射,至于其原理,本文不会涉及。原创 2024-06-12 15:26:43 · 1192 阅读 · 1 评论 -
制作自己的 ButterKnife(使用 AutoService 和 APT 注解处理器在编译期生成 Java 代码)
本文从原理的角度介绍了 ButterKnife 的方方面面。通过阅读此文,读者可以自己制作自己的 ButterKnife,并掌握诸如 APT、AutoService、SPI 等相关概念。原创 2024-06-04 21:05:55 · 774 阅读 · 3 评论 -
Java 和 C 中 测量代码耗时 最佳实践
测量代码耗时是在开发过程中不可避免会遇到的问题。本文讲解了在 Java 和 C 语言中常用的几种测试代码耗时的方法,简单易用,值得收藏。原创 2022-08-16 22:27:35 · 458 阅读 · 1 评论 -
对于 MVP 应用架构的理解及其优化改造
MVP 架构MVP架构由MVC发展而来。在MVP中,M代表Model,V代表View,P代表Presenter。Model 负责获取数据,数据的来源可以是网络或本地数据库等;View 负责界面数据的展示,与用户进行交互;Presenter 是Model与View之间的通信的桥梁,将Model与View分离开来,也是业务进行实现的地方;这三个层面之间的关系如下:我们先简单用一个简单...原创 2020-10-27 15:09:27 · 548 阅读 · 0 评论 -
由浅入深 带你了解 JAVA 注解
在学习注解之前,我首先来讲一讲学习注解的好处,不管下面看不看,先打个鸡血先。不过确定的是,在正常 JAVA 开发中,自己写注解是比较少的,更多的情况就是使用第三方库的注解,正因为如此,大多数开发者对于注解仅仅停留在会用的地步。试想一下,当大多数人都不会的时候你会,那么你是不是就超越的大部分人。原创 2017-06-06 00:02:59 · 461 阅读 · 1 评论 -
正则表达式的简单介绍
正则表达式是符合一定规则的表达式,专门用于操作字符串,用一些特定的符号来表示一些代码操作,这样简化书写。只需要书写简短的正则字符串就可以完成非常复杂的字符匹配操作。学习正则表达式最重要的就是学习如何写正则,而正则本身又是各种符号的组合体。所以学习正则表达式,就是在学习一些特殊符号的使用。原创 2017-04-17 23:21:15 · 511 阅读 · 0 评论