黑马程序员技术交流社区
标题: 就业班面是技术问答(干货) [打印本页]
作者: Sj改变 时间: 2016-5-13 14:38
标题: 就业班面是技术问答(干货)
之前已经分享过一次我面试的时候做过的笔试题。接下来就跟大家交流一下我面试技术问答环节。我不会像有些人一道题发一个帖子,因为我也是从面试前过来的,看到那样的帖子就感觉污染了整个论坛的气氛,我感觉黑马建立这个论坛的目的是为了大家的学术生活交流,而不是为了一味的刷分,希望黑马论坛也能成为像CSDN那样的论坛而努力。 个人感觉,相比于面试过程中的编程题,面试的基础知识问答环节更加值得多加准备。个人第一次就跪在这个方面。希望后来的小伙伴多加注意。
接下来是我在面试的时候被问到的一些技术问题:
答:单独使用的时候,在前在后都一样。参与运算的时候,在前是先自加,然后再用这个结果参与运算。在后是先参与运算,再进行自加
- 逻辑或 " | " 和 短路或 " || "有什么区别?
答:|不管前面的结果是真是假后面的都会运算,||前面为真后面的不参与运算。但是结果是一样的。
答:byte、short、int、char。JDK1.5以后可以使用枚举,1.7之后可以使用String。
- switch中break可以省略吗?省略了会发生什么现象?default可以什么时候执行吗?
答:break在最后一个可以省略,其他的不要省略,省略了会继续执行下面的语句,这种现象叫case穿透现象。Default在所有case都满足的情况下执行。
(1)定义位置不同:成员变量定义在类中方法外,局部变量定义在方法内。
(2)作用范围不同:成员变量在整个类中有效,局部变量在所在的方法有效。
(3)内存位置不同:成员变量随着对象的创建存放在堆内存(都是new出来的)中,局部变量存放在栈内存中。
(4)初始化值不同:成员变量是有默认的初始化的值的;局部变量不赋值不能用。
(5)生命周期不同:成员变量随着对象的存在而存在,随着对象的消失而消失;局部变量随着方法的调用而存在,方法调用完毕而消失。
- 子类都不可以继承到父类的什么?java可以多继承么?
答:父类中被private修饰的成员不可以被继承到,java不支持多继承,支持多层继承。
答:(1)区别局部变量和成员变量(2)代表本类对象的引用(3)也可以用于构造方法的调用
(1)final修饰的变量只能赋值一次,不能发生改变,如果修饰的基本类型,是其值不能发生改变,如果修饰的引用数据类型,是地址值不能发生改变;
(2)final修饰的方法不能被重写;
(3)final修饰的类不能被继承,也称最终类。
答:都是常量,public static final ;方法都是抽象方法,public abstract;没有构造方法。
(1)成员的特点:抽象类可以有变量、常量、构造方法、一般方法、抽象方法;接口有且只能有常量和抽象方法。
(2)关系特点:类与类支持单继承,不能多继承,但是能够多层次继承,类与接口是实现关系,一个类能实现多个接口,一个类继承 一个类的同时能实现多个接口;接口与接口之间能单继承,也能多继承;
答:“==”是比较运算符,既能比较基本数据类型,又能比较引用数据类型。基本数据类型比较的是数值,引用数据类型比较的是地址值。
equals是一个方法,只能比较引用数据类型。所有的类都会继承Object的equals方法。重写equals方法比较的是对象的内容,如果没有重写将调用Object的equals方法,比较的是地址值。
答:将int类型转为String类型的方法:(1)基本数据类型+“”(2)Integer.toString(int num)(3)String.valueOf(int i)
将String转为int:Integer.parseInt(String s)
- HashSet怎么保证元素唯一的?先比较equals还是HashCode?
答:同过存入元素的HashCode和equals方法。先比较Hash值。
- List取出元素的方法?Set取出元素的方法?Map取出元素的方法?
(1)list取出元素的方法:普通for,高级for,迭代器
(2)Set取出元素的方法: 高级for,迭代器。
(3)Map取出元素的方法,entrySet,keySet,通过keySet取出Value的方法value = get(key);
答:throws是在方法声明后面,用来声明异常,后面跟的异常类名;可以跟多个异常类名,用逗号隔开;表示抛出异常,需要由调用者处理。
Throw定义在方法体内,跟的异常对象名;只能跟一个异常对象。
答:(1)子类继承父类时,父类方法抛出了异常,子类重写该方法时只能抛出相同的异常或者该异常的子类。
(2)如果父类抛出了多个异常,子类在重写方法时只能抛出相同的异常或者他的子集,不能抛出父类没有的异常。
(3)如果父类没有抛出异常,子类重写该方法时不能抛出异常。如果子类出现了异常,只能进行try处理,不能抛出。
- 在try{}catch{}finally{}的那一部分关闭流,为什么?
答:在finally中,因为finally一定会执行。
答:
(1)继承Thread类:好处是:因为是继承,代码简单,能够直接使用Thread类的方法。确定是:扩展性比较差,因为继承了Thread类,不能再继承其他的类。
(2)实现Runnable接口:好处是扩展性比较强。缺点时:代码比较冗余,因为不是继承Thread类,无法直接使用thread中的方法。
(1)定义共享数据为类变量:static修饰;
(2)定义在同步代码块中,或者同步函数中。
(1)sleep是让线程睡眠,必须给相应的睡眠时间,不需要唤醒,时间到了会自动醒来,休眠时不放弃Cpu的执行权。是Thread的方法
(2)wait的是让线程等待,可以传参也可以不传参,传参是在指定的时间后等待,需要被唤醒。等待的时候放弃cpu的执行权。是Object的方法
- 如何通过反射获取类的私有方法?使用前应该注意什么?
(1)getDeclaredMethod方法获取私有方法
(2)在使用前应该setAccessable(true)
我天,总结下来发现自己真的很牛,半个小时回答了这么多问题,通过这半个小时的斗智斗勇,我也充分的认识到,这份程序员的饭碗不是谁都能吃到的。不用在在论坛上找面试会问什么问题了,这里已经够全面了的了,基本上同API到反射都会问到。平时这些小的知识点很少会有人注意。可能大家跟我一样都只会敲代码,但是不会讲这些东西。技术问答这一关就是要大家形成这样的能力,什么叫明白,理解了知识?这让我想起来一句古话-------------什么时候我才能成为大牛?答:等你教会你媳妇编程的时候。哈哈,开个小玩笑。总之,这篇干货希望大家干了~也希望大家多多留言支持。多给小的点技术分。
一同过了面试的小伙伴,希望咱们课堂上见,没有过的小伙伴看了这篇文章你也会过的,过了以后不要忘了回来感谢我。
=============================================================================================
说道做到,这就是我的忍道
-------漩涡名人
作者: New灬狼 时间: 2016-5-13 21:35
非常感谢你的分享,祝你每天都有一个好心情
作者: nlfdnxb 时间: 2016-5-13 23:03
非常棒的分享,谢谢分享!!
作者: 换一个昵称 时间: 2016-5-13 23:55
顶顶^^^^^^
作者: a809431502 时间: 2016-5-14 00:27
感谢分享
作者: mischen 时间: 2016-5-14 08:36
不错,值得收藏,希望面试能过
作者: w1001566 时间: 2016-5-14 20:22
这这,你都一个字不漏的回答了吗?
作者: Sj改变 时间: 2016-5-16 21:25
当然不能一字不差,但是该有的还是得有的
作者: Sj改变 时间: 2016-5-16 21:38
谢谢 小伙长得挺标致
作者: liuqjss 时间: 2016-5-18 14:00
{:2_35:}好人~~~~
作者: lfg1016249499 时间: 2016-5-19 21:32
不错 谢谢分享
作者: daniel031699 时间: 2016-5-20 08:40
学到了 学到了
作者: 刘宽 时间: 2016-5-20 22:35
你是好人,真正的好人,等我面试上了,我也会这样做
作者: Sj改变 时间: 2016-5-21 11:33
黑马论坛的风气 靠大家拯救
作者: Freedompal 时间: 2016-5-22 10:58
多谢楼主分享,收藏了
作者: 之约 时间: 2016-5-22 11:34
写的很棒!
作者: yangyaoguang 时间: 2016-5-22 23:20
明天就面试了,真的很有用,赞一个
作者: 即墨 时间: 2016-5-22 23:48
可以可以,学到了
作者: xqw316 时间: 2016-5-23 16:41
感谢楼主分享~
作者: 一条大瞎 时间: 2016-5-23 22:20
十分感谢您的分享
作者: demon凯 时间: 2016-6-2 16:25
谢谢楼主分享
作者: 流离岁月 时间: 2016-6-3 08:54
感谢分享,学到了几个不清楚的基础点
作者: tianzhu2725 时间: 2016-6-3 23:30
非常感谢,这些都问了?
作者: chengxiankun 时间: 2016-6-5 18:11
感谢分享,谢谢楼主
作者: andy536 时间: 2016-6-6 09:09
看来还有些差距
作者: yu2323637 时间: 2016-6-6 23:50
什么时候我才能成为大牛?答:等你教会你媳妇编程的时候
这句话真是溜到爆炸啊~~·
作者: cuisq 时间: 2016-6-7 08:35
感觉好简单,瞬间又有了信心
作者: aizengk 时间: 2016-6-15 10:36
谢谢分享
作者: luojie140 时间: 2016-6-15 15:28
感谢楼主分享
作者: 1871037345 时间: 2016-6-17 18:32
看了一点,不敢再看 了,很多小错误,本来就不熟悉,万一被误导就不好了
作者: 南京王睿 时间: 2016-6-20 17:55
厉害厉害,多谢分享
作者: bitwdh 时间: 2016-6-20 21:10
谢谢!对初学者很有用!!!
作者: bitwdh 时间: 2016-6-21 09:15
谢谢分享,很全面,很有帮助!!~
作者: 安好小妖 时间: 2016-6-21 10:06
谢谢分享
作者: Devii 时间: 2016-6-21 13:37
非常感谢分享,很有用,收藏了。
作者: rainLL 时间: 2016-6-21 14:49
赞一个!分享的很详细!
作者: Insomnia! 时间: 2016-6-22 21:27
多谢前辈,受益匪浅!
作者: lizihanglove 时间: 2016-6-22 23:55
nice try,好好学习了!
作者: 2016ly 时间: 2016-6-23 06:02
谢谢分享!
作者: llllmll 时间: 2016-6-24 00:44
感谢LZ分享
作者: 南国之南 时间: 2016-6-24 10:24
真好,非常有用的干货,非常感谢
作者: superCode 时间: 2016-6-24 23:11
非常感谢你的分享,祝你每天都有一个好心情
作者: 黑马酬勤 时间: 2016-6-25 00:13
非常感谢 谢谢分享
作者: wzj1 时间: 2016-6-25 00:50
感谢楼主的分享
作者: bitwdh 时间: 2016-6-25 17:55
谢谢整理和分享!!!!
作者: 貂裘换酒 时间: 2016-6-26 17:06
受用了!谢谢分享!
作者: 940752944 时间: 2016-6-27 22:36
谢谢分享
作者: 丿若恋灬如初 时间: 2016-6-29 14:14
学习学习
作者: y506798278 时间: 2016-7-3 15:49
还没看,先留个名
作者: ASDZZZ 时间: 2016-7-4 21:47
非常棒的分享,谢谢分享!!啊
作者: longforus 时间: 2016-7-5 22:53
马克一下,要回来再看看{:3_47:}
作者: lybjfzdzy 时间: 2016-7-9 22:56
mark,收藏了,谢谢分享
作者: wangzhiwen 时间: 2016-7-10 12:59
大神 有mysql 和jdbc的机试题没。。。。。。
作者: wangzhiwen 时间: 2016-7-10 13:02
我也是一面挂了,正准备二面,学习了。
作者: 没心没肺1 时间: 2016-7-12 16:35
很棒,真的学到了,继续加油
作者: 以我之名 时间: 2016-7-12 18:50
多谢分享 收藏了
作者: jilaiyuan 时间: 2016-7-13 09:19
好认真!干货,谢谢!
作者: 雷雨天 时间: 2016-7-13 10:58
非常有用,谢谢分享
作者: a946608523 时间: 2016-7-19 00:53
谢谢分享谢谢分享
作者: le李 时间: 2016-7-19 00:54
这个很全啊!!!感谢分享。
作者: ゛Babyゝ 时间: 2016-7-21 20:53
顶一个都是很有用的知识,好像不是很全面
作者: Ly丶Roman 时间: 2016-7-21 22:10
感觉我还要好好复习呀
作者: le李 时间: 2016-7-21 22:51
总结的真好。
作者: a946608523 时间: 2016-7-22 10:54
谢谢楼主分享
作者: wwwjaycn0717 时间: 2016-7-22 20:30
非常感谢你的分享,祝你每天都有一个好心情
作者: bhc702178 时间: 2016-7-23 00:42
感谢楼主分享
作者: truth95 时间: 2016-7-31 23:22
谢谢,有发现自己的不足了
作者: 明天你好hxq 时间: 2016-8-2 00:05
Sj改变 发表于 2016-5-13 14:38
之前已经分享过一次我面试的时候做过的笔试题。接下来就跟大家交流一下我面试技术问答环节。我不会 ...
总结的很好
作者: 夜神月light 时间: 2016-8-2 22:57
不错,收藏了先
作者: linguoqun 时间: 2016-8-4 00:44
哇,楼主好厉害,全都弄懂并通过语言表达出来了。请问楼主这功夫是怎么炼成的?那些概念性的东西要去背吗?
作者: ustcerlzy 时间: 2016-8-4 10:06
首先 赞楼主一个 其次 这篇帖子的确很有用。多谢!
作者: 敲敲敲dm 时间: 2016-8-4 21:19
谢谢谢谢谢谢 ,真的感谢
作者: yangzhao 时间: 2016-8-5 15:39
很厉害,谢谢楼主分享~~
作者: 勿忘`初心 时间: 2016-8-17 23:35
表示很好,果断复制
作者: 魏斌 时间: 2016-8-19 16:30
谢谢楼主分享
作者: 等1只猫守1座城 时间: 2016-8-19 19:25
等你教会你媳妇的时候..... 还是666
作者: 悠悠呦呦 时间: 2016-8-22 22:30
谢谢 分享很实用 多多学习
作者: q291793758 时间: 2016-8-23 18:44
有媳妇谁还学编程
作者: 回根的落叶 时间: 2016-8-27 21:28
好帖,感谢楼主分享。。
作者: crxc3237 时间: 2016-8-29 20:03
收藏了
作者: 1124979056 时间: 2016-8-29 21:27
谢谢,会好好学
作者: longzhi100 时间: 2016-9-1 09:52
这个分享还是很不错的 好多知识点也许自己知道 但是具体细节可能容易遗忘 拉出来针对看一下挺好的
作者: dmyz3214382 时间: 2016-9-1 11:55
看来知识点还的背
作者: areawh 时间: 2016-9-1 22:15
棒棒哒,谢谢分享!
作者: lbzc 时间: 2016-9-1 22:41
不错,感谢分享
作者: vic_miao 时间: 2016-9-2 23:46
非常感谢楼主的分享
作者: i'm 时间: 2016-9-10 01:29
谢谢分享!!!
作者: chenqg 时间: 2016-9-12 19:02
感谢,赞赞赞
作者: Menger_ 时间: 2016-9-12 22:06
学习到了 看着不会特别难 好好学习,有信心了 多谢楼主
作者: 嘿girl 时间: 2016-9-14 15:58
大赞
作者: ObjectGitHub 时间: 2016-9-14 18:05
总结的很好,谢谢楼主分享。但是default是在case 表达式都不满足的时候才执行,你好像写错了
作者: zjy9399 时间: 2016-9-21 02:35
不错,谢谢分享。。
作者: 赵晗 时间: 2016-9-26 21:13
感谢楼主
作者: yu244934256 时间: 2016-9-30 00:40
默默地在心里回答了一遍
作者: chenhao597 时间: 2016-9-30 22:42
漩涡鸣人 你写错了 好吧...
作者: 万物皆数 时间: 2016-10-4 10:16
十分感谢您的分享
作者: 1054903357 时间: 2016-10-4 23:42
我的天,厉害!!!!!!
作者: 灵活的胖子 时间: 2016-10-5 06:28
厉害了我的哥,很不擅长这种文字定义说明类的问答,就是看起来很简单的题目,模糊的印象自己是知道的,要我具体说个明白却又说不明白
作者: HermitXU 时间: 2016-10-5 06:32
哈哈,谢谢分享,牢记了
作者: oss1122 时间: 2016-10-5 21:22
感谢分享~
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |