• java基础10题


    1.在 main() 方法中给出数组buffer和下标i,如果将此下标中的元素显示到控制台上,需要使用( )。
    A.System.out.print (buffer[i]);
    B.FileOutputStream fout = new FileOutputStream(this.filename);
    C.FileInputStream fin = new FileInputStream(this.filename);
    D.System.in.read(buffer)。
    2.以下会产生精度丢失的类型转换是( )
    A.float a=10
    B.int a=(int)8846.0
    C.byte a=10; int b=-a
    D.double d=100
    3.下面输出的结果为

    public static void main(String args[]) {
    System.out.println(14^3);
    }
    
    • 1
    • 2
    • 3

    4.如果希望监听TCP端口9000,服务器端应该怎样创建socket?
    A.new Socket(“localhost”,9000);
    B.new ServerSocket(9000);
    C.new Socket(9000);
    D.new ServerSocket(“localhost”,9000);
    5.Java 多线程有几种实现方法?( )
    A.继承Thread类
    B.实现Runnable接口
    C.实现Thread接口
    D.以上都不正确
    6.下面程序输出的结果为

    public class ExceptionTest
    {
        public void method()
        {
            try
            {
                System.out.println("进入到try块");
            }
            catch (Exception e)
            {
                 System.out.println("异常发生了!");
            }
            finally
            {
                System.out.println("进入到finally块");
            }
                System.out.println("后续代码");
     }
         public static void main(String[] args)
         {
             ExceptionTest test = new ExceptionTest();
             test.method();
         }
     }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    7.下面程序输出额的结果为

    public class Demo {
        public static String sRet = "";
        public static void func(int i)
        {
            try
            {
                if (i%2==0)
                {
                    throw new Exception();
                }
            }
            catch (Exception e)
            {
                sRet += "0";
                return;
            } 
            finally
            {
                sRet += "1";
            }
            sRet += "2";
        }
        public static void main(String[] args)
        {
            func(1);
            func(2);
            System.out.println(sRet);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29

    8.下面程序输出的结果为

    class Base{
        public Base(String s){
            System.out.print("B");
        }
    }
    public class Derived extends Base{
        public Derived (String s) {
            System.out.print("D");
        }
        public static void main(String[] args){
            new Derived("C");
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    9.下面哪些接口直接继承自Collection接口()
    A.List
    B.Map
    C.Set
    D.Iterator
    10.下面有关servlet的层级结构和常用的类,说法正确的有?
    A.GenericServlet类:抽象类,定义一个通用的、独立于底层协议的Servlet。
    B.大多数Servlet通过从GenericServlet或HttpServlet类进行扩展来实现
    C.ServletConfig接口定义了在Servlet初始化的过程中由Servlet容器传递给Servlet得配置信息对象
    D.HttpServletRequest接口扩展ServletRequest接口,为HTTP Servlet提供HTTP请求信息

    (1)A
    在main中已经给出字节数组,直接System.out.print();输出即可。BC都是文件输出输入流,D是标准输入流,所以不符合题意。
    (2)B选项,因为java语言的浮点类型默认是double类型,而不是float,所以是大范围到小范围,就损失了精度。
    (3)13
    按位异或符:相同取0,不同取1。11100011=1101十进制为13
    (4)B
    ServerSocket(int port)方法创建一个server socket 绑定一个端口
    (5)AB
    创建线程的方法
    (1)直接定义一个类继承线程类Thread,重写run()方法,创建线程对象,调用线程对象的start()方法启动线程
    (2)定义一个线程任务类实现Runnable接口,重写run()方法,创建线程任务对象,把线程任务对象包装成线程对象, 调用线程对象的start()方法启动线程
    (3)定义一个线程任务类实现Callable接口,申明线程执行的结果类型;重写线程任务类的call方法,这个方法可以直接返回执行的结果
    创建一个Callable的线程任务对象,把Callable的线程任务对象包装成一个未来任务对象FutureTask;把未来任务对象包装成线程对象,调用线程的start()方法启动线程
    (6)进入到try块 进入到finally块 后续代码
    若try-catch语言中有return,则保存return的值,执行finally,若finally中无return,则返回之前保存的return值,若finally中有return,则用finally中的return覆盖try-catch中的return
    (7)1201
    在catch捕获异常并最终指向finally语句时,其后面的不执行。
    (8)编译错误
    在调用子类构造器之前,会先调用父类构造器,当子类构造器中没有使用"super(参数或无参数)"指定调用父类构造器时,是默认调用父类的无参构造器,如果父类中包含有参构造器,却没有无参构造器,则在子类构造器中一定要使用“super(参数)”指定调用父类的有参构造器,不然就会报错。
    (9)AC
    (10)正确答案: A B C D

  • 相关阅读:
    到底什么是Linux?快进来学习!
    css中BFC外边距塌陷解决办法
    JDBC详解
    SVG: 可伸缩的矢量图形
    Selenium选择器小结
    [esp32-wroom]基础开发
    提升团队能力的真正利器不是培训而是复盘,
    CSS 浮动布局
    ubuntu22.04 电脑声音和腾讯会议等声音很小怎么修复
    常用的开源无代码测试工具
  • 原文地址:https://blog.csdn.net/Nicholas_giao/article/details/126748418