栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java选择题《每日一练》

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java选择题《每日一练》

文章目录

  1. (C#、JAVA)扩展方法能访问被扩展对象的public成员
    正确答案: A 你的答案: A (正确)

    不能

子类方法能否访问父类的public成员

  1. Java 语言中创建一个对象使用的关键字是()
    正确答案: C 你的答案: C (正确)
    class
    interface
    new
    create

没有女朋友怎么办?new一个

  1. 以下关于Integer与int的区别错误的是
    正确答案: D 你的答案: C (错误)
    int是java提供的8种原始数据类型之一
    Integer是java为int提供的封装类
    int的默认值为0
    Integer的默认值为1

八大基本数据类型(byte,short,int,long,double,float,char,boolean)
Integer是 int 包装类
Integer 是类 默认是null ,表示的对象,用一个引用指向这个对象
int 是基本数据类型,直接存储值, 默认是 0

  1. 下列不属于访问控制符的是()
    正确答案: D 你的答案: D (正确)
    public
    private
    protected
    static

public 公有 private私有 protected受保护
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块。

  1. 在某个类A中存在一个方法:void set(int x),以下不能作为这个方法的重载的声明的是()
    正确答案: A 你的答案: A (正确)
    void set(int y)
    int set(int x,double y)
    double set(int x,int y)
    void set(int x,int y)

方法重载:方法名称相同,参数列表不同(可以是参数的类型,个数,顺序不同)

  1. 为初始化其成员变量,每个类都定义的方法是()
    正确答案: C 你的答案: C (正确)
    方法
    main
    构造方法
    对象

构造方法的作用是对象初始化(属性初始化)

  1. 类 ABC 定义如下:
    1 . public class ABC{
    2 . public int max( int a, int b) { }
    3 .
    4 . }
    将以下哪个方法插入行 3 是不合法的。( )。
    正确答案: B 你的答案: B (正确)
    public float max(float a, float b, float c){ }
    public int max (int c, int d){ }
    public float max(float a, float b){ }
    private int max(int a, int b, int c){ }

重载:
1、 重载是在编译器通过方法中形参的静态类型确定调用方法版本的过程。
2、 重载是多态在编译期的表现形式
3、 重载的判定只有两个条件(其他的条件都不能作为判定):
1、 方法名一致
2、形参列表不同

重写:满足一个规则:两同两小一大
1、两同:方法名和形参列表一致
2、两小:重写方法的返回值(引用类型)和抛出异常,要和被重写方法的返回值(引用类型)和抛出异常相同或者是其子类。注意,一旦返回值是基本数据类型,那么重写方法和被重写方法必须相同,且不存在自动拆装箱的问题。
3、一大:重写方法的访问修饰符大于等于被重写方法的访问修饰符。

  1. 关于下面程序 ThisTest .java 运行结果 说法正确的是 : ( )
    public class ThisTest {
    public static void main(String args[]) {
    String x=“7”;
    int y = 2;
    int z=2;
    System.out.println(x+y+z);
    }
    }
    正确答案: B 你的答案: B (正确)
    11
    722
    22
    程序有编译错误

+号两边如果有一边为字符类型 则为字符串连接
如果变为y+z+x 则等价于(y+z)+x 输出47

  1. 以下关于Object类的说法正确的是()
    正确答案: A 你的答案: C (错误)
    Java中所有的类都直接或间接继承自Object,无论是否明确的指明,无论其是否是抽象类。
    Java中的接口(interface)也继承了Object类
    利用“==”比较两个对象时,Java调用继承自Object的equals方法,判断是否相等。
    如果类的定义中没有重新定义toString()方法,则该类创建的对象无法使用toStrig()

A,Object是所有类的直接或者间接父类。
B,接口没有继承Object类。(一旦继承,Object中可以有实例方法的)
C,Object的equals方法,只有一句话,return this==object。这句话说反了。
D,和A一样,都是Object的子类了,肯定有Object的方法:hashCode、equals、toString、clone、notify、notifyall、wait、finalize、getClass

  1. 在 JAVA 编程中, Java 编译器会将 Java 程序转换为( )
    正确答案: A 你的答案: A (正确)
    字节码
    可执行代码
    机器代码
    以上都不对

编译器将java源代码编译成字节码class文件
类加载到JVM里面,执行引擎把字节码转为可执行代码
执行的过程,再把可执行代码转为机器码,由底层的操作系统执行。

C++是编译型语言,源码直接变成机器码。
Java是解释型语言,会先生成中间码(字节码),然后由解释器(JVM内置)解释字节码到机器码。

  1. Java 源程序文件的扩展名为()
    正确答案: A 你的答案: A (正确)
    .java
    .class
    .exe
    .jar

java中源文件的后缀为.java,经过javac.exe编译后生成字节码文件,后缀为.class,再经过java.exe编译为可执行文件,后缀为.exe。

  1. 一般用()创建InputStream对象,表示从标准输入中获取数据,用()创建OutputStream对象,表示输出到标准输出设备中。
    正确答案: A 你的答案: C (错误)
    System.in System.out
    System.out System.in
    System.io.in System.io.out
    System.io.out System.io.in

System.in 和 System.out 是java中的标准输入输出流,一般情况下代表从控制台输入和输出到控制台

  1. 下列选项中符合Java命名规则的标识符是()
    正确答案: D 你的答案: D (正确)
    2japro
    &Class
    const
    _123

Java 标识符有如下命名规则:
由26个英文字母大小写,数字:0-9 符号:_ $ 组成
标识符应以字母、_ 、$开头。
标识符不能是关键字。
Java中严格区分大小写

  1. 如下代码的 结果是什么 ?
    class base {
    base() {
    System.out.print(“base”);
    }
    }
    public class Alpha extends base {
    public static void main( String[] args ) {
    new Alpha();
    //调用父类无参的构造方法
    new base();
    }
    }

在执行new Alpha()时,会先执行父类的构造方法,在执行相应的子类的构造方法,所以此处会打印base,在执行new base()时,会直接执行base中无参构造器的代码,再输出base,所以选B

  1. 下面代码运行结果是?
    public class Test
    {
    static boolean foo(char c)
    {
    System.out.print©;
    return true;
    }
    public static void main( String[] argv )
    {
    int i = 0;
    for ( foo(‘A’); foo(‘B’) && (i < 2); foo(‘C’))
    {
    i++ ;
    foo(‘D’);
    }
    }
    }
    正确答案: A 你的答案: A (正确)
    ABDCBDCB
    ABCDABCD
    Compilation fails.
    An exception is thrown at runtime.

考for循环的执行顺序,1.先执行初始化条件,2.执行判断条件,3.如果满足2的条件,执行循环体中代码;4.执行foo(‘c’), 5.初始化条件不在执行,友从2开始执行

  1. 以下代码的输出的正确结果是
    public class Test {
    public static void main(String args[]) {
    String s = “祝你考出好成绩!”;
    System.out.println(s.length());
    }
    }
    正确答案: D 你的答案: D (正确)
    24
    16
    15
    8

length得到的是字符,不是字节。
如果是s.getBytes(“GBK”).length就是求的字节数。如果是GBK,一个中文字符占2字节,如果是UTF-8则是3个字节

  1. 下列关于异常处理的描述中,错误的是()。
    正确答案: D 你的答案: A (错误)
    程序运行时异常由Java虚拟机自动进行处理
    使用try-catch-finally语句捕获异常
    可使用throw语句抛出异常
    捕获到的异常只能在当前方法中处理,不能在其他方法中处理

捕获到的异常不仅可以在当前方法中处理,还可以将异常抛给调用它的上一级方法来处理。

  1. 类方法中可以直接调用对象变量?
    正确答案: B 你的答案: A (错误)
    正确
    错误

静态方法中不能调用对象的变量,因为静态方法在类加载时就初始化,对象变量需要在新建对象后才能使用

  1. 语句:char foo=‘中’,是否正确?(假设源文件以GB2312编码存储,并且以javac – encoding GB2312命令编译)
    正确答案: A 你的答案: A (正确)
    正确
    错误

这在java中是正确的,在C语言中是错误的,java的char类型占两个字节,默认使用GBK编码存储。这种写法是正确的,此外java还可以用中文做变量名。

  1. This调用语句必须是构造函数中的第一个可执行语句。
    正确答案: B 你的答案: A (错误)
    正确
    错误

this()才必须是构造函数中的第一个可执行语句,用this调用语句并不需要。

  1. Thread. sleep()是否会抛出checked exception?
    正确答案: A 你的答案: B (错误)

    不会

Thread.sleep() 和 Object.wait(),都可以抛出 InterruptedException。这个异常是不能忽略的,因为它是一个检查异常(checked exception)

  1. 指出下列程序运行的结果:
    public class Example{
    String str=new String(“tarena”);
    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 void change(String str,char ch[]){
    //引用类型变量,传递的是地址,属于引用传递。
    str=“test ok”;
    ch[0]=‘g’;
    }
    }
    正确答案: B 你的答案: B (正确)
    tarena and abc
    tarena and gbc
    test ok and abc
    test ok and gbc
  2. 以下对选择语句描述错误的是()
    正确答案: A 你的答案: B (错误)
    根据某一条件重复执行一部分代码直到满足终止条件为止
    可以根据条件控制程序流程,改变程序执行的顺序
    选择语句可以嵌套使用
    当条件满足时就会执行相应的语句

流程控制语句分类:
顺序结构
选择结构:if语句、switch语句
循环结构:while语句、for语句

  1. 有一个源代码,只包含import java.util.* ; 这一个import语句,下面叙述正确的是? ( )
    正确答案: C 你的答案: C (正确)
    只能写在源代码的第一句
    可以访问java/util目录下及其子目录下的所有类
    能访问java/util目录下的所有类,不能访问java/util子目录下的所有类
    编译错误

java.util.*,只能读取其目录下的类,不能读取其子目录下的类。
因为其根目录和子目录下可能有同名类,若都能读取,则会混淆。

  1. 某程序要求每次输入只能是正整数,并且每次输入的数值要求必须是100的倍数且小于等于500,则下列哪个是正确的无效等价类( )
    正确答案: D 你的答案: D (正确)
    (0,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞);
    (500,+∞)
    (500,+∞)、任意大于0小于500的非100倍数的整数;
    (-∞,100)、(100,200)、(200,300)、(300,400)、(400,500)、(500,+∞);

无效等价类是指对于软件规格说明而言,是没有意义的、不合理的输入数据集合。利用无效等价类可以找出程序异常说明情况,检查程序的功能和性能的实现是否有不符合规格说明要求的地方。
有效等价类是指输入数据完全满足程序输入的规格说明,是有效、有意义的输入数据所构成的集合。利用有效等价类可以检验程序是否满足规格说明所规定的功能和性能。

  1. Java的体系结构包含( )。
    正确答案: A B C D 你的答案: B C D (错误)
    Java编程语言
    Java类文件格式
    Java API
    JVM

当我们编写并运行一个Java程序时,就同时运用了这四种技术,用Java程序设计语言编写源代码,把它编译成Java.class文件格式,然后再在Java虚拟机中运行class文件。当程序运行的时候,它通过调用class文件实现了Java API的方法来满足程序的Java API调用

  1. 以下哪些内存区域属于JVM规范?(  )
    正确答案: A D E 你的答案: A B C D E (错误)
    方法区
    实例变量
    静态变量
    程序计数器
    虚拟机栈

JVM内存区:程序计数器、虚拟机栈、本地方法栈、堆、方法区(包括常量池)。
不属于JVM内存区:直接内存(Direct Memory),用户I/O操作

  1. 下列关于系列化和反序列化描述正确的是:
    正确答案: A B 你的答案: A C (错误)
    序列化是将数据转为n个 byte序列的过程
    反序列化是将n个 byte转换为数据的过程
    将类型int转换为4 byte是反序列化过程
    将8个字节转换为long类型的数据为序列化过程

把你看得懂的转换为看不懂的,就是序列化。
把你看不懂的转换为看得懂的,就是反序列化。

  1. 以下哪种方式实现的单例是线程安全的
    正确答案: A B C D 你的答案: B C (错误)
    枚举
    静态内部类
    双检锁模式
    饿汉式
  2. 有关finally语句块说法正确的是( )
    正确答案: A B C 你的答案: A C (错误)
    不管catch是否捕获异常,finally语句块都是要被执行的
    在try语句块或catch语句块中执行到System.exit(0)直接退出程序
    finally块中的return语句会覆盖try块中的return返回
    finally 语句块在 catch语句块中的return语句之前执行

D.不是return之前,是return执行完成之前,return表达式的结果会暂时保存起来,不会被改变

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/356536.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号