- Collection 接口是 List 、 Set 和 Queue 接口的父接口,该接口里定义的方法既可用于操作 Set 集合 ,也可用于操作 List 和 Queue 集合。 Collection 接口里定义了如下操作集合元素的方法: boolean add(Object 0): 该方法用于 向集合里添加 一个元素 。 如果集合对象被添加操作改变了, 则返回 tr... Collection 接口是 List 、 Set 和 Queue 接口的父接口,该接口里定义的方法既可用于操作 Set 集合 ,也可用于操作 List 和 Queue 集合。 Collection 接口里定义了如下操作集合元素的方法: boolean add(Object 0): 该方法用于 向集合里添加 一个元素 。 如果集合对象被添加操作改变了, 则返回 tr...
- 作者:小傅哥 博客:https://bugstack.cn 沉淀、分享、成长,让自己和他人都能有所收获! 一、前言 通过前面两篇 javassist 的基本内容,大体介绍了;类池(ClassPool)、类(CtClass)、属性(CtField)、方法(CtMethod),的使用方式,并通过创建不同类型的入参出参方法,基本可以掌握如何使用这样的代码结构... 作者:小傅哥 博客:https://bugstack.cn 沉淀、分享、成长,让自己和他人都能有所收获! 一、前言 通过前面两篇 javassist 的基本内容,大体介绍了;类池(ClassPool)、类(CtClass)、属性(CtField)、方法(CtMethod),的使用方式,并通过创建不同类型的入参出参方法,基本可以掌握如何使用这样的代码结构...
- 作者:小傅哥 博客:https://bugstack.cn 沉淀、分享、成长,让自己和他人都能有所收获! 一、前言 相对于小傅哥之前编写的字节码编程; ASM、Javassist 系列,Byte Buddy 玩法上更加高级,你可以完全不需要了解一个类和方法块是如何通过 指令码 LDC、LOAD、STORE、IRETURN… 生成出来的。就像它的官网介绍... 作者:小傅哥 博客:https://bugstack.cn 沉淀、分享、成长,让自己和他人都能有所收获! 一、前言 相对于小傅哥之前编写的字节码编程; ASM、Javassist 系列,Byte Buddy 玩法上更加高级,你可以完全不需要了解一个类和方法块是如何通过 指令码 LDC、LOAD、STORE、IRETURN… 生成出来的。就像它的官网介绍...
- 现在有两种线程,氢 oxygen 和氧 hydrogen,你的目标是组织这两种线程来产生水分子。 存在一个屏障(barrier)使得每个线程必须等候直到一个完整水分子能够被产生出来。 氢和氧线程会被分别给予 releaseHydrogen 和 releaseOxygen 方法来允许它们突破屏障。 这些线程应该三三成组突破屏障并能立即组合产生一个水分子。 你必须保证产生... 现在有两种线程,氢 oxygen 和氧 hydrogen,你的目标是组织这两种线程来产生水分子。 存在一个屏障(barrier)使得每个线程必须等候直到一个完整水分子能够被产生出来。 氢和氧线程会被分别给予 releaseHydrogen 和 releaseOxygen 方法来允许它们突破屏障。 这些线程应该三三成组突破屏障并能立即组合产生一个水分子。 你必须保证产生...
- 文章目录 多态性引用变量的强制类型转换instanceof 运算符多态实现方式 多态是同一个行为具有多个不同表现形式或形态的能力。 多态性 Java 引用变量有两个类型 :一个是编译时类型,一个是运行时类型,编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定,如果编译时类型和运行时类型不一致,就可能出现所谓的多态(Pol... 文章目录 多态性引用变量的强制类型转换instanceof 运算符多态实现方式 多态是同一个行为具有多个不同表现形式或形态的能力。 多态性 Java 引用变量有两个类型 :一个是编译时类型,一个是运行时类型,编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定,如果编译时类型和运行时类型不一致,就可能出现所谓的多态(Pol...
- 小傅哥 | https://bugstack.cn 沉淀、分享、成长,专注于原创专题案例,以最易学习编程的方式分享知识,让自己和他人都能有所收获。目前已完成的专题有;Netty4.x实战专题案例、用Java实现JVM、基于JavaAgent的全链路监控、手写RPC框架、架构设计专题案例、源码分析、算法学习等。 一、前言 写这篇文章的时候我在想可能大部分... 小傅哥 | https://bugstack.cn 沉淀、分享、成长,专注于原创专题案例,以最易学习编程的方式分享知识,让自己和他人都能有所收获。目前已完成的专题有;Netty4.x实战专题案例、用Java实现JVM、基于JavaAgent的全链路监控、手写RPC框架、架构设计专题案例、源码分析、算法学习等。 一、前言 写这篇文章的时候我在想可能大部分...
- 引用计数 给对象中添加一个引用计数器,每当有一个地方引用它,计数器就加 1;当引用失效,计数器就减 1;任何时候计数器为 0 的对象就是不可能再被使用的。 这个方法实现简单,效率高,但是目前主流的虚拟机中并没有选择这个算法来管理内存,其最主要的原因是它很难解决对象之间相互循环引用的问题。 所谓对象之间的相互引用问题,如下面代码所示:除了对象 objA 和 obj... 引用计数 给对象中添加一个引用计数器,每当有一个地方引用它,计数器就加 1;当引用失效,计数器就减 1;任何时候计数器为 0 的对象就是不可能再被使用的。 这个方法实现简单,效率高,但是目前主流的虚拟机中并没有选择这个算法来管理内存,其最主要的原因是它很难解决对象之间相互循环引用的问题。 所谓对象之间的相互引用问题,如下面代码所示:除了对象 objA 和 obj...
- 笔试 必做部分 1、谈谈你对Spring IOC的理解?为什么要使用IOC?不使用IOC会存在什么问题? 2、简述Spring AOP的基本原理实现过程,在Spring里是如何利用AOP来实现数据库事务的? 3、谈谈你认识的微服务架构,结合Spring Cloud或Dubbo谈谈实践体会。(选做) 选做部分 SpringMVC+MyBatis 1、列举... 笔试 必做部分 1、谈谈你对Spring IOC的理解?为什么要使用IOC?不使用IOC会存在什么问题? 2、简述Spring AOP的基本原理实现过程,在Spring里是如何利用AOP来实现数据库事务的? 3、谈谈你认识的微服务架构,结合Spring Cloud或Dubbo谈谈实践体会。(选做) 选做部分 SpringMVC+MyBatis 1、列举...
- Java虚拟机和Class文件是Java实现系统无关性的基石。 Class文件是JVM实现语言无关性的基石。 Class文件中包含了Java虚拟机指令集、符号表以及若干其他辅助信息。 每一个 Class 文件对应于一个如下所示的 ClassFile 结构体: ClassFile { u4 magic; u2 minor_version; u2 majo... Java虚拟机和Class文件是Java实现系统无关性的基石。 Class文件是JVM实现语言无关性的基石。 Class文件中包含了Java虚拟机指令集、符号表以及若干其他辅助信息。 每一个 Class 文件对应于一个如下所示的 ClassFile 结构体: ClassFile { u4 magic; u2 minor_version; u2 majo...
- 文章目录 抽象方法和抽象类抽象类的作用 如果自下而上在类的继承层次结构中上移,位于上层的类更具有通用性,甚至可能更加抽象。从某种角度看, 祖先类更加通用, 只是将它作为派生其他类的基类,而不作为想使用的特定的实例类。 抽象方法和抽象类 抽象方法和抽象类必须使用 abstract 修饰符来定义,有抽象方法的类只能被定义成抽象类,抽象类里可以没有... 文章目录 抽象方法和抽象类抽象类的作用 如果自下而上在类的继承层次结构中上移,位于上层的类更具有通用性,甚至可能更加抽象。从某种角度看, 祖先类更加通用, 只是将它作为派生其他类的基类,而不作为想使用的特定的实例类。 抽象方法和抽象类 抽象方法和抽象类必须使用 abstract 修饰符来定义,有抽象方法的类只能被定义成抽象类,抽象类里可以没有...
- 线程和多线程 程序:是一段静态的代码,是应用软件执行的蓝本 进程:是程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程,这个过程也是进程本身从产生、发展至消亡的过程 线程:是比进程更小的执行单位。进程在其执行过程中,可以产生多个线程,形成多条执行线索,每条线索,即每个线程也有它自身的产生、存在和消亡的过程,也是一个动态的概念 主线程:(每... 线程和多线程 程序:是一段静态的代码,是应用软件执行的蓝本 进程:是程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程,这个过程也是进程本身从产生、发展至消亡的过程 线程:是比进程更小的执行单位。进程在其执行过程中,可以产生多个线程,形成多条执行线索,每条线索,即每个线程也有它自身的产生、存在和消亡的过程,也是一个动态的概念 主线程:(每...
- 在mysql中用到了date类型,对应的java类型就是java.sql.Date,但是java.sql.Date的生成需要对java.util.Date类型进行转换,在转换的过程中发现出现了错误,两边不一致 SimpleDateFormat sdf =new SimpleDateFormat("yyyy-mm-dd"); Date stDate=sdf.parse... 在mysql中用到了date类型,对应的java类型就是java.sql.Date,但是java.sql.Date的生成需要对java.util.Date类型进行转换,在转换的过程中发现出现了错误,两边不一致 SimpleDateFormat sdf =new SimpleDateFormat("yyyy-mm-dd"); Date stDate=sdf.parse...
- 作者:小傅哥 博客:https://bugstack.cn 沉淀、分享、成长,让自己和他人都能有所收获!😄 一、前言 编程学习,先铺宽度还是挖深度? 其实技术宽度与技术深度是相辅相成的,你能了解多少技术是和你对一个技术的理解深度有关,而你能对一个技术探究的多深又是需要你有一定的广度认知。否则如果只去了解皮毛或者死磕一段代码,收获都不一定有多大,或者... 作者:小傅哥 博客:https://bugstack.cn 沉淀、分享、成长,让自己和他人都能有所收获!😄 一、前言 编程学习,先铺宽度还是挖深度? 其实技术宽度与技术深度是相辅相成的,你能了解多少技术是和你对一个技术的理解深度有关,而你能对一个技术探究的多深又是需要你有一定的广度认知。否则如果只去了解皮毛或者死磕一段代码,收获都不一定有多大,或者...
- 面试的时候,常常会被问到这样一个问题:请您写出一个单例模式(Singleton Pattern)吧。好吧,写就写,这还不容易。顺手写一个: public final class EagerSingleton { private static EagerSingleton singObj = new EagerSingleton(); private E... 面试的时候,常常会被问到这样一个问题:请您写出一个单例模式(Singleton Pattern)吧。好吧,写就写,这还不容易。顺手写一个: public final class EagerSingleton { private static EagerSingleton singObj = new EagerSingleton(); private E...
- 文章目录 理解封装使用访问控制符 在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。 理解封装 封装( Encapsulation) 是面向对象的三大特征之一(另外两个是继承和多态) ,它指的是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过... 文章目录 理解封装使用访问控制符 在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。 理解封装 封装( Encapsulation) 是面向对象的三大特征之一(另外两个是继承和多态) ,它指的是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过...
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中
热门标签