JAVA程序员笔试试题(09年-10年).doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
Java程序员笔试题目通常涵盖语言基础、面向对象编程、异常处理、类与对象的继承、数组创建、方法重载和覆盖等多个方面。以下是对题目中涉及知识点的详细解释: 1. 成员变量`m`的访问权限: - A、将 `private int m` 改为 `protected int m`:这会使得`m`在同一个包内的所有类以及子类中可访问。 - B、将 `private int m` 改为 `public int m`:`m`变为公共变量,任何地方都能访问。 - C、将 `private int m` 改为 `static int m`:`m`变为类变量,可以通过类名直接访问,但不再是对象的实例变量。 - D、将 `private int m` 改为 `int m`:默认访问权限,只在本类内可访问。`fun()`是静态方法,不能直接访问非静态成员。 2. 方法重载(Overloading): - A、`public void example (int m){…}`:参数列表不同,是重载。 - B、`public int example (){…}`:返回类型不同,不是重载,因为重载仅看参数列表。 - C、`public void example2(){…}`:方法名不同,不是重载。 - D、`public int example(int m,float f){…}`:参数列表不同,是重载。 3. 构造器的调用与初始化: - A、`Base(a,b);`:错误,不能直接在一个构造器中调用另一个构造器。 - B、`x=a,y=b;`:直接赋值,但没有调用父类构造器,不正确。 - C、`x=a;y=b;`:同B,不正确。 - D、`this(a,b);`:正确,调用具有相同参数的父类构造器。 4. 数组创建: - A、`float f[][]=new float[6][6];`:正确,创建一个6x6的二维浮点数数组。 - B、`float []f[]=new float[6][6];`:等价于A,正确。 - C、`float f[][]=new float[][6];`:错误,第二维长度未指定。 - D、`float [][]f=new float[6][6];`:正确,等价于A和B。 - E、`float [][]f=new float[6][];`:正确,创建一个6个元素的浮点数数组引用数组,每个元素可以是不同长度的数组。 3. 异常处理: - Java运行时系统在加载类和执行其方法时检测到错误时抛出异常。运行时异常是`java.lang.RuntimeException`类或其子类的对象。 4. 方法覆盖与重载: - 程序中`Base`类和`Child`类展示了方法覆盖(Override)和重载(Overload)的概念。`Child`类中的`Iam`方法覆盖了`Base`类中的同名方法。在`main`方法中,数组`test`包含`Base`和`Child`对象,当调用`Iam`方法时,由于多态性,实际调用的是`Child`类的方法。 5. 程序问题与解决方案: - 行1:缺少`new`关键字,应为`OutputStreamWriter out = new OutputStreamWriter(...);` - 行2:缺少`DriverManager.getConnection`调用来获取`Connection`,例如`java.sql.Connection conn = DriverManager.getConnection("jdbc:...");` - 行12:应为`conn.close()`关闭连接。注意,`ResultSet`和`Statement`也需要关闭以释放资源,即添加`rs.close();`和`stat.close();` 这些知识点体现了Java编程的基础和核心概念,包括访问修饰符、方法重载与覆盖、异常处理、构造器的使用以及多态性等。在面试或笔试中,理解并掌握这些概念至关重要。
- 粉丝: 87
- 资源: 2万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助