Java SE面试题(经常出现却又容易被忽略的题目)

来源:互联网 发布:超级优化李玄 编辑:程序博客网 时间:2024/05/27 12:22

1)运行时异常,非运行时异常。 运行时异常可进行处理,也可不进行处理。非运行时异常必须进行处理(可以通过try-catch语句处理,也可通过关键字throws抛出异常)。非运行时异常继承自Exception但不继承自RuntimeException。 2)equals()方法与“==”的区别 (1)对于字符串变量以及基本数据类型的包装类型来说:“==”比较两变量的引用是否相等,即变量在内存的首地址是否相等。“equals()”比较实体(内存空间)的内容是否相等,因为String类中重新定义了equals()方法,并且是用来比较其值得而不是内存地址。注意:如果 StringBuffer s1=new StringBuffer(“a”); StringBuffer s2=new StringBuffer(“a”); s1.equals(s2);为false,因为StringBuffer类中没有重新定义的equals()方法,因此equals()方法来自于Object类,而Object类的equals()方法是用来比较地址的,所以为false。 (2)对于非字符串变量来说:“==”和“equals()”的作用是相同的,都是用来比较对象在堆内存中的首地址,即用来比较两个引用变量是否指向同一个实体(内存空间)。注意:(1)如果是基本数据类型比较只能用“==”不能用“equals()”。(2)对于基本数据类型的包装类型“==”比较的是实体的引用,“equals()”比较的是实体的内容。 3)是否可以继承String类? String类是final类故不可以继承。 4)构造器Constructor是否可被override? 构造器Constructor不能被继承,因此不能被override(重写),但可以被overload(重载)。 5)HashMap和Hashtable的区别。 1.HashMap是Hashtable的轻量级实现,效率更高。 2.Hashtable是线程安全的,HashMap是非线程安全的,即前者中的方法有用synchronized修饰,后者没有。 3.HashMap允许空(null)键值(key),而Hashtable不允许。 4.Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。 5.HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因为contains方法容易让人引起误解。 6)GC是什么? 为什么要有GC? GC是垃圾收集的意思(Garbage Collection),(内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃)Java提供的GC功能可以 自动监测对象是否超过作用域从而达到自动回收内存的目的,避免内存溢出造成的一系列问题。Java语言没有提供释放已分配内存的显示操作方法。 7)同步和异步有何异同,在什么情况下分别使用他们?举例说明。 (1)同步(synchronized)和异步(asynchronized)是对于多线程(multi-threading)而言的 同步可防止并发 主要出于数据安全的考虑。对于线程中的共享数据,必须进行同步存取。 (2)异步允许并发。当应用程序

在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程。 8)String s = new String ("xyz"); 创建了几个String Object ?    两个,堆区中一个,常量池中一个。 String a="xyz"; 首先会到常量池中去查找,如果存在就不再分配,如果不存在就分配,常量池中的数据 是在编译期赋值的,也就是生成class文件时就把它放到常量池里了。 9)简述synchronized和java.util.concurrent.locks.Lock的异同 ? 主要相同点:Lock能完成synchronized所实现的所有功能 主要不同点:Lock有比synchronized更精确的线程语义和更好的性能。synchronized会自动释放锁,而Lock一定要求程序员手工释放,并且必须在finally从句中释放。 10)多线程有几种实现方法,都是什么? 同步有几种实现方法,都是什么? 多线程有两种实现方法,分别是继承Thread类与实现Runnable接口。 实现同步也有两种,分别为使用同步方法和使用同步块。同步方法就是在方法返回类型后面加上synchronized,如:public void synchronized add(){},同步块就是直接写:synchronized(需要同步的对象){} 11)switch是否能作用在byte上? 是否能作用在long上? 是否能作用在String上? switch(expr1)中,expr1是一个整数表达式。因此传递给 switch 和 case 语句的参数应该是 int、 short、 char 或者 byte。long, String 都不能作用于swtich。

对于学习有困难不知道如何提升自己可以加扣:578024144进行交流得到帮助,获取学习资料


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 我的中国银行卡在异地被冻结怎么办 qq密保号码换了验证不了怎么办 qq登陆需要密保手机验证怎么办 微信漂流瓶被投诉收不到回复怎么办 电视的屏幕出现三条黑线怎么办 付了定金的房子不想要了怎么办 顾客刚买了东西就退怎么办 飞机票买了但是没有报团怎么办 日本寄东西回来深圳海关扣了怎么办 xp框架安装模块后无限重启怎么办 手机百度云下载的文件不见了怎么办 百度云手机号换了文件不见了怎么办 好劵app提现密码忘了要怎么办 微信上买的衣服不给退货怎么办 在微信上买的衣服不给退货怎么办 贴贴纸的地方出现色差了怎么办 贴在玻璃上的贴纸撕掉后有胶怎么办 魅族手机部分时间上划失效怎么办 别人电脑上c盘文件无权访问怎么办 网络已连接但上不了网怎么办 asp复选框选中的有重复值怎么办 邮件在邮递中出现损坏怎么办呢? 爱彩彩票资金密码忘记了怎么办 注册彩票网站忘了资金密码怎么办 电车电瓶加水后电压变低怎么办 电动车电瓶四块电池坏了一块怎么办 把小孩的玩具修坏了怎么办 电动车插头太紧了插不到底怎么办 宜家沙发不能更换布套怎么办 苹果官网买的无线充坏了怎么办 苹果官网上买的耳机坏了怎么办 led灯开关关掉了闪烁是怎么办 我朋友借的网贷光给我打电话怎么办 电脑上的文件变成了图片查看怎么办 外卖店打印机纸卡住打不开了怎么办 微信撤回图片留下一堆代码怎么办 拼多多砍价免费拿砍不到0元怎么办 一岁三个月宝宝老足拉肚子怎么办丶 想打好关系送礼发红包不敢收怎么办 我在相亲市场太受欢迎了怎么办小说 有人报警说我诈骗警察说立案怎么办