收藏 分销(赏)

2023年JAVA基础面试题.doc

上传人:二*** 文档编号:4576802 上传时间:2024-09-30 格式:DOC 页数:8 大小:68.54KB 下载积分:5 金币
下载 相关 举报
2023年JAVA基础面试题.doc_第1页
第1页 / 共8页
本文档共8页,全文阅读请下载到手机保存,查看更方便
资源描述
JAVA基础面试题 一、判断 1.        一个 Java 源文献中只能定义一个公有类,并且类名必须与文献名一致。(     ) 2.        通过在程序中引入 “import javax.swing.*;” 语句,就可以使用 javax.swing 包中的所有类(涉及其嵌套的子包中的类)。 (     ) 3.        J2SE 的功能是 J2ME 的一个子集。(     ) 4.        Java 字节码只有被装入到内存中之后,才干被执行。(     ) 5.        Swing 是一套 GUI 组件,采用了新的思绪设计 Java 应用程序的界面,它完全地替换掉了原有的 AWT。(     ) 6.        在编程时编写过多的注释,会使编译之后生成的程序文献变大。(     ) 7.        Java Applet 可运营于浏览器中,这意味着浏览器自身就可以直接执行 Applet 程序。(     ) 8.        JDK 5.0 增长的枚举类型( enum )是一个原始数据类型。(      ) 9.        Java 规定所有的方法都必须放到某个类中,不存在独立于类的方法。(     ) 10.    面向对象软件系统设计师们经常用到的 UML 是一种编程语言。(     )   二、简答 11.        现代编程语言有很多种分类方法,以下是我们常见的一种划分方法:        ( 1 ) “ 编译型 ” 编程语言: 比如 C ,程序源码必须通过编译才干运营;        ( 2 ) “ 解释型 ” 编程语言: 这种类型的语言(比如初期的 Basic )通常都拥有一个交互环境,用户输入一句代码计算机就执行一句代码。        Java 属于上述哪种类型?假如你认为 Java 不属于上述任何一种类型,那么它是不是属于此外一种编程语言类型? 12.        Java 中有两个关键字: void 和 null ,它们有什么区别? 13.        简述 “ 类( class ) ” 、 “ 类库 (class library)” 、 “ 包( package ) ” 、 “jar 文献 ” 这四个概念间的联系。 14.        面向对象的程序在运营时会创建多个对象,这些对象之间通常可以互相 “ 发送消息 ” ,谈谈你对 “ 对象之间发送消息 ” 这句话的理解,并编写几句 Java 示例代码展示对象之间发送消息的具体编程实现方法。 15.        加法运算符 “+” 可以施加于原始数值类型(比如 int )的变量,但我们发现一些对象类型(比如 Integer )的变量,也支持 “+” 运算:     Integer v1 = 100;     Integer v2 = 200;     System.out.println(v1 + v2 );  // 输出: 300        这看上去好象 Integer 类型重载了 “+” 运算符,一些编程语言比如 C++ 可以重载运算符,但 Java 自身并不支持这一特性。依你的理解或猜测, Java 采用什么方法解决两个 Integer 对象直接 “ + ” 的语句? 16.        在一个很大的循环(比如循环 100000 次)中,假如需要进行大量字符串的连接操作,通常人们会使用 StringBuffer (或 StringBuilder )而不是 String 类型,请解释这么做的理由。 17.        现有两个长度不同的数组:     int[] arr1 = new int[10];     int[] arr2 = new int[100];     那么以下语句能通过编译吗?     arr1 = arr2;     假如你认为可以通过编译,得到这个结论的依据是什么?假如不能通过编译,你认为其因素是什么? 18.   请看以下代码 :     double d1 = 100.1;     double d2 = 1001/10;     System.out.println(d1 == d2);  // 输出 : false        明明 d1 与 d2 是相等的 , 为什么程序运营时会输出一个让人意外的结果 : false ? 19.        当使用多个 catch 语句捕获多个异常时, Java 规定捕获 Exception 的 catch 语句必须排在最后,如下所示:     try { …… }     catch(ClassCastException ex){ …… }     catch(NumberFormatException ex){ …… }     catch(Exception ex){ …… }  // 此句必须放在最后!     为什么会有这个限制?谈谈你的理解。 20. 请看以下示例代码:     String s1 = "Hello";     String s2 = "Hello";     System.out.println(s1 == s2);  // 输出: true     String s3 = new String("Hello");     String s4 = new String("Hello");     System.out.println(s3 == s4);  // 输出: false        请解释一下为什么上述代码中 “System.out …” 两句代码输出完全不同的结果 ?   三 编程 21.        编写一个程序,用户输入任何一个字符串之后,反转输出其结果。其运营结果如下所示:        请输入一个字串:我在学习 Java 程序设计        您输入了:计设序程 avaJ 习学在我 22.        编写一个方法,它接受一个 int 数组作为参数,外界只需调用一次这个方法,可以立即得到这个数组的最大值、最小值和平均值信息。 23.        请编写一个方法,其声明如下:      public static int[] getRandomizeNumbers(int begin, int end, int count)      此方法将生成一个数组 , 包容 count 个 [begin,end) 范围内的随机整数 . 24.        数学中,一个复数包容着一个实部( Real )和一个虚部( Imaginary )。请设计一个 Complex 类,它的实例代表一个复数,并且用户可以这样使用它:      // 创建一个实部为 3 ,虚部为 4 的复数     Complex obj = new Complex(3,4);     //Complex 对象具有按照数学中复数的习惯表达形式输出的能力。     System.out.println(obj);  // 输出: 3+4i 25.        A 、 B 、 C 是三个类,它们之间有着以下的组合关系( 图 1 ):          请编写一个示例程序,这个程序可以完毕对 A 对象的深复制( deep copy )。 26.        我们可以调用 Integer.parseInt() 方法将一个字串转换为 int 类型,但当要转换的字串不是一个有效的数字时(比如 “a123” ),此方法会抛出一个 NumberFormatException 。 你需要编写一个程序,当程序运营时让用户从键盘上输入一个字串,代表考试成绩,然后调用 Integer.parseInt() 方法将其转换为 int 类型,并给出是否通过的提醒:        请输入您的考试成绩: 76        恭喜您通过了考试!        由于无法控制用户的输入,因此也许出现以下两种犯错情况: (1)     用户输入了一个无法转换为 int 类型的字符串。 (2)     用户输入的数字不在 [0,100] 区间内。        请设计一个自定义的异常类 InvalidScoreException ,当出现上述犯错情景时能抛出此异常对象。规定程序运营时,对用户的错误输入能给以明确的提醒。 27.   设计一个类,实现以下的状态机:         提醒:        图 2 说明,当使用 new 关键字创建此类对象时,对象居于 Created 状态(这是初始状态),这时,调用对象的 open() 方法,对象转换到 Opened 状态,再调用对象的 close() 方法,对象转入“ Closed ”状态,这是终止状态。      28    一个图书管理系统的面向对象设计方案如 图 3 所示:        Book 代表书,有 “Name (书名) ” 、 “Author (作者名) ” 、 “Price (单价) ” 和 “IsBorrowed (是否被借 出) ” 四个属性。        类 Library 代表图书馆,其内部字段 books 用于保存图书馆中所有的书。它的 FindBook() 方法依据书名查找同名的书(也许有多本)。另一个 Get AllBooks() 方法获取馆藏所有书的具体信息。        类 Reader 代表读者, Name 字段代表其姓名,读者可以 “ReturnBook (还书) ” 和 “BorrowBook (借书) ” 。        请编程完毕以下工作: 1.              用 Java 编程实现上述 3 个类。 2.              在 main() 方法内书写以下测试代码: (1)     创建一个 Library 类的实例 myLittleLibrary ,其中预存有以下 3 本书:               Java 程序设计,张三著, 45 元               Java 核心技术,李四著, 50 元               Java 程序设计,王五著, 38 元 (2)     显示图书馆中所有图书的信息,输出样例如下:               Java 程序设计,张三著, 45 元,可借               Java 核心技术,李四著, 50 元,可借               Java 程序设计,王五著, 38 元,未还 (3)     创建一个 Reader 类的实例 oneBeautifulGirl ,她先在 myLittleLibrary 中查找《 Java 程序设计》 (4)     oneBeautifulGirl 借了张三著的那一本书。现在显示图书馆中所有图书的信息 . (5)     oneBeautifulGirl 把书还了,再次显示图书馆中图书信息。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 考试专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服