Java基础笔试练习(一)

Java基础笔试练习(一)

1. 若在某一个类定义中定义有以下的方法: abstract void performDial( ); 该方法属于() ?

A.本地方法 B.最终方法 C.静态方法 D.抽象方法java

答案: Dgit

解析:github

  • 本地方法:简单地讲,一个native Method就是一个java调用非java代码的接口;native方法表示该方法要用另一种依赖平台的编程语言实现。
  • 最终方法:final void B(){},这样定义的方法就是最终方法,最终方法在子类中不能够被重写,也就是说,若是有个子类继承了这个最终方法所在的类,那么这个子类中不能出现void B(){}这样的方法。
  • 最终类:final class A {},这样定义的类就是最终类,最终类不能被继承。
  • abstract修饰抽象类

2.在为传统面向对象语言的程序作单元测试的时候,常常用到mock对象。Mock对象经过反射数。请问反射最大程度破坏了面向对象的如下哪一个特性?

A.封装 B.多态 C.继承 D.抽象面试

答案: A编程

解析: A.封装 反射破坏代码的封装性,破坏原有的访问修饰符访问限制数组

3.如下程序的执行结果是:

static boolean foo(char c) {
		System.out.print(c);
		return true;
	}

public static void main1(String[] args) {
	int i = 0;
	for (foo('A'); foo('B') && (i < 2); foo('C')) {
		i++;
		foo('D');
	}
}
复制代码

A.ABDCBDCB B.ABCDABCD C.编译时出错 D.运行时抛出异常bash

答案: A微信

解析: 略,代码敲一遍就知道了= =!jsp

  1. 一个完整的URL地址由(),(),端口和文件四部分组成。

A.协议 用户名 B.协议 主机名 C.主机名 ip D.以上都不正确编程语言

答案: B

解析: **URL(Uniform Resource Locator) **,统一资源定位符,可以对因特网的资源进行定位。 URL通常有四部分组成: <协议>://<主机>:<端口>/<路径>

  • 如今最经常使用的<协议>为http协议。
  • <主机>是指主机在因特网上的域名。
  • http协议的默认<端口>为80(能够省略)。
  • <路径>是指要活的的文件的路径。

5.如下程序的输出结果是?

public class Example {
    String str = new String("good");
    char[] ch = { 'a', 'b', 'c' };
 
    public static void main(String args[]) {
        Example ex = new Example();
        ex.change(ex.str, ex.ch);
        System.out.print(ex.str + " and ");
        System.out.print(ex.ch);
    }
 
   public static void change(String str, char ch[])      
   {
        str = "test ok";
        ch[0] = 'g';
    }
}

复制代码

A.good and abc B.good and gbc C.test ok and abc D.test ok and gbc

答案: B

解析: 考察值传递和引用传递。对于值传递,拷贝的值用完以后就会被释放,对原值没有任何影响,可是对于引用传递,拷贝的是对象的引用,和原值指向的同一块地址,即操做的是同一个对象,因此操做之间会相互影响 因此对于String str是值传递,操做之间互不影响,原值保持不变。而ch是数组,拷贝的是对象的引用,值发生了改变,所以选择B

6.下面有关servlet service描述错误的是?

A.无论是post仍是get方法提交过来的链接,都会在service中处理 B.doGet/doPost 则是在 javax.servlet.GenericServlet 中实现的 C.service()是在javax.servlet.Servlet接口中定义的 D.service判断请求类型,决定是调用doGet仍是doPost方法

答案: B

解析: doGet/doPost 则是在 javax.servlet.http.HttpServlet 中实现的

7.如下代码运行输出的是

public class Person{
    private String name = "Person";
    int age=0;
}
public class Child extends Person{
    public String grade;
    public static void main(String[] args){
        Person p = new Child();
        System.out.println(p.name);
    }
}
复制代码

A.输出:Person B.没有输出 C.编译出错 D.运行出错

答案: C

解析: Java中对字段属性是静态绑定,方法成员是动态绑定,这里错在:在子类中试图访问父类的private字段,因此编译不经过,将private去掉就可访问,不是动态绑定的问题,它原本就属于静态绑定。

8. 在 myjsp.jsp 中,关于下面的代码说法错误的是: ( )

<%@ page language="java" import="java.util.*" errorPage="error.jsp" isErrorPage="false" %>

A.该页面可使用 exception 对象 B.该页面发生异常会转向 error.jsp C.存在 errorPage 属性时,isErrorPage 是默认为 false D.error.jsp 页面必定要有isErrorPage 属性且值为 true

答案: A

解析: exception是JSP九大内置对象之一,其实例表明其余页面的异常和错误。只有当页面是错误处理页面时,即isErroePage为true时,该对象才可使用。对于C项,errorPage的实质就是JSP的异常处理机制,发生异常时才会跳转到errorPage指定的页面,不必给errorPage再设置一个errorPage。因此当errorPage属性存在时, isErrorPage属性值为false

9.Java对象的初始化方式有( )

A.初始化块 B.构造器 C.定义变量时指定初始化值 D.其它各项都不对

答案: A B C

解析:

对象的初始化方式: 1.new时初始化 ; 2.静态工厂 newInstance; 3.反射Class.forName(); 4.clone方式; 5.反序列化;

推荐

Java笔试内容集合 持续更新中....

文末

欢迎关注我的微信公众号:Coder编程 获取最新原创技术文章和免费学习资料,更有大量精品思惟导图、面试资料、PMP备考资料等你来领,方便你随时随地学习技术知识!

文章收录至 Github: github.com/CoderMerlin… Gitee: gitee.com/573059382/c… 欢迎关注并star~

微信公众号
相关文章
相关标签/搜索