java程序员面试葵花宝典锦集二篇

更新时间:2023-11-02 来源:程序员 点击:

【www.scabjd.com--程序员】

下面是小编精心整理的java程序员面试葵花宝典锦集二篇,仅供参考,大家一起来看看吧。

java程序员面试葵花宝典1

15、error和exception有什么区别?

error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。

exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。

16、同步和异步有何异同,在什么情况下分别使用他们?举例说明。

如果数据将在线程间共享。例如正在写的数据以后可能被另一个线程读到,或者正在读的数据可能已经被另一个线程写过了,那么这些数据就是共享数据,必须进行同步存取。当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程,在很多情况下采用异步途径往往更有效率。

17、abstract class和interface有什么区别?声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。

18、heap和stack有什么区别。栈是一种线形集合,其添加和删除元素的操作应在同一段完成。栈按照后进先出的方式进行处理。堆是栈的一个组成元素

19、forward 和redirect的区别forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。 redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。

20、EJB与JAVA BEAN的区别?Java Bean 是可复用的组件,对Java Bean并没有严格的规范,理论上讲,任何一个Java类都可以是一个Bean。但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以Java Bean应具有一个无参的构造器,另外,通常Java Bean还要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微软COM模型中的本地进程内COM组件,它是不能被跨进程访问的。Enterprise Java Bean 相当于DCOM,即分布式组件。它是基于Java的远程方法调用(RMI)技术的,所以EJB可以被远程访问(跨进程、跨计算机)。但EJB必须被布署在诸如Webspere、WebLogic这样的容器中,EJB客户从不直接访问真正的EJB组件,而是通过其容器访问。EJB容器是EJB组件的代理,EJB组件由容器所创建和管理。客户通过容器来访问真正的EJB组件。

21、Static Nested Class 和 Inner Class的不同。 Static Nested Class是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实例化。而通常的内部类需要在外部类实例化后才能实例化。

22、JSP中动态INCLUDE与静态INCLUDE的区别?动态INCLUDE用jsp:include动作实现 它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面

23、什么时候用assert。 assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为true;如果该值为false,说明程序已经处于不正确的状态下,系统将给出警告或退出。一般来说,assertion用于保证程序最基本、关键的正确性。assertion检查通常在开发和测试时开启。为了提高性能,在软件发布后,assertion检查通常是关闭的。

24、GC是什么? 为什么要有GC? GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法。

25、short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错? short s1 = 1; s1 = s1 + 1; (s1+1运算结果是int型,需要强制转换类型) short s1 = 1; s1 += 1;(可以正确编译)

26、Math.round(11.5)等於多少? Math.round(-11.5)等於多少? Math.round(11.5)==12 Math.round(-11.5)==-11 round方法返回与参数最接近的长整数,参数加1/2后求其floor.

27、String s = new String(“xyz”);创建了几个String Object? 两个

28、设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。

以下程序使用内部类实现线程,对j增减的时候没有考虑顺序问题。

public class ThreadTest1{private int j; public static void main(String args[]){ ThreadTest1 tt=new ThreadTest1; Inc inc=tt.new Inc(); Dec dec=tt.new Dec(); for(int i=0;i

java程序员面试葵花宝典2

人们常说:机会总是留给有准备的人。作为一个炙手可热的java程序员,在求职之前,一定要明确自己的求职态度,熟悉求职的过程,做好充分的准备,把一些可预见的事情做好。这样在招聘的时候才能充满自信,处变不惊。求职过程中,有些事情是无法预料的,这些事情可能会打乱求职者的心态,影响求职的结果。如果应聘者能够尽早把准备工作做好,即便发生了一些意料之外的事情,也不会有太大的影响,把事态控制在自己所能控制的范围之内。

以下就是笔者总结的作为一个计算机相关专业的应届毕业生或有志于从事软件开发的人员,应该如何摆正自己的心态,以及一些在求职过程中应该注意的问题。

认识职业规划

大部分程序员都是在职场中不断地遇到挫折、漫无目的地跳槽后,才对自己的职业发展方向产生了疑惑。合理地规划自己的职业生涯是非常有必要,也是非常有意义的事,对于任何人,完善的职业生涯规划都能让自己有一个目标和方向,然后向着这个目标前进。

职业规划的意义 职业规划的意义是每一个初涉职场的人必须要了解的,下面是最重要的几点。

以既有的成就为基础,确立人生的方向,提供奋斗的策略,发掘自我潜能。

完善的职业生涯规划将使你正确认识自身的个性特质、现有与潜在的资源优势,帮助你重新对自己的价值进行定位并使其持续增值,并对自己的综合优势与劣势进行对比分析。还可以使你树立明确的职业发展目标与职业理想,客观评估个人目标与现实之间的差距,并可更敏锐地搜索或发现新的或有潜力的职业机会。并且,通过采用科学的方法付诸于实际行动,不断增强你的职业竞争力,即可实现自己的职业目标和理想。

可以重新安排自己的职业生涯,突破生活的格线,塑造清新充实的自我。

准确评价个人特点和强项,增强发展的目的性与计划性,提升成功的机会。

职业生涯的发展要有计划、有目的,不可盲目地“碰运气”。很多人在职场受挫就是由于生涯规划没有做好。好的计划是成功的开始,凡事“预则立,不预则废”就是这个道理。

评估个人目标和现状的差距。

职业生涯规划可以提升应对竞争的能力。

当今社会处在变革的时代,到处充满着激烈的竞争。物竞天择,适者生存。职业活动的竞争尤为突出,特别是我国加入WTO后,要在这场激烈的职场竞争中脱颖而出,并始终立于不败之地,必须设计好自己的职业生涯规划。做好个人的职业生涯发展规划后,在职业发展的道路上,会有很多因素影响着个人的职业发展,其中最重要的应当是自身对职业的选择。如何降低在职业上最大的风险也是个人职业规划需要考虑的问题。如满足于现状,不思进取这样的问题是要靠更新知识结构、转换思维模式来解决的。针对不同的阶段,本章将分别讲述应届毕业生的近期职业规划,以及在职程序员(或相关职业)的职业生涯规划。

软件人才的职业规划

软件行业所带来的职位不仅限于程序员,编码工作也只是软件开发的一部分。一个人从事软件行业,可以只涉及其中的一个方面,也可以涵盖多个方面。如何知道哪个或哪些类型的职位更适合自己呢?下面是在面试中的一些常见的软件人才职位。

程序员;

软件工程师;

系统分析师;

数据库架构师;

测试工程师;

项目经理。

在国内,新技术确实容易引起很多误会,甚至有的企业招聘时也盲目跟风,无论什么项目都只用Java或.NET开发,有的应届毕业生以为自己会Java或.NET即可走遍天下了。殊不知C++(本地代码程序)程序远比Java或.NET程序效率高,并且不需要安装运行环境,在某些有要求的项目中C++才是最好的选择。只有认清这些技术的各种细节,在职业生涯规划中才不会以编程语言或技术平台为主线进行设计,而应当依据个人所适合的技术进行深入,直至成为专家。

应聘过程

应聘过程是十分曲折的,任何一个环节出现问题都会导致应聘的失败。求职者应该对每一个求职环节都掌握于心,做好充分的准备,才能有的放矢,灵活应对应聘过程中出现的每一个问题。

掌握基本的应聘流程

既然是求职应聘,肯定得先找到一个公司,找到一个适合自己的职位了。现在应聘的渠道也比较多,对于IT技术职位的应聘来说,比较常见的有校园招聘、招聘网站、社会招聘会、专题招聘会等形式。

对于应届毕业生来说,校园招聘会更适合他们。因为他们一般没有什么工作经验,校园招聘也不会要求他们有工作经验,而社会招聘往往会设置一个工作经验的门槛。一些公司在每年年底的时候,会到校园去进行宣讲会,应届毕业生在这个时候去求职是再适合不过的了。

目前,招聘网站也是一个比较流行和重要的招聘信息来源。一些大型的软件公司也会在招聘网上,例如智联招聘、中华英才网等,发布他们的职位需求信息。此时,求职者投递的就是电子简历了,它相对于纸张的简历来说,亲切感要差一些。

另外,每年年初是跳槽的高峰时期,各大城市都会组织大型的招聘会,或者专题招聘会,应届毕业生和社会求职者都可以到这些招聘会上找适合自己的公司及其职位,通过面对面的交流,充分了解公司的情况和职位的情况。

通过各种渠道找到自己心仪的公司和职位以后,就可以开始去应聘了。

面试资料的准备 无论是应届毕业生还是有过工作经验的应聘者,在面试前都要准备充足的各种资料。这些资料一般包括以下几种。

作品

对于技术设计类的工作岗位,具体的作品是最重要的资料,也是用人企业最看重的东西。应届毕业生不要以为没有工作经验而不准备具体的作品。例如,应聘者所应聘的工作岗位是“Web开发人员”,应试者要事先了解该岗位对Web开发的技术要求,然后根据要求准备自己的作品资料。即便是应届毕业生也可以准备自己的作品资料,如网站后台方面的课程设计,如果有必要还可将其修改为完整的项目

通过应试者对自己作品的讲解(如源代码),用人企业可以直接了解应试者的技术能力,避免了各种测试所走的弯路。很多小规模的公司往往跳过了笔试步骤,直接通过应试者的作品来判断其能力是否适合工作岗位。

证书

由于个人简历中一般都会注明自己所获得的各种证书,很多用人企业筛选简历的依据也有证书的因素。所以应试者最好带上证书的原件,如学历证、学位证、英语等级证、程序员等级证等。由于应届毕业生没有工作经验,所以证书的作用相对比较大,而有过工作经验的反而不需要太多的证书来证明自己。

个人简历

虽然用人企业已经浏览过应试者的简历,但在实际中,用人企业仍然有可能会让应试者重新填写一份简历。对于很多应试者,重新填写简历时部分内容可能会与原来的有出入,所以应试者最好带上一份原始简历。

简历的写法及应注意的问题 简历是求职者信息的一个概况,是招聘者对求职者的情况了解的第一来源。它的重要性是不言而喻的。而事实上,大多数的简历都是不合格的。许多管理者都会抱怨简历很糟糕。那么应该如何让自己的简历做到简洁明了,在充分展示自己的同时又不显得冗余呢?其实,求职者在写简历时应该注意以下几点。

招聘单位看简历,肯定是要看一个真实的求职者。求职者应该完全如实地把信息表达出来,不可以包含任何的虚假信息。这些虚假信息对求职者是没有任何帮助的。即使它们为求职赢得了一次面试机会,也会在面试时露出马脚,使得招聘者更加反感。为人真诚是一个基本的做人原则,它反映了一个人的基本素质。

[java程序员面试葵花宝典]

本文来源:http://www.scabjd.com/jisuanji/250517/

为您推荐

女程序员的职场进化论范文(精选五篇)

以下是小编整理的女程序员的职场进化论范文(精选五篇),欢迎阅读与收藏。

2023-11-28 15:58:40  

新程序员如何理解“独立完成工作”问题?(通用3篇)

以下是小编收集整理的新程序员如何理解“独立完成工作”问题?(通用3篇),仅供参考,希望能够帮助到大家。

2023-11-28 15:58:34  

关于程序员必读的书籍排行榜【八篇】

以下是小编整理的关于程序员必读的书籍排行榜【八篇】,仅供参考,希望能够帮助到大家。

2023-11-28 15:58:28  

接触人事招聘,如何面试网络美工和PHP程序员?范文(通用3篇)

美工一般是指对平面,色彩 ,基调,创意等进行加工和创作的技术人才,分为平面美工、网页美工和三维美工。一般需要精通Photoshop等设计软件。下面是小编为大家整理的接触人事招聘,如何面试网络美工和PHP程序员?范文(通用3篇),欢迎大家借鉴与参考,希望对大家有所帮助。

2023-11-24 14:13:37  

程序员述职报告范文(通用18篇)

程序员(英文Programmer)是从事程序开发、程序维护的基层工作人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚。随着互联网的不断普及,网络上把男程序员称作“程序猿”,女程序员称作“程序媛”。下面是小编精心整理的程序员述职报告范文(通用18篇),仅供参考,大家一起来看看

2023-11-24 14:13:32