- 博客(6)
- 收藏
- 关注
原创 为什么JDK动态代理只能代理接口(2)?
在Java中,动态代理是一种机制,允许在运行时动态地创建代理对象来代替某个实际对象,从而在其前后执行额外的逻辑。为什么JDK动态代理只能代理接口实现类,原因是JDK动态代理是基于接口实现的。当你使用Proxy类创建代理对象时,你需要指定一个接口列表来表示代理对象所应该实现的接口,这些接口就成为代理对象的类型。具体来说,代理对象的方法调用会被转发到实现接口的类中的invoke()方法。这个invoke()方法接受三个参数:代理对象本身、被调用的方法对象和方法的参数数组。invoke()
2023-07-15 11:50:08
45
1
原创 为什么JDK动态代理只能代理接口?
2.接口在Java中具有更强的约束性,通过接口可以很好地定义和限制一组行为,这就是JDK动态代理只能代理实现接口的类的一个重要原因。这就限制了被代理的类必须是单继承的。而且接口可能被多个类实现,这就是为使用基于接口的动态代理提供了更大的灵活性。1.由于Java中的类只能有一个父类,因此假如要使用基于类的动态代理,代理类必须继承一个类,
2023-07-15 11:43:14
397
1
原创 HttpSessionBindingListener
实现BindingListener接口的对象被绑 定到session时触发valueBound事件,解除绑定时触发valueUnbound事件
2022-12-13 14:47:46
419
原创 2021-05-11
2.jdk.jre. jvm分别是什么?阐述他们之间的关系? jdk:JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。 jre: JRE是Java运行环境(Java Runtime Environment,简称JRE)是一个软件,由太阳微系统所研发,JRE可以让计算机系统运行Java应用程序(Java Application)。 jvm:是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个..
2021-05-11 15:08:19
72
原创 2021-05-10
1-Java跨平台原理 答:Java程序实际是在Java虚拟机(JRE是软件实现)中运行,Java虚拟机类似一个模拟执行环境,在不同的操作系统上拥有不同的Java虚拟机实现, 但是这些Java虚拟机遵循统一的规范来解释class文件,并将class文件中的指令转换为本地操作系统对应的指令,这样就实现了相同的class文件,可 以通过Java虚拟机转换为对应操作系统上的对应指令,实现class文件,也就是Java程序,的跨平台性。 Java的跨平台原理 ...
2021-05-10 16:41:36
63
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人