1.代码片段:

  1. byte b1=1,b2=2,b3,b6;
  2. final byte b4=4,b5=6;
  3. b6=b4+b5;
  4. b3=(b1+b2);
  5. System.out.println(b3+b6);

关于上面代码片段叙述正确的是()

A.输出结果:13

  1. B.语句:b6=b4+b5编译出错
  1. C.语句:b3=b1+b2编译出错
  1. D.运行期抛出异常
    正确答案是:C
    解析如下:
被final修饰的变量是常量,这里的b6=b4+b5可以看成是b6=10;在编译时就已经变为b6=10了
而b1和b2是byte类型,java中进行计算时候将他们提升为int类型,再进行计算,b1+b2计算后已经是int类型,赋值给b3,b3是byte类型,类型不匹配,编译不会通过,需要进行强制转换。
Java中的byte,short,char进行计算时都会提升为int类型。
 
 
 
2.关于抽象类与最终类,下列说法错误的是?
  1. A.抽象类能被继承,最终类只能被实例化。
  1. B.抽象类和最终类都可以被声明使用
  1. C.抽象类中可以没有抽象方法,最终类中可以没有最终方法
  1. D.抽象类和最终类被继承时,方法可以被子类覆盖
  2.  
  3. 答案是:D
    解析如下:
1,抽象类中可以有抽象方法,也可以没有抽象方法。
2,抽象类当然可以被继承,因为它就是用来继承的,
3,继承抽象类,若有抽象方法,则子类必须将其抽象方法实现,
4,抽象类中的非抽象方法可以被重写。
 
最终类和抽象类正好相反
5,加上final的类就叫最终类,加上final的方法就叫最终方法,
6,最终类中可以有最终方法也可以没有
7,最终类不能有子类,最终方法不能被重写
 
3.Java程序的种类有( )
A.类(Class)
B.Applet
C.Application
D.Servlet
答案:B C D
 解析:

Java程序的种类有:

(a)内嵌于Web文件中,由浏览器来观看的_Applet

(b)可独立运行的 Application

(c)服务器端的 Servlets

4.Java语言中,方法的重写(Overriding)和重载(Overloading)是多态性的不同表现。下边哪些说法是对的?

A.重写是父类和子类之间多态性的一种表现。

B.重写是一个类中多态性的一种表现。

C.重载是一个类中多态性的一种表现

D.重载是父类和子类之间多态性的一种表现。

正确答案: A C   我的答案: A B C (错误)

解析:A C 重写(Overriding)是父类与子类之间多态性的一种表现,类的不同实现可以重写父类方法,实现同方法名,同参数,同返回类型,不同的实现。重载(Overloading)最典型的就是一个类的不同构造函数,方法名相同,参数个数不同,返回类型也可以不同,重载是一个类中多态性的一种表现。

5.final、finally和finalize的区别中,下述说法正确的有?

  1. A.final用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。
  1. B.finally是异常处理语句结构的一部分,表示总是执行。
  1. C.finalizeObject类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源的回收,例如关闭文件等。
  1. D.引用变量被final修饰之后,不能再指向其他对象,它指向的对象的内容也是不可变的。
  2.  
  3. 正确答案: A B C   我的答案: A B C D (错误)
  4.  
  5. 解析:
D是错误的,理由如下:
public  class 严总 {
int ttt = 0;
public static void main(String argv[]) {
严总 test = new 严总();
final 严总 f =  test;
//f = test;编译报错,不能只想其他对象
f.ttt = 1;//可以修改内容,所以D是错误的
System.out.println("ttt=" + f.ttt);
}
使用 final 关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的。
 
6.下面有关forward和redirect的描述,正确的是?
  1. A.forward是服务器将控制权转交给另外一个内部服务器对象,由新的对象来全权负责响应用户的请求
  1. B.执行forward时,浏览器不知道服务器发送的内容是从何处来,浏览器地址栏中还是原来的地址
  1. c.执行redirect时,服务器端告诉浏览器重新去请求地址
  1. d.forward是内部重定向,redirect是外部重定向
  1. E.redirect默认将产生301 Permanently movedHTTP响应
    正确答案: B C D  
    解析:
1.从地址栏显示来说
forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器.浏览器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址.
redirect是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的URL.
 
2.从数据共享来说
forward:转发页面和转发到的页面可以共享request里面的数据.
redirect:不能共享数据.
 
3.从运用地方来说
forward:一般用于用户登陆的时候,根据角色转发到相应的模块.
redirect:一般用于用户注销登陆时返回主页面和跳转到其它的网站等.
 
4.从效率来说
forward:高.
redirect:低.
  1.  
  1. 7.Servlet的生命周期可以分为初始化阶段,运行阶段和销毁阶段三个阶段,以下过程属于初始化阶段是()。
  1. A.加载Servlet类及.class对应的数据
  1. B.创建serletRequestservletResponse对象
  1. C.创建ServletConfig对象
  1. D.创建Servlet对象

正确答案: A C D

解析:

Servlet的生命周期一般可以用三个方法来表示:

  1. init():仅执行一次,负责在装载Servlet时初始化Servlet对象
  2. service() :核心方法,一般HttpServlet中会有get,post两种处理方式。在调用doGet和doPost方法时会构造servletRequest和servletResponse请求和响应对象作为参数。
  3. destory():在停止并且卸载Servlet时执行,负责释放资源

初始化阶段:Servlet启动,会读取配置文件中的信息,构造指定的Servlet对象,创建ServletConfig对象,将ServletConfig作为参数来调用init()方法。所以选ACD。B是在调用service方法时才构造的

Servlet(Server Applet),全称Java Servlet,未有中文译文。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。 Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。 这个过程为: 1) 客户端发送请求至服务器端; 2) 服务器将请求信息发送至 Servlet; 3) Servlet 生成响应内容并将其传给服务器。响应内容动态生成,通常取决于客户端的请求; 4) 服务器将响应返回给客户端。

Servlet的生命周期可以分为初始化阶段,运行阶段和销毁阶段三个阶段,以下过程属于初始化阶段是
1.  加载Servlet类及.class对应的数据
2. 创建ServletConfig对象
3. 创建Servlet对象
 
每一次请求来到容器时,会产生HttpServletRequest与HttpServlceResponse对象,并在调用service()方法时当做参数传入。
在WEB容器启动后,会读取Servlet设置信息,将Servlet类加载并实例化,并为每个Servlet设置信息产生一个ServletConfig对象,而后调用Servlet接口的init()方法,并将产生的ServletConfig对象当作参数传入。

错题724-java的更多相关文章

  1. java错题本

    1.判断题: Java程序一般应当含有main方法,因为它是所有JaVa程序执行的入口(错) 解析:applet(java小程序)不用,application(java应用程序)需要.(见java a ...

  2. 错题集锦(二) -- Java专项

    错题集锦(二) -- Java专项 标签(空格分隔): 找工作 JVM的内存模型 线程共享: 堆(Heap):主要存放一些对象实例 方法区(Method Area / Non-Heap):用于存储已被 ...

  3. 20175316盛茂淞 《java程序设计》第三周课堂测试错题总结

    20175316盛茂淞 <java程序设计>第三周课堂测试错题总结 出现问题 错题总结 题目1 在Ubuntu中用自己的有位学号建一个文件,教材p87 Example4_15 1. 修改代 ...

  4. 【笔试题】Java 易错题精选

    笔试题 Java 易错题精选 1.写出下列程序的运行结果( )String 不变性Java 值传递 public class Test { public static void main(String ...

  5. Java 整体测试重点题 错题积累

    重点题    错题积累 1: 解析: %d:用来设置输出日志的日期和时间 %m:用来输出代码中指定的消息 %n:用来输出一个回车换行符 %l:用来输出日志事件的发生位置 %p:用来输出优先级 %f:用 ...

  6. Java多线程习题 ===重点 ,错题积累

    多线程重点,错题分析 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: . 12: 13: 14: 15:

  7. 牛客网刷题(纯java题型 31~60题)

    牛客网刷题(纯java题型 31~60题) 重写Override应该满足"三同一大一小"三同:方法名相同,参数列表相同,返回值相同或者子类的返回值是父类的子类(这一点是经过验证的) ...

  8. 牛客网刷题(纯java题型 1~30题)

    牛客网刷题(纯java题型 1~30题) 应该是先extend,然后implement class test extends A implements B { public static void m ...

  9. Ajax与JqueryUI和EasyUI错题总结

    Ajax与JqueryUI和EasyUI错题总结 正确答案A,解析:此题考察的是JQuery UI下的menu插件的使用,menu提供ui-state-disabled class 方法禁用任何菜单项 ...

  10. Linux 下报错:A Java RunTime Environment (JRE) or Java Development Kit (JDK) must解决方案

    一.报错环境:在Linux mint下,前几天还用得很好的的eclipse,今天开机不知为什么这样. Linux 下报错:A Java RunTime Environment (JRE) or Jav ...

随机推荐

  1. MonoDevelop编辑器中文乱码解决

    说解决乱码分几步,总共分三部! 1. Tools -> Options 2. 3.点击Font->点击TextEditor会出现下边选框,选取喜欢风格并且不乱码即可.

  2. MySQL两种表存储结构MyISAM和InnoDB的性能比较测试

    转载 http://www.jb51.net/article/5620.htm MySQL支持的两种主要表存储格式MyISAM,InnoDB,上个月做个项目时,先使用了InnoDB,结果速度特别慢,1 ...

  3. 转载:设置html页面不让浏览器缓存的方法

    本文是转载文章,只是方便自己记录. 在html页面head标签之间添加以下标识可以避免大多数浏览器缓存: <meta http-equiv="Pragma" content= ...

  4. nginx 的信号控制概述

    <nginx 在ubuntu 上的启动,停止,重启>中的停止和重启命令基本都是用信号来控制的.这是一些简单的信号控制. 在Nginx服务器中,通常情况都是通过对其发送控制信号进行控制的,除 ...

  5. oracle 分析函数的使用(1)

    LISTAGG(columnName,'拼接符') WITHIN GROUP(ORDER BY clause) --order by 子句决定拼接内容的顺序 LISTAGG(columnName,'' ...

  6. Linux:kill 进程

    在使用Linux时,出现端口占用.进程已启动(但处于不可控状态)情况时如何处理? 发现已知端口被占用时,可以使用netstat -apn | grep yourPort 来查看占用该端口的进程的pid ...

  7. 操作linux命令

    一.Linux下重启Tomcat 1. 进入tomcat下的bin目录:cd /user/standard/tomcat/bin; 使用关闭命令:./shutdown.sh; 查看Java进程是否关闭 ...

  8. .NET框架设计(高级框架架构模式)—钝化程序、逻辑冻结、冻结程序的延续、瞬间转移

    阅读目录: 1.开篇介绍 2.程序书签(代码书签机制) 2.1ProgramBookmark 实现(使用委托来锚点代码书签) 2.2ProgramBookmarkManager书签管理器(对象化书签集 ...

  9. 常用的js跳转页面方法实现汇总

    1.window.location.href方式 <script language="javascript" type="text/javascript" ...

  10. linux清理内存命令

    1.清理前内存使用情况 free -m 2.开始清理  echo 1 > /proc/sys/vm/drop_caches3.清理后内存使用情况 free -m4.完成! 查看内存条数命令: # ...