"中山大学Java软件工程师试题A_02,包含了Java编程语言的相关测试题目,涉及类、修饰符、变量、数组、字符串等基础知识。"
这篇Java软件工程师的试题涵盖了多个关键知识点,以下是根据题目内容解析的部分要点:
1. **修饰符与常量**:
题目问到哪个修饰符可以用于定义成员常量,答案是B. final。在Java中,常量通常用final关键字来定义,表示一旦赋值后不能修改。
2. **Java文件命名与类结构**:
代码示例展示了类Sub和Super的结构,其中Sub类试图访问Super类的成员变量i。Java中,类名与文件名应保持一致,且主类(包含main方法的类)的文件应以类名为命名。这段代码能编译并运行成功,输出1,因为Super类的构造器将i设置为1,然后在main方法中输出。
3. **访问修饰符**:
问题询问如何使成员变量m被函数fun()直接访问。答案是D. 将private int m改为static int m。由于fun()是静态方法,它无法直接访问非静态成员变量m,因此需要将m声明为静态(static)。
4. **后置自增操作符**:
后置自增操作符(i++)会先返回当前值,然后增加变量。所以,j=i++后,j的值为1,接着i被增加为2。答案是B. 1, 2。
5. **条件语句**:
代码段中的条件语句检查布尔变量m是否为false。如果m为false,将打印"false";否则,打印"true"。由于m未初始化,其值是不确定的,编译时不会报错,但运行时会抛出异常。答案是D. 运行时会出现错误。
6. **数组的创建**:
提供了几个创建数组的语句,其中错误的是C. float f[][]=new float[][6]。因为这会导致创建一个空数组,即未指定第二维数组的长度,编译时会报错。
7. **字符串对象**:
最后的代码段创建了一个String对象,但没有给出完整的代码,通常String对象的创建和使用涉及到字符串常量池的概念,以及String的不可变性。
这些题目考察了Java的基础语法、类与对象、访问控制、运算符优先级、数组操作和异常处理等多个方面,对于Java软件工程师来说,理解和掌握这些知识点是必要的。通过解答这些问题,可以评估候选人在Java编程方面的技能和理解深度。