黑马程序员技术交流社区
标题:
面试宝典
[打印本页]
作者:
梁宝昌
时间:
2014-9-12 21:30
标题:
面试宝典
|--排版顺序(大家用editplus打开看,这个看txt文档是非常好的,Word文档不个人认为不好)
|----7K面试题
|----前5天的一些小知识点(面试时有人被考过写数组循环的)
|----面相对象的理解(4特性:封装,继承,多态,抽象)
|----异常(异常机制)
|----多线程的理解(创建方式和线程重点内容)(sleep和wait区别:释放锁上和怎么样醒自己总结)
|----集合(能说出整个体系)
|----IO流(写代码多用缓冲区和转换流吧)
|----正则表达式(正则的一些功能)
|----反射(说出反射的功能和作用)
|----泛型(泛型的理解)
|----代理(动态代理和代理的区别,动态代理三种创建方式)
|----线程池
|----类加载器(定义和创建过程)
|----JDK1.5新特性
|----归纳的一些面试被问的零散问题
|----面试时还被问到eclipse的快捷键(哥一口气说了十几个,这个始料未及)
(我由于说了是在传智播客毕业的,又自己复习了两月,老师基础就只问了我线程,其他全问的高新技术,高新技术全部都被涉及到了)
1.1 7k面试题---交通灯管理系统(自己的理解)
首先使用名词提炼发,汽车过马路,有汽车,马路,红绿灯,红绿灯的控制系统四个名词。车通过红绿灯过马路,车只有开启和停下的功能,他过
马路这个动作不是他控制的,是通过马路来判断的,马路上面有车的集合,某个时刻,马路上少了一辆车,就判断说车过了红绿灯。创建路的对象road,路
是代表的某个方向的名字,所以在创建对象时加入name参数表示是哪个方向上的路,当我们创建路的对象的时候,创建某个方位的路的对象,那条路上就应
该有产生车和车过马路的共性行为,所以要创建两个线程来分别操作产生车和定时器来移除车,这里使用到Executors类,能产生单线程和控制器,控制器
通过判断这条路当前的灯是否为绿来让车同行,并确定同行的实现。
再来说红绿灯这个类,我们可以用枚举来实现,因为有12条路,就应该有12个灯,对象是固定取值的,由于当前路上的灯亮时,对面路上的灯也会
亮,当前路上灯为红时,下一路口上的灯为绿,所以我们可以创建一个有参的构造,参数分别为下一个路口的灯,对面路口的灯和当前灯的明暗情况,由于
在调用时下面的对象还未创建,所以参数用字符串表示。灯有亮和不亮这两个属性。
还需要定义一个控制系统,设置成单例模式,来构造第一个为绿的灯,启动一个定时器,启动一个定时器,每隔10秒将当前灯变红和将下一个灯变
绿。主函数创建路的对象,把路的名字作为参数循环穿进去,开启控制系统。
1.2 7k面试题---银行业务系统(这个是抄的张老师的PPT,自己没时间总结)
首先明确对象,售票窗口,号码产生机器,号码管理机器
号码产生器只有一个对象,所以采用单例,定义三个成员变量分别指向三个NumberManager对象,分别表示普通、快速和VIP客户的号码管理器,定
义三个对应的方法来返回这三个NumberManager对象。
号码管理器定义一个用于存储上一个客户号码的成员变量和用于存储所有等待服务的客户号码的队列集合。
定义一个产生新号码的方法和获取马上要为之服务的号码的方法,这两个方法被不同的线程操作了相同的数据,所以,要进行同步
售票窗口,根据服务窗口的类别分别循环调用三个不同的方法所以开启一个线程,使用Executors类。线程里面根据不同的客户来执行售票方法,
所以号码的类型需要使用枚举,定义三种类型的对象,如果是快速窗口,首先获得快速号码管理器对象,得到马上要服务的号码,如果没有号码产生,则执
行普通窗口的方法
主函数里面用for循环创建出4个普通窗口,再创建出1个快速窗口和一个VIP窗口。接着再创建三个定时器,分别定时去创建新的普通客户号码、新
的快速客户号码、新的VIP客户号码
作者:
刃下心
时间:
2014-9-13 00:40
正则也会考?
作者:
梁宝昌
时间:
2014-9-13 20:50
刃下心 发表于 2014-9-13 00:40
正则也会考?
了解 但是不会考的
作者:
进击的大鹏
时间:
2014-9-13 21:27
收藏了,准备报47期
作者:
态度要诚恳
时间:
2014-9-13 21:29
我只想说,楼主好人!正在为48期奋斗!
作者:
不再青春哥
时间:
2014-9-13 21:30
谢谢版主分享
作者:
梁宝昌
时间:
2014-9-18 23:02
不再青春哥 发表于 2014-9-13 21:30
谢谢版主分享
大家的目标一致 加油
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2