![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java面试
爱吃小香葱
你的技术好强
展开
-
【Java面试】基本数据类型和包装类的区别,如何选择?
面试官:你说一下基本数据类型和包装类有什么区别吧,什么时候用包装类什么时候用基本数据类型。好的,最本质的区别:基本数据类型不是对象,包装类型是对象存储位置不同:基本类型是直接将变量值存储在栈中,而包装类型是将对象放在堆中,然后通过引用来使用基本类型的初始值如int为0,boolean为false,而包装类型的初始值为null;包装类的对象可以放进集合中而基本数据类型不可以阿里巴巴开发手册:【强制】关于基本数据类型与包装数据类型的使用标准如下:1) 所有的POJO类属性必须使用包装数据类原创 2021-10-18 16:11:06 · 965 阅读 · 0 评论 -
【Java面试】Java中方法参数是值传递还是引用传递?
Java 到底是值传递还是引用传递? - Hollis的回答 - 知乎Java中方法调用时是值传递还是引用传递?两篇文章结合着看,清晰明了~值传递和引用传递的概念先搞清楚:值传递:是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。引用传递:是指在调用函数时将实际参数的地址传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。总结java中方法参数是值传递,不存在引用传递。如果参数是基本类型,传递的是基本类型的字面量值的拷贝。如果原创 2021-10-17 22:29:49 · 639 阅读 · 0 评论 -
【Java面试】“你重写过 hashCode() 和 equals() 吗?为什么重写equals时 必须重写hashCode方法?”
**Java规范规定的是如果两个对象用equals进行比较,结果为true的话,那么这两个对象的hashCode方法的返回值必须相等。**并没有规定两个对象不相等,即equals返回false,hashCode方法的返回值必须不相等。所以为什么重写equals必须重写hashCode?因为要遵守Java的规范啊!我们重写了equals,变成了按对象的内容判断两个对象是否相等,如果不重写hashCode,则是调用的本地方法,这个hashCode本地方法(即Object类中的那个hashCode方法)只能保原创 2021-10-17 20:33:26 · 451 阅读 · 0 评论 -
【Java面试】说一下成员变量和局部变量的区别?
定义位置成员变量(又叫实例变量):类内部,方法外部局部变量:方法内部作用域成员变量:针对整个类有效。局部变量:方法内部存储位置成员变量:堆。 局部变量:方法栈生命周期成员变量:随着对象的创建而存在,随着对象的消失而消失局部变量:当方法调用完,或者语句结束后,就自动释放。初始值成员变量:有默认初始值。局部变量:没有默认初始值,使用前必须赋值。...原创 2021-10-17 17:54:55 · 59 阅读 · 0 评论 -
【Java面试】谈一下你对面向对象的理解?
面试官:谈一下你对面向对象的理解?我:好的,首先面向对象编程(OOP,Object Oriented Programming)是一种编程思想也可以说是一种编程架构,它指导我们在进行程序设计时的设计原则。谈面向对象,我们可以和面向过程结合着来看:面向过程编程,强调的是过程,比如我们要设计一个把大象放入冰箱的程序,面向过程要求我们思考这个程序的执行过程,然后实现这个过程中的每一步,而面向对象强调的是对象,以面向对象的思想解决这个问题时,我们思考的是这个程序中可以抽象出哪些对象,各个对象有哪些特征(属性和方法)原创 2021-10-17 15:19:12 · 322 阅读 · 0 评论