欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    javase笔试面试简答题部分.docx

    • 资源ID:89130174       资源大小:185.68KB        全文页数:37页
    • 资源格式: DOCX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    javase笔试面试简答题部分.docx

    第一部分51.请解释Java语言的跨平台特性。52.请列举JAVA语言的主要特点53.请说明一个JAVA类中主要包含哪几个元素?并说明每种元素的作用。54、请说明构造方法的作用和特征55、什么事方法重载(overload)?66、请列举Java语言中的权限访问修饰符,并说明每种权限的含义。67、请列举Java语言中的八种基本数据类型,并说明每种数据类型的含义及长68.什么叫引用类型,引用类型和基本数据类型有什么区别?69.对于String对象,可以使用“=”赋值,也可以使用new关键字赋值,两种方式有什么区别?710.String类是一个“不可变类”,请解释“不可变类”的含义。711.String类和StringBuffer类有什么区别?712StringBuffer和StringBuilder类有什么区别?813.包装器类型包括哪些类,有什么作用?814. 请说明Java语言中的值传递规则。815.使用static修饰属性或方法后,属性和方法有什么特征?816.使用final修饰属性后,属性有什么特征?917.请说明操作符=的作用。918请说明&&与&的区别和联系919. break语句能在什么场景使用。920.for循环中的break语句和continue语句的使用。921 请说明一个JAVA类中主要包含哪几个元素并说明每种元素的作用。10第二部分 类之间的关系10用代码表示A类关联B类的情况。102请说明Java语言中数组的基本概念,数组的作用,以及数组的声明创建方式。103.使用代码,创建一个长度为5的String型数组,并使用增强for循环迭代数组打印出数组中的元素。104.说明Arrays类的作用。115.请使用简单代码展示A类依赖B类的含义。116.请说明依赖关系和关联关系的区别。117.继承有什么作用,Java语言中的继承有什么特点?118、什么是方法覆盖?并说明方法覆盖与方法重载(overioad)的区别。129、请说明什么是抽象类?抽象类有什么作用?1210、请说明抽象方法的含义,并说明抽象类与抽象方法的关系。1211、super关键字的两种用法。1212、final类与final方法有什么作用?1214.Object类有什么特点?1315.Object类中的toString方法有什么用?1316.Object类中的equals方法和hashCode 方法。1317.接口有什么特点,与抽象类有什么区别?1418.类继承父类与类实现接口,有什么区别?1419.Comparable接口有什么作用14第三部分 异常处理141 .什么是异常?异常和错误有什么区别?142 .nullPointException是什么异常?什么情况发生该异常?143.说明try/catch/finally语句块的作用154如何使用语句抛出异常,抛出异常后如何处理?155. throws 关键字和 throw 关键字有什么区别和联系?156. 什么是自定义异常类?为什么要自定义异常类?15第四部分核心API150. 请画出Java集合框架的主要接口和类的继承关系。16Collection接口和Map接口分别定义了什么集合类型?有什么区别?161. 用简单代码演示创建一个泛型类为Customer类的List对象,并使用增强for循环迭代集合。162. List和Set集合有什么区别?163.List接口有哪几个实现类?分别说明其特征174.Collectioin 和Collections有什么区别?175.如何将一个Collection转换成数组?176集合的作用?177 HashMap和TreeMap在性能上有什么样的差别呢?你比较倾向于使用哪一个?178 什么是Iterator189 什么是HaspMap和Map?1810Java集合框架都有哪些最佳实践呢?1811ArrayList和Vector的区别。1812 ArrayList、Vector、LinkedList的区别?  1813 Map的接口和特点?: 1914 Collection及Collections的区别?  1915 假设存在文本文件etc.doc,请用代码展示将文件按行读出,并打印输出到控制台。1916.使用java语言如何创建线程对象?请列出常用的两种方法。1917.关键字synchronized有什么作用?用简单代码展示synchronized的方法。2018. 线程之间通信的方法有哪几个?分别起到什么作用?20第五部分 其 他 特 性201.什么是泛型?泛型有什么作用?203.下述代码是否有编译错误,如果有,请指出错误。214.请使用简单代码声明一个枚举类型,并说明枚举的作用。215.假设有一个枚举类型是Grade,使用代码展示遍历该枚举的方法。22什么是自动装箱拆箱?使用该特征有哪些注意事项?228.什么是可变参数?用简单代码展示可变参数的使用。231、作用域public,private,protected,以及不写时的区别232、&和&&的区别245、Collection 和 Collections的区别246、什么时候用assert247、String s = new String("xyz");创建了几个String Object248、Math.round(11.5)等於多少? Math.round(-11.5)等於多少2410、Java有没有goto2411、数组有没有length()这个方法? String有没有length()这个方法2412、Overload和Override的区别。Overloaded 的方法是否可以改变返回值的类型2413、Set 里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用=还是 equals()? 它们有何区别2514、给我一个你最常见到的 runtime exception2516、List, Set, Map是否继承自 Collection接口2517、abstract class和interface 有什么区别2518、 abstract的method 是否可同时是static,是否可同时是 native,是否可同时是synchronized2619、接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)2620、构造器Constructor 是否可被override2621、是否可以继承String类2622、try 里有一个return语句,那么紧跟在这个try后的 finally 里的 code会不会被执行,什么时候被执行,在return 前还是后2623、用最有效率的方法算出 2乘以82624、两个对象值相同(x.equals(y) = true),但却可有不同的 hash code,这句话对不对2725、当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递2726、switch是否能作用在byte 上,是否能作用在long上,是否能作用在String上2727、ArrayList 和 Vector 的区别,HashMap 和Hashtable的区别2728、char 型变量中能不能存贮一个中文汉字?为什么?2729、GC是什么? 为什么要有 GC2830、float型float f=3.4是否正确?2831、介绍JAVA 中的Collection FrameWork(包括如何写自己的数据结构)?2832、抽象类与接口?2833string和stringbuffer的区别。2834、谈谈final, finally, finalize 的区别2835、面向对象的特征有哪些方面2936、String是最基本的数据类型吗2937、int 和 Integer 有什么区别2938、运行时异常与一般异常有何异同3039、说出ArrayList,Vector, LinkedList的存储性能和特性3040、HashMap和Hashtable 的区别3041、heap和stack有什么区别3042、Java中的异常处理机制的简单原理和应用3043、垃圾回收的优点和原理。并考虑 2种回收机制3144、你所知道的集合类都有哪些?主要方法?3145、描述一下JVM加载 class文件的原理机制?3146、排序都有哪几种方法?请列举3147、JAVA 语言如何进行异常处理,关键字:3148、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?3249、java中有几种类型的流?JDK 为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?3250、java中会存在内存泄漏吗,请简单描述。3251、java中实现多态的机制是什么?3252、垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收3253、静态变量和实例变量的区别?3254、什么是java序列化,如何实现 java序列化?3355、是否可以从一个static方法内部发出对非static方法的调用?3356、写clone()方法时,通常都有一行代码,是什么?3357、在JAVA中,如何跳出当前的多重嵌套循环?3358、List、Map、Set三个接口,存取元素时,各有什么特点?3359、说出一些常用的类,包,接口,请各举5 个3360、java 中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和 suspend()方法为何不推荐使用?3361、sleep() 和 wait() 有什么区别?3462、同步和异步有何异同,在什么情况下分别使用他们?举例说明。3463、启动一个线程是用 run()还是start()?3464、当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?3465、请说出你所知道的线程同步的方法。3466、多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?3567、线程的基本概念、线程的基本状态以及状态之间的关系3568、简述synchronized和java.util.concurrent.locks.Lock的异同 ?3569、Class.forName的作用?为什么要用?3570、Jdo是什么?3571、说出数据连接池的工作机制是什么?3572、xml有哪些解析技术?区别是什么?3673、你在项目中用到了 xml技术的哪些方面?如何实现的?3674、XML文档定义有几种形式?它们之间有何本质区别?解析 XML 文档有哪几种方式?3675、MVC的各个部分都有那些技术来实现?如何实现?3676、J2EE 是什么?37第一部分1.请解释Java语言的跨平台特性。解析:虽然不知道什么是跨平台也可以使用Java语言进行编程,但是对于一个Java编程员来说,理解跨平台特性能够更深入掌握Java语言,所以企业中往往要求应聘者至少理解这个特性。参考答案:Java的跨平台特性也被称为可移植性、平台无关性,或者一次编写处处运行。他的意思就是如果用Java语言编写一个应用,那么就可以在不同平台上运行,而不需要为不同平台单独运行开发。之所以能实现跨平台的特性。主要得益于Java虚拟机(JVM),JVM解释器在运行Java应用时根据当前平台进行解释,解释成符合当前平台规范的机器码,所以可以实现同样的应用在不同平台上都能运行。2.请列举JAVA语言的主要特点解析:了解一门语言,往往从熟悉该语言的主要特点开始入手,所以企业也常常通过应聘者对JAVA语言特点的掌握程度而判断其语言基础是否扎实。参考答案:JAVA语言有很多特点,主要包括跨平台性:一个应用可以不经过修改直接运行到不同的平台上。面向对象:JAVA语言是一门面向对面的语言,可以使用对象的属性和行为,可以使用面向对象的思想进行分析设计,并实现整个应用。解释执行JAVA应用时,JVM中的解释器将解释类文件,生成符合当前平台的字节码。自动回收:JAVA应用中的垃圾回收是自动进行的,JVM中的后台线程将监视内存中数据的使用,当内存中的数据不再被引用时,将被作为垃圾回收,而不需要程序员动手回收。3.请说明一个JAVA类中主要包含哪几个元素?并说明每种元素的作用。解析:无论简单还是复杂的JAVA应用,都是由若干个类组成,所以类是JAVA应用的组成单位。了解一个类中包含的主要元素能够对类有一个清晰的认识。一个类中往往会有五种元素,即属性、方法、构造方法、块以及内部类、其实块和内部类比较少见。参考答案:JAVA类中主要包含属性、方法、构造方法、块以及内部类。属性用来定义对象的数据;方法用来定义对象的行为;构造方法可以用来创建对象;块能够用来在类加载时执行操作或者在每次实例化前执行通用操作;内部类作为类的一个成员存在,能够访问外部类的属性和方法。4、请说明构造方法的作用和特征解析:类是对象的模板,使用类往往都需要首先对类进行实例化,即创建对象。要创建对象必须使用new关键字调用构造方法(constructor)才能完成,构造方法中往往对属性进行实例化,也可以实现其他必要的功能,如读取属性文件等。构造方法有独特的特征:名字必须与类名相同且大小写敏感,而且构造方法不能声明返回值,这两个特征缺一不可。使用Eclipse工具时,可以使用菜单Generate Constructor自动生成不同的构造方法。参考答案:构造方法的作用是用来创建对象,使用new关键字调用。构造方法的名字必须与类的名字相同,并且大小写敏感,同时构造方法不能声明返回值类型,可以使用任意一种访问修饰符,但是不能使用其他修饰符进行修饰,如static、final、abstract等修饰符都可以修饰构造方法。5、什么事方法重载(overload)?解析:如果一个类的某个行为,会有不同的算法和逻辑,例如,Math类的计算绝对值的方法,既可以计算int类型数值的绝对值,也可以计算double类型数值的绝对值。这种情况下,每种类型都定义一个不同的方法名,如abInt、absDouble,那么类的可读性就较差,使用时,必须熟悉处理每种类型参数所对应的方法名。然而,如果使用同一个方法名,而使用不同的形式参数来区别这些方法,那么就具有很好的可读性,如abs(int i)、abs(double d)等。可读性强的代码是企业对开发人员的基本要求,方法重载能够使得代码有很好的可读性。参考答案:方法重载指的是在一个类中可以声明多个相同名字的方法,而方法的形式参数有区别。调用这些同名的方法时,JVM会根据实际参数的不同绑定到不同的方法。6、请列举Java语言中的权限访问修饰符,并说明每种权限的含义。解析:正确使用权限访问修饰符,能够有效控制类以及类成员的安全性,Java语言中有四种访问修饰符,包括public、同包、protected以及private,一般情况下,应用中的类多是public权限,属性多是private权限,方法多是public权限。参考答案:Java语言中有四种权限访问修饰符,即public、protected、同包以及private,public表示公共权限,即任何包中都可以访问:protected表示受保护权限,即同包中可以访问,同包中的子类可以访问:同包权限是默认权限,即不显示指明权限修饰符的时候就是同包权限,表示只有同包中可以访问:private是私有权限,表示只能在本类中访问。7、请列举Java语言中的八种基本数据类型,并说明每种数据类型的含义及长度。解析:数据类型在任何一门编程语言中都是很重要的知识点,属性、方法参数、方法返回值要指定各自的数据类型。Java语言虽然是一门面向对象的语言。但是也定义了基本数据类型,基本数据类型可以直接赋值,不需要使用new关键字创建,可以直接使用运算符进行运算,编程中经常被使用,而且Java语言中的基本数据类型的长度固定,不会随着平台的不同而不同。参考答案:Java语言的八种基本数据类型有:byte字节型,8位长度:short短整型,16位长度,int整型,32位长度:long长整型,64位长度:float单精度浮点型。32位长度:double双精度浮点型,64位长度:char字符型,16位长度:boolean型,表示逻辑值,有true和false两个值,分别表示真和假8.什么叫引用类型,引用类型和基本数据类型有什么区别?解析:很多初级程序员都能够理解int i=20;中的int是一种类型,称为整型。而对于类似Employee e=new Employee();这样表达式中的Employee却感觉无所适从。其实,任何一个类都是一种类型,如Employee就是一种类型,可以说变量e的类型就是Employee。Java语言中将类的类型称为引用类型,即reference type。可以说,除了八种基本数据类型之外的类型都是引用类型,包括API中所有的类、自定义的所有类,也包括数组。引用类型和基本数据类型的直观区别就是引用类型的变量需要使用new调用构造方法来赋值,而基本数据类型可以直接使用“=”号赋值。但是,引用类型中的String比较特殊,既可以使用new关键字赋值,也可以直接使用“=”赋值,一般情况下都使用“=”直接赋值。参考答案:Java语言中除了基本数据类型之外的类型,都称为引用类型。引用类型就是类的类型,所有的对象都是引用类型,包括数组对象。引用类型必须使用new调用构造方法进行赋值,引用类型的变量拥有自己的属性和方法,可以使用圆点调用自己的属性和方法。基本数据类型直接使用=号进行赋值,且没有自己的属性和方法,往往都在声明属性或方法时使用。9.对于String对象,可以使用“=”赋值,也可以使用new关键字赋值,两种方式有什么区别?解析:String类型是实际工作中经常使用到的类型,从数据类型上划分,String是一个引用类型,是API中定义的一个类。所以String类型的对象可以使用new创建,例如String name=new String(“ETC”);为变量name进行赋值,值为“ETC”。然而,String类比起其他类 有些特殊,可以使用“=”直接赋值,如String name=“ETC”,也是为变量name进行赋值,值为“ETC”。这两种赋值方式是有差别的,使用new赋值,永远都是创建一个新对象,在新的内存空间初始化了字符串的值;而使用“=”赋值,不会每次都初始化新的字符串,而是从一个“字符串实例池”中去查找有没有要赋值的字符串,如有则直接引用;如不存在,则初始化一个字符串,并放入“字符串实例池”。在实际编程中,往往使用“=”好对String类型变量进行赋值。参考答案:使用“=”赋值不一定每次都创建一个新的字符串,而是从“字符串实例池”中查找字符串。使用new进行赋值,则每次都创建一个新的字符串。10.String类是一个“不可变类”,请解释“不可变类”的含义。解析:String类是一个不可变类,即immutable类。所谓不可变,意思是当一个字符串被初始化后,它的值就不会被改变。例如,String s=new String(“hello”)为将初始化一个值为hello的字符串,如果调用 s.toUpperCase()看起来是把hello变为大写的HELLO,然而事实上并不会把已有的hello变为HELLO,而是在新的空间初始化一个HELLO字符串。也正因为有这种不可变性,所以才能支持“字符串实例池”的使用。参考答案:所谓的不可变类,就是当字符串初始化后,就不能够被改变。11.String类和StringBuffer类有什么区别?解析:String类是不可变类,字符串一旦初始化后,就不能被改变。而StringBuffer类是可变类,字符串值可以呗改变。常常在实际应用中看到累死这样的代码:String s=new(“hello”);s+=”world”,这两句代码首先创建一个字符hello,然后将world追加到hello结尾并重新赋值给变量s。然后,这个过程实际上是这样的:首先创建一个StringBuffer对象,然后用StringBuffer类的append方法追加字符串,最后对StringBuffer对象调用toString方法合成字符串返回。可见,使用+号连接字符串时,本质上是使用了可变的StringBuffer类,经变动肯定性能效率受到影响,所以建议需要追加字符串时,可以考虑直接使用StringBuffer类。参考答案:String类是不可变类,即字符串值一旦初始化后就不可能改变。StringBuffer是可变字符串类,类似String的缓冲区,可以修改字符串的值。12StringBuffer和StringBuilder类有什么区别?解析: StringBuffer是JDK5中增加的一个新类,在以前版本中不存在这个类。StringBuilder中的方法和StringBuffer中的方法基本相同,但是StringBuffer是线程安全的,而StringBuilder不是线程安全的,因此在不考虑同步的情况下,StringBuilder有更好的性能。参考答案:StringBuffer是线程安全的字符串缓冲,而StringBuilder不是线程安全的。13.包装器类型包括哪些类,有什么作用?解析:初级程序员常常对float和Float或者double和Double感到混淆。在Java语言中,有八中基本数据类型,即byte、int、long、float、double、char、boolean。对应这八种基本数据类型,API中定义了八个类,能把这些基本类型转换成引用类型,分别是Byte、Short、Int、Long、Double、Character、Boolean。这八个类被统称为包装器类。JDK5之后,包装器类和基本数据类型之间可以直接转换,称为自动的装箱拆箱(boxing/unboxing)。例如integer it=3;it+;虽然写法上可以像使用基本数据类型一样使用包装器类型,但是本质上依*行了类似 it= new Integer(3)的转换,因此,不要轻易使用包装器类的自动装箱拆箱,以优化的性能。能够使用基本类型就使用基本类型。参考答案:包装类器包括Byte、Short、Integer、Long、Float、Double、Character、Boolean等类,主要用来对byte、short、integer、long、float、double、character、boolean这八种基本数据类型进行包装,使其称为引用类型。14. 请说明Java语言中的值传递规则。解析:值传递时编写应用时不可避免的操作。例如某方法声明形式是public void f(int x),写方法是,必须为其传递一个int类型的实际参数,如f(10)。又如public void g(Employee)。那么使用该方法时,必须为其传递一个Employee类型的实际参数,例如g(new Employee()。所以,对于初级程序员来说,了解Java语言的值传递规则非常重要。Java语言是本类型传递的值,例如f(10),仅仅把10复制给形式参数x,是值的拷贝。而引用类的传递时引用,即虚地址,例如g(new Employee()是把实际参数的虚地址传递给形式参数e,也就是说实际参数和形式参数的虚地址相同,物理上是同一个对象。参考答案:基本数据类型传递的是值,引用类型传递的是引用,即虚地址。15.使用static修饰属性或方法后,属性和方法有什么特征?解析:static修饰符是一个非常常见并重要的修饰符,称为静态。静态不是指值不能改变,很多初级程序员容易容易望文生义的地方。Static常常用来修饰类的属性或者方法。当一个属性或者方法和对象没有关系,或者说是任何对象共享的时候,那么就应该用static进行修饰。列如某类中的计数器,用来计算实例的个数。那么这个计数器属性就是所有对象共享的属性,就应该用static修饰。又例如Math类中的abs(int)方法,用来返回参数的绝对值,这个方法和Math类的对象没有关系,Math类对象可以共享这个方法,那么这个方法就可以用static修饰。程序员必须深入理解static修饰符的使用。参考答案:static修饰属性或方法后,属性和方法不在属于某个特定的对象,而是所有共享,也可以说是static成员不依赖某个对象,在类加载时就被初始化。Static修饰的属性或方法,可以直接使用类名调用,而不用先实例化对象再调用。16.使用final修饰属性后,属性有什么特征?解析:属性可以是变量也可以是常量,如果是常量,就需要使用final修饰。如果使用final修饰了某个属性,那么该属性值一旦被赋值,就不能被修改,实际中常常有这个样的码:private static final int ERROR=0;也就是说,常常会生命静态的常量。静态常量的命名规范非常特殊,往往都是用大写字母,如果包含多个单词,每个单词之间使用下划线连接。静态常量的意思是,该类所有的对象都拥有一个不变的常量ERROR,作为0.API中很多类都定义了很多的静态常量,使用时直接使用类名调用即可。参考答案:fianl修饰属性后,属性就成为一个常量。常量只要被赋值,就不能被改变。17.请说明操作符=的作用。解析:实际编程中,=是非常常用的操作符。很多初级程序员会使用这样的代码if(s=”save”0,结果会发现,即使当字符串s的值为save时,if条件依然不能被执行。是=在比较引用类型时,比较的是两个对象的虚地址,而不是内容。要比较两个对象的内容是否相同,往往需要使用equal方法,例如if(s.equals(“save”)。=比较基本类型时,将比值的二进制是否相等,例如(x=0.5)。值得注意的是,与空指针null值进行比较,往往用=进行,例如if(s=null|s.equals(“”),表示如果字符串是空指针或者空串。参考答案:=可以用来比较基本类型或者引用类型。比较基本类型时,=用来比较二进制的值,比较引用类型时,用来比较对象的虚地址。18请说明&&与&的区别和联系解析:实际编程中,常常需要使用“与”或者“或”的逻辑。其中&&和&存在一定区别&&可能发生各路问题,例如if(s!=null&&s.length()=6)中,如果要的值为null,那么第一表达式的值为false,返回值肯定是false,不会计算第二个表达式的值,这就是短路。然而使用&,例如if(s!=null&s.length()=6),假设s的值为,null,返回值肯定是false,但是会判断第二个表达式的值,将发生空指针异常。实际工作中,经常使用&&操作符。参考答案:&&会发生短路问题,当第一个表达式的值为false时,将直接返回结果为false而不会判断第二个表达式的值。而&不会发生短路问题,即使第一个表达式的值是false,会判断第二个表达式的值。19. break语句能在什么场景使用。解析:break语句表示中断,不能够随便使用,只能在循环语句中或者switch语句中使用。初级工程师往往容易将break和return混淆。Return是可以再方法体中任意位置使用,可以带值返回页可以不带值返回,执行return语句后,该方法将返回,也就是方法执行结束。而break只能在循环体中或者switch的case语句中使用,不能随意使用。参考答案:break语句可以再循环体中使用,也可以在switch的case语句中使用。20.for循环中的break语句和continue语句的使用。解析:很多时候,循环是为了查找某些符合条件的数据,只要找到就没有必要继续下去,称为中断循环,break语句就可以用来中断循环。而continue语句恰恰相反,是用来继续下一次循环。值得注意的是,java语言中可以再循环前面加标号,即label,然后可以使用break或continue中断或继续标号的循环。参考答案:break可以用来中断循环,continue可以用来继续下一次循环。21 请说明一个JAVA类中主要包含哪几个元素并说明每种元素的作用。 解析:无论简单还是复杂的JAVA应用,都是由若干个类组成,所以类是JAVA应用的组成单位。了解一个类中包含的主要元素能够对类有一个清晰的认识。一个类中往往会有五种元素,即属性、方法、构造方法、块以及内部类、其实块和内部类比较少见。 参考答案:JAVA类中主要包含属性、方法、构造方法、块以及内部类。属性用来定义对象的数据方法用来定义对象的行为构造方法可以用来创建对象块能够用来在类加载时执行操作或者在每次实例化前执行通用操作内部类作为类的一个成员存在,能够访问外部类的属性和方法第二部分 类之间的关系用代码表示A类关联B类的情况。解析:一个Java应用中不可能只有一个类,所以了解类之间的关系对程序员来说非常重要。关联关系是最常用的一种关系,如果说A关联B,那么就是B作为A的属性存在。关联关系是一种复用的策略,即A关联B的时候,A可以复用B的行为。参考答案:Class A Private B b;Public void setB(B b)This.b=b;2请说明Java语言中数组的基本概念,数组的作用,以及数组的声明创建方式。解析:数组时任何一门语言里都常用的类型,Java语言也不例外。程序员了解数组,不能仅仅从语法上了解,而应该深入理解数组的作用。数组可以用来存储类型相同的元素,作为一种数据容器使用。和数组类似的概念是集合,也能作为数据容器使用。参考答案:数组时相同元素的集合,作为数据容器使用。声明创建一个int型数组,如下所示:intx=new int3;其中3是数组的长度,该数组能够存储3个int型变量。3.使用代码,创建一个长度为5的String型数组,并使用增强for循环迭代数组打印出数组中的元素。解析:增强for循环是JDK5增加的特性,可以方便地遍历数组或集合。程序员需要了解的是,如果JDK版本低于5.0,则不支持这个功能。另外,并不是说有了增强for循环后,传统的for循环就不被使用,增强for循环只能用来方便地遍历数组和集合,其他情况下还要使用传统的for循环。参考答案: String sArray = new String5;For(String s:sArray) System.out.println(s);4.说明Arrays类的作用。解析:在实际工作中,常常需要对数组中的元素进行处理,例如排序等。初级程序员往往选择自己编写算法实现。实际上APV中提供了Arrays类,该类中定义了很多和数组有关的工具方法,能够方便地处理数组,是程序员必须掌握的类。参考答案:Arrays类是java.util包中的一个类,类中所有的方法都是static方法,这些方法都是数组对象的工具方法,能够对数组进行处理,如sort方法可以对数组元素进行排序5.请使用简单代码展示A类依赖B类的含义。解析:对于程序员来说,了解类和类之间的关系非常必要。依赖关系指的是一种瞬间的关系。如果A依赖B,一般指的是A类的某个行为,需要B类对象作为参数。参考答案:Class APublic void f(B b)6.请说明依赖关系和关联关系的区别。解析:关联关系和依赖关系是非常常见的两种关系,二者的区别也很明显,程序员了解二者的区别能够更深入的理解面向对象的思想。参考答案:依赖关系是一种瞬时关系,A依赖B,指的是A的某个行为的参数是B的类型,也就是说,A要想实现这个行为,必须依赖B的实例,A关联B,是一种长久的关系。关联关系的是B作为A的属性存在,只要实例化一个A的对象,就会为这个A的对象实例化一个B的对象,作为它的属性使用,可以在A中任何需要使用B的地方使用B。7.继承有什么作用,Java语言中的继承有什么特点?解析:继承是面向对象语言的一大特征,主要作用是重复使用,子类通过继承父类,能够重复使用父类的属性和方法。指的注意的是,有两个策略都可使实现重复使用,一个是关联,一个是继承,实际编程中,关联用的更多。因为子类继承父类后,相当于父类中的细节将暴露给子类。初级程序员一定不要随意使用继承,避免滥用继承。 参考答案:继承主要为了能够重复使用父类中的成员。Java语言中的继承是单继承,也就是说一个类最多只能继承一个父类。8、什么是方法覆盖?并说明方法覆盖与方法重载(overioad)的区别。 解析:方法覆盖是一个非常重要的概念,是多态性的一个体现。方法覆盖发生再去爱继承关系中,当子类需要修改从父类继承到某个方法的方法体时,就可以声明一个父类同名同参数同返回值的方法,这样就对父类中的那个方法进行了覆盖,子类对象调用该方法时将自动绑定到子类中的方法。中很多类中都进行了方法覆盖,如String类中的toString方法,就覆盖了父类Object中的toString方法。参考答案:覆盖是发生在继承关系的子类中,当子类要修改从父类继承的某个方法的方法体时,就可以在子类中声明一个与父类同名、同参数并且同返回值类型的方法,这就是方法覆盖。而重载与继承没有关系,指的是在一个类中可以同时声明多个同名但不同参数的方法,称为重载。9、请说明什么是抽象类?抽象类有什么作用?解析:初级程序员往往不需要自己创建抽象类,但是必须了解抽象类的概念,并且会使用抽象类。抽象类往往是设计阶段的概念,用来定义多个子类的模板,一些具体的实现可以在子类中进行。初级程序员往往需要会创建子类继承抽象类,实现抽象类中的方法。在API中,抽象类比比皆是。 参考答案:抽象类是不能实例化的类,使用abstract修饰。抽象类往往用来做父类使用,定义一些子类的共同属性或行为。10、请说明抽象方法的含义,并说明抽象类与抽象方法的关系。解析:抽象方法都是在抽象类中定义的,是用来定义子类what to do的策略,而具体的how to do都在子类中实现。参考答案:抽象方法是没有办法体的方法,使用abstract修饰。抽象类中不一定有抽象方法,但是有抽象方法的类一定是抽象类。11、super关键字的两种用法。 解析:使用一些IDE生成代码时,常常会在构造方法中见到super这个关键字

    注意事项

    本文(javase笔试面试简答题部分.docx)为本站会员(叶***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开