- 博客(3)
- 收藏
- 关注
原创 java面试:Spring AOP 使用的动态代理,JDK动态代理和CGLIB动态代理
JDK动态代理:import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;public class JdkProxy implements InvocationHandler { private Object target;//目标类 public JdkProxy(Object target) { thi
2021-07-02 16:27:36
387
原创 java面试:你重写过 hashcode 和 equals 么,为什么重写 equals时必须重写 hashCode 方法?
首先,我们要知道equals()方法和hashcode()方法都属于Object类,这就意味着 Java 中的任何类都可调用Object类的方法;下面我们看下源码:equals()方法:可以看出,在Object的源码,底层是用的"=="来比较的,也就是判断俩个的地址是不是一样的,这让这个equals方法在我们实际开发过程中没有了太大的实用价值,我们不是要地址的相等性,我们一般需要是逻辑上的相等,比如两个对象属性完全一样,我们就可以认为他一样(可参考下面的例子)。这时候我们就得重写equals
2021-07-01 16:41:17
1089
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人