欢迎来到天天文库
浏览记录
ID:27694482
大小:122.67 KB
页数:20页
时间:2018-12-05
《java基础面试总结》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、JAVA基础面试总结1.00什么时候使用基于接口编程?基于接口编程、Fascade层等等抽象封装都是有开发和维护的代价的,是否使用归根结底还是要看团队人员的分工情况,技术方面确实需要时,比如不同开发语言下连接;手机app与服务系统连接等,自然就要用了。1.OlPackage是先分层还是先分模块?org.springside.模块A.web还是org.springside.web.模块A?同上,还是看团队人员的分工情况。如果是每人从头到尾负责一个独立模块的可以先分模块,反之,按层进行分工并注重层内重用的,可以考虑先分层。1.02怎么处理日志问题?有那些可行的方案
2、?首先要定义一个项目的异常处理类,然后所有需要处理异常的类就用该类来处理。日志的操作和处理就在该类中操作;方案一:在service层的trycatch中设置错误日志打印;方案二:在filter拦截器中统一设置错误曰志1.03反射机制反射机制,就是当不确定类的类型时,采用java.lang.reflect方式定义转换类的类型;反射的功能很强大,但是使用不当可能会缺点大于优点,反射使代码逻辑混乱,会带来维护的问题。众所周知Java有个Objectclass,是所有Javaclasses的继承根源。1.04面向对象理解什么是OOP?什么是类?请对比类和对象实例之间的
3、关系。00P是面向对象编程缩写。指的是用对象的观点来组织与构建系统,它综合了功能抽象和数据抽象,这样可以减少数据之间的耦合性和代码的出错几率。使用面向对象编程技术可以使得软件开发者按照现实世界里人们思考问题的模式编写代码,可以让软件开发者更好地利用代码直接表达现实中存在的对象;类是同一类对象实例的共性的抽象,对象是类的实例化。对象通常作为计算机模拟思维,表示真实世界的抽象。类是静态的,对象是动态的,类负责产生对象,可以将类当成生产对象的工厂。1.05基本数据类型1、Java的数据类型可以划分为4大类:整数,浮点数,字符型,布尔型。其中整数可以划分为:byte,
4、short,int,long.浮点数可以划分为float,double。2、char型变量中能不能存贮一个中文汉字?为什么?答:是能够定义成为一个中文的,因为java中以unicode编码,一个char占16个字节,所以放一个中文是没问题的。1.06String与StringBuffer的区别。String的长度是不可变的,StringBuffer的长度是可变的。如果你对字符串中的内容经常进行操作,特别是内容要修改时,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法。1.07数据类型大小及取
5、值范围大小:byte1个字节、short2个字节、int4个字节、long8个字节;char2个字节;float4个字节、double8个字节;取值范byte的取值范围为_128~127,占用1个字节(_2的7次方到2的7次方-1)short的取值范围为-32768〜32767,占用2个字节2的15次方到2的15次方-1)int的取值范围为(-2147483648^2147483647),占用4个字节(-2的31次方到2的31次方-1)long的取值范围为(-92233720368547748089223372036854774807),占用8个字节(-2的6
6、3次方到2的63次方-1)可以看到byte和short的取值范围比较小,而long的取值范围太大,占用的空间多,基本上int可以满足我们的日常的计算了,而且int也是使用的最多的整型类型了。1.08public、protected、private和不写限定符有什么区别?作用域当前类同一package子孙类其他packagepublicprotectedXfriendly(不写时默认)privateXXX1.09线程理解1、请说出你所知道的线程同步的方法。wait():是线程交互时,如果线程对一个同步对象x发出一个wait()调用,该线程会暂停执行,被调对象进入
7、等待状态,直到被唤醒或等待时间到。sleep():是使线程停止一段时间的方法。在sleep时间间隔期满后,线程不一定立即恢复执行。这是因为在那个时刻,其它线程可能正在运行而且没有被调度为放弃执行,除非(a)“醒来”的线程具有更高的优先级(b)正在运行的线程因为其它原因而阻塞。是一个静态方法,调用此方法要捕捉InterruptedException异常。notify():唤醒一个处于等待状态的线程,注意的是在调用此方法的时候,并不能确切的唤醒某一个等待状态的线程,而是由JVM确定唤醒哪个线程,而且不是按优先级。Allnotity():唤醒所有处入等待状态的线程,
8、注意并不是给所有唤醒线程一个对象的锁,
此文档下载收益归作者所有