java基础_面向对象_equals()方法和“==”

    一个面试的时候经常会遇到的java基础题目,equals()方法和“==”的区别。想顺着这个题目好好的捋一捋其中的关系。结论是如果”==”比较的是对象的地址,只要是new出来两个对象,比较两个对象的引用,肯定永远都不一样 。只要画一画其内存分析,肯定是指向不同的地址。
   再去重新理解static的时候我想从最简单的开始,修饰类的属性。

目录


(1) java基类Object类

   在类中,static修饰的成员变量称为静态成员变量,它为该类的公有变量,只有在第一次使用时被初始化,对于该类所有对象来说,static成员变量只有一份。


(2) hashCode()方法

   试着站在java虚拟机的角度来看内存中的布局。一个程序运行时可能会有很多很多个对象在堆内存中分配,对于java虚拟机来说需要找到这些对象,会用一张表记录着每一个对象在什么位置上,而这张表一般是又哈希编码来记录,每个对象都有自己独一无二的hash编码, 根据这个编码就能找到相关的对象。

    equals()方法、hashCode()方法以及HashMap之间联系密不可分的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值