首页 > 编程语言 >软件开发----Java基础每日刷题(转载于牛客)

软件开发----Java基础每日刷题(转载于牛客)

时间:2024-10-15 16:47:27浏览次数:3  
标签:HttpServlet 4399 Java 正确 编译 request ---- 牛客 解析

1.        A 是抽象父类或接口, B , C 派生自 A ,或实现 A ,现在 Java 源代码中有如下声明:

1. A  a0=new  A();

2. A  a1 =new  B();

3. A  a2=new  C();

问以下哪个说法是正确的?( )

A        第1行不能通过编译

       第1、2行能通过编译,但第3行编译出错

       第1、2、3行能通过编译,但第2、3行运行时出错

       第1行、第2行和第3行的声明都是正确的

正确答案:A

解析:

抽象类或接口不能实例化。

第1行肯定不能通过编译。

第2行和第3行,若B和C是抽象父类或接口,也不能通过编译。

题目不严谨。


2.        J2EE中,当把来自客户机的HTTP请求委托给servlet时,会调用HttpServlet的( )方法

       service

B        doget

C        dopost

D        init

正确答案:A

解析:

HttpServlet容器响应Web客户请求流程如下:

1)Web客户向Servlet容器发出Http请求;

2)Servlet容器解析Web客户的Http请求;

3)Servlet容器创建一个HttpRequest对象,在这个对象中封装Http请求信息;

4)Servlet容器创建一个HttpResponse对象;

5)Servlet容器调用HttpServlet的service方法,这个方法中会根据request的Method来判断具体是执行doGet还是doPost,把HttpRequest和HttpResponse对象作为service方法的参数传给HttpServlet对象;

6)HttpServlet调用HttpRequest的有关方法,获取HTTP请求信息;

7)HttpServlet调用HttpResponse的有关方法,生成响应数据;

8)Servlet容器把HttpServlet的响应结果传给Web客户。

doGet() 或 doPost() 是创建HttpServlet时需要覆盖的方法.


3.        在一个基于分布式的游戏服务器系统中,不同的服务器之间,哪种通信方式是不可行的()?

A        管道

B        消息队列

C        高速缓存数据库

D        套接字

正确答案:A

解析:

对于管道,有下面这几种类型:

①普通管道(PIPE):通常有两种限制,一是单工,即只能单向传输;二是血缘,即常用于父子进程间(或有血缘关系的进程间)。

②流管道(s_pipe):去除了上述的第一种限制,实现了双向传输。

③命名管道(name_pipe):去除了上述的第二种限制,实现了无血缘关系的不同进程间通信。

显然,要求是对于不同的服务器之间的通信,是要要求全双工形式的,而管道只能是半双工,虽然可以双向,但是同一时间只能有一个方向传输,全双工和半双工的区别可以如下图示理解:


4.        下面哪个不属于HttpServletResponse接口完成的功能?

A        设置HTTP头标

B        设置cookie

       读取路径信息

D        输出返回数据

正确答案:C

解析:

A:设置HTTP头标  

response.setHeader("Refresh","3"); //三秒刷新页面一次

B:设置cookie

Cookie c1 = new Cookie("username","only");
response.addCookie(c1);

C(错误):读取路径信息,request读取路径信息

从request获取各种路径总结 
request.getRealPath("url"); // 虚拟目录映射为实际目录
request.getRealPath("./");    // 网页所在的目录
request.getRealPath("../"); // 网页所在目录的上一层目录
request.getContextPath();    // 应用的web目录的名称

D:输出返回数据

HttpServleteResponse.getOutputStream().write()

5.        已知 boolean result = false,则下面哪个选项是合法的:

A        result=1

B        result=true;

C        if(result!=0) {//so something…}

D        if(result) {//do something…}

正确答案:BD

解析:

1、boolean类型只有两个直接量值:true和false.

2、除成员变量会有默认初始值外,其他变量必须在第一次使用之前初始化


6.        下列符号中可以在 java 程序里表示单行注释的是( )

       --

       /* ……*/

       //

D        /** ……*/

正确答案:C


7.        程序文件名必须与公共外部类的名称完全一致(包括大小写).

A        正确

B        错误

正确答案:A

解析:

一个java文件里可以有多个class,但是只能有一个public class外部类,并且类名必须和.java文件名相同


8.        问这个程序的输出结果。

class Base

{

    public void method()

    {

        System.out.println("Base");

    } 

}

class Son extends Base

{

    public void method()

    {

        System.out.println("Son");

    }

     

    public void methodB()

    {

        System.out.println("SonB");

    }

}

public class Test01

{

    public static void main(String[] args)

    {

        Base base = new Son();

        base.method();

        base.methodB();

    }

}

A        Base SonB

B        Son SonB

C        Base Son SonB

       编译不通过

正确答案:D

解析:

多态成员访问特点

成员变量:编译看左边,运行看左边

静态变量:编译看左边,运行看左边

成员方法:编译看左边,运行看右边

静态方法:编译看左边,运行看左边


9.        以下 json 格式数据,错误的是

A        {company:4399}

B        {"company":{"name":[4399,4399,4399]}}

       {[4399,4399,4399]}

       {"company":[4399,4399,4399]}

E        {"company":{"name":4399}}

正确答案:AC

解析:

JSON由{键:值}组成,需要注意的是:
1)键用引号(单双都行)引起来,也可以不使用引号;
2)值得取值类型:
1. 数字(整数或浮点数)
2. 字符串(在双引号中)
3. 逻辑值(true 或 false)
4. 数组(在方括号中) {"persons":[value1 , value2]}
5. JSON对象(在花括号中) {"address":{"province":"陕西"....}}
6. null

据此分析,BDE是对的,A中冒号是中文冒号,C中没有键


10.        下面的Java赋值语句哪些是有错误的 ()

A        int i =1000;

B        float f = 45.0;

C        char s = ‘\u0639’;

       Object o = ‘f’;

E        String s = "hello,world\0";

F        Double d = 100;

正确答案:BF

解析:

b:小数如果不加 f 后缀,默认是double类型。double转成float向下转换,意味着精度丢失,所以要进行强制类型转换。

c:是使用unicode表示的字符。

d:'f' 字符会自动装箱成包装类,就可以向上转型成Object了。

f:整数默认是int类型,int类型不能转型为Double,最多通过自动装箱变为Integer但是Integer与Double没有继承关系,也没法进行转型。

标签:HttpServlet,4399,Java,正确,编译,request,----,牛客,解析
From: https://blog.csdn.net/weixin_62803673/article/details/142937657

相关文章

  • Flux 文生图模型,一键整合包!解压即用,出图效果惊艳
    朋友们!今天给大家带来一款全新且超强的AI文生图神器——Flux文生图模型!(最低N卡3060以上电脑)由知名AI开发团队BlackForestLabs(黑森林实验室)打造,这款高质量的文本到图像生成模型在多个方面展现了超凡的性能。无论是细腻的手部细节、复杂的多主体场景,还是中文文本......
  • U盘数据恢复教程(原始人看了都会的教程)
    一、下载软件步骤1---本地地址:链接:https://pan.baidu.com/s/1ZasTeOc315oFpJ11zkMNQw 步骤2---解压直接是执行程序打开即可 步骤3---恢复数据---数据恢复不能放在恢复盘步骤4---选择一个盘符存储恢复的数据 步骤5---数据恢复成功......
  • 会讲故事的I2C通信时序
    前言:    相信各位在学习STM32时候的I2C通信肯定特别苦恼吧,这是什么通信时序,为什么起始终止发送SCL和SDA要那样,即使是深刻学习理解了一遍,时间长了之后也容易忘记,因为记的都是概念性的东西,枯燥无味的概念文字确实长时间后就容易忘记,那有没有什么方法可以让自己记牢一点......
  • Java 时间格式转换详解
    在Java开发中,时间和日期的处理是非常常见的需求。无论是用户输入的时间数据,还是系统生成的时间戳,我们经常需要对其进行格式化或解析。本文将详细介绍如何在Java中进行时间格式的转换,并分别介绍两种主要的方法:SimpleDateFormat(适用于Java8之前)和 java.time(适用于Java8......
  • 2024.10.8(周二)
    importjava.io.*;importjava.util.*;importcom.fasterxml.jackson.databind.ObjectMapper;importorg.w3c.dom.*;importjavax.xml.parsers.*;importjavax.xml.transform.*;importjavax.xml.transform.dom.DOMSource;importjavax.xml.transform.stream.StreamRes......
  • 习题2.4
    1.代码实现点击查看代码importnumpyasnpimportmatplotlib.pyplotasplt#定义x的范围x=np.linspace(-10,10,400)#创建一个2行3列的子图网格fig,axs=plt.subplots(2,3,figsize=(12,8))#遍历k值,并在对应的子图中绘制函数图像k_values=[1,2,3,4,......
  • 习题2.5(1)
    1.代码实现点击查看代码importnumpyasnpimportmatplotlib.pyplotasplt#横纵坐标x=np.linspace(-5,5,100)y=np.linspace(-5,5,100)#网格生成X,Y=np.meshgrid(x,y)#写法一plt.rc('font',family='SimHei')plt.rc('axes',unicode_minus=False)#写法二......
  • [ABC062C]/[ARC074A] Chocolate Bar 题解
    神秘分讨题(?总共\(4\)中情况。第一种:三个竖的并列:ans=min(ans,(h%3>0)*w);。第二种:三个横的并列:ans=min(ans,(w%3>0)*h);。第三种:一个横的矩形,然后是两个竖着的。For(i,1,h){ intfst=i*w; intscd=(w/2)*(h-i); intthd=(w%2>0)*(h-i)+(w/2)*(h-i); ans=min(ans......
  • 关于微软的账号
    微软账号在我看来分两层,一层是跟office应用相关的账号,登录url为https://account.microsoft.com/,这里可以管理对microsoft365相关产品和服务的订阅。主要是office365,word,excel,outlook等。还可以登录https://www.microsoft365.com/当你注册一个微软的免费版的outlook邮箱......
  • Kubernets 生成永不过期的token
    [root@k8s-master-01~]#kubeadmtokencreate--ttl0m3g8ci.usn0m7xw6xp266xe[root@k8s-master-01~]#kubeadmtokencreate--ttl0c5g3ke.7tcrrnkq6nrov9gk[root@k8s-master-01~]#kubeadmtokenlistTOKENTTLEXPIRESUSAGES......