JVM-08: 本地方法栈与 JNI:Java 之外的那半边
上一篇讲虚拟机栈,留了个尾巴:本地方法栈。当时说它跟虚拟机栈是兄弟俩,一个管 Java 方法,一个管 native 方法。这一篇就把这个尾巴补上。native 方法是个很有意思的东西:方法声明里写着 native,却没有方法体。字节码里只有一张欠条,真正的实现在别的语言写的库里。
Java泛型方法怎么定义使用?看懂这篇,面试不再卡壳
前面我们讲了泛型接口,很多粉丝留言问:泛型方法和泛型接口、泛型类到底有什么区别?什么时候该用泛型方法?不少Java开发有一个误区:类/接口带了泛型,里面的方法就是泛型方法。这个认知是错的!泛型方法,是方法自己独立声明泛型参数,和所在类、接口有没有泛型没有关系。
吃透这8种Java常用设计模式,你的代码至少优雅十倍!
很多Java程序员写代码多年,始终停留在“堆逻辑、拼代码”的层面,代码臃肿、重复冗余、难以维护、扩展性极差。接手老项目时一头雾水,迭代新需求时动辄大面积改代码,bug层出不穷。其实CRUD人人都会,真正拉开程序员差距的,是代码设计能力。
Java8 方法引用与Optional
上篇写完 Lambda 和 Stream,我把代码发给一个后端朋友,让他帮我挑毛病。他扫了一眼,回了一句:“你这 Stream,写得跟没学 Lambda 一样啰嗦。”我当场愣住。
从语言特性上来说Csharp要比Java强太多,Csharp的泛型,拓展方法
C语言常被夸,Java生态更厚重,到底谁被低估了。网上总有人问 C 和 Java 哪个好,有人拿语法说事,有人拿招聘说事。我自己的看法是,C 写起来常常更顺手,但 Java 的生态和岗位确实更厚,要说谁全面赢,我觉得没有。先看语言本身。
Python教程 第46章:类方法与静态方法——不需要实例的方法
一、三种方法的对比上一章我们看到,属性分"每个实例一份"和"全类共享一份"两种。同样的划分也发生在方法上:有些方法必须知道"是哪个对象在调用我",有些只需要知道"是哪个类",还有些两者都不需要。Python 为此提供了三种方法定义方式。
JVM-07:程序计数器与虚拟机栈:方法是怎么执行的
上一篇把"类从哪里来"讲完了:加载、链接、初始化。类装进 JVM 之后就该干活了,这一篇讲方法是怎么执行的。主角是运行时数据区里最小的两块:程序计数器和虚拟机栈。它们也是仅有的两块线程私有区域。方法每调用一次,栈上就压一个栈帧;程序计数器记着当前执行到了哪条字节码。
【Python编程实践】静态方法看起来简单,其实藏着一个机制
如果你写过 Python 类,一定见过这个装饰器:pythonclass MathUtils: @staticmethod def add(a, b): return a + b它叫 @staticmethod,用来定义静态方法。
安卓Hook原理Magisk深入解析
截图中的主页分别展示 Magisk 本体、管理 App 和 Zygisk 状态,这几个项目需要分开理解。自己编写的 App 可以直接集成 LSPlant。
Java接口和抽象类的区别?看完彻底搞懂
很多Java初学者和初级开发,写代码多年依然分不清接口(Interface)和抽象类(Abstract Class)。日常开发中经常随意混用,不仅代码架构混乱,面试时更是高频翻车。二者作为Java实现抽象、多态的核心载体,看似功能相似,底层设计理念、语法规则、应用场景截然不同。