Java Object类中的方法

面试问的最多的问题是:“Java object类中有哪些方法?归类总结一下”。一般情况下,3年以上工作经验的回答少于6个方法的,会导致减分,2年以下工作经验的知道6个以上会加分。到阿里云后面试过30+,回答让我满意的人很少。

作为一个半路出家当程序员,开始我总是痴迷于应用。a框架的配置,b框架的模板,c框架的控制……其实我对Java底层了解的很少,也没有想过了解java的底层。触动我去看Object类的是几件事。

在上个东家做消息全网传输的时候,我用BeanUtil.copyProperties()拷贝对象的值,觉得很爽,后面某同事review我的代码提示我可以覆写对象的clone()方法的,毕竟,反射的效率是比较低的。然后当我去做的时候,发现了更好的选择。然后在打印日志的时候,我习惯拼接属性,于是又被提示覆写toString()方法是包爽的,就这样,我认识了Object的2个方法。

看《Effecive Java》这本书,中间提到“为什么覆写equals()方法的时候总是要覆写hashcode()”。开始第一遍没有看懂,也懒得管了,因为hashcode我用的少,后来去参加一个面试,被人问到的时候,感觉无比的尴尬,我读过,却不知道答案!这是个人总结能力的问题,后面又不能不回来仔细看看这2个方法到底是做什么的。

关于线程的notify() , notifyAll() , wait()『3个』 方法,学习线程的时候看过,不过自从用了JUC的包,我基本没有在代码中使用过了。每次用eclipse的“alt + /” 快捷键从后翻总能看到,所以无论如何,这几个方法应该知道。

写到这里,有7个方法了,这几个方法很容易想到,在我开发java2年后,能够回答Object类中的7个方法。其实clone()方法不常用,所以,我说的数字6是有依据的。这6个方法,作为java程序员,天天不见也会见几次。如果写了几年java代码不知道基类里面的方法,就算你Hbase玩的再熟,我凭什么相信你能写优质代码?如果一个在农村盖房子3年的砌匠不知道前后梁有多少瓴子(鲁班收徒的故事),您会怎么想?

再后来,不能不用反射,就知道了getClass()方法,finalize()方法我至今没用过!

分类:编程 时间:2014-06-15 人气:7
本文关键词: Java技术
分享到:

相关文章

iOS 开发

Android 开发

Python 开发

JAVA 开发

开发语言

PHP 开发

Ruby 开发

搜索

前端开发

数据库

开发工具

开放平台

Javascript 开发

.NET 开发

云计算

服务器

Copyright (C) codeweblog.com, All Rights Reserved.

CodeWeblog.com 版权所有 闽ICP备15018612号

processed in 0.038 (s). 12 q(s)