Java日常练习题,每天进步一点点(46)

作者:牛哄哄的柯南 时间:2023-10-05 11:20:29 

目录
  • 1、设Tree为已定义的类名,下列语句能正确创建 Tree 对象的是 。

  • 2、区分类中重载方法的依据是( )。

  • 3、以下代码执行后输出结果为( )

  • 4、现有一变量声明为 boolean aa; 下面赋值语句中正确的是 ( )

  • 5、以下关于 abstract 关键字的说法,正确的是()

  • 6、一个类中,有两个方法名、形参类型、顺序和个数都完全一样,返回值不一样的方法,这种现象叫覆盖。( )

  • 7、局部变量能否和成员变量重名?

  • 8、指出下列程序运行的结果()

  • 9、java中提供了哪两种用于多态的机制

  • 10、下列说法正确的是()

    • 答案汇总:

  • 总结

    承蒙各位厚爱,我们一起每天进步一点点!(鼠标选中空白处查看答案)

    1、设Tree为已定义的类名,下列语句能正确创建 Tree 对象的是 。

    正确答案: B

    Tree t=new Tree;

    Tree t=new Tree();

    Tree t=Tree();

    Tree t[ ]=new Tree[10];

    题解:
    需要对象,当然只需new一个了,还有别忘了括号。

    2、区分类中重载方法的依据是( )。

    正确答案: C

    不同的形参名称

    不同的返回值类型

    不同的形参列表

    不同的访问权限

    题解:
    两个重载函数必须在下列一个或两个方面有所区别:
    1、函数的参数个数不同。
    2、函数的参数类型不同或者参数类型顺序不同

    3、以下代码执行后输出结果为( )


    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();
        }
    }

    正确答案: B

    进入到try块 异常发生了! 进入到finally块 后续代码

    进入到try块 进入到finally块 后续代码

    进入到try块 后续代码

    异常发生了! 后续代码

    题解:
    对于这题,没有异常,直接从try进入到finally,然后执行下面的后续代码。

    4、现有一变量声明为 boolean aa; 下面赋值语句中正确的是 ( )

    正确答案: A

    aa=false;

    aa=False;

    aa=“true”;

    aa=0;

    题解:
    boolean的值要不是true,要不就是false。

    5、以下关于 abstract 关键字的说法,正确的是()

    正确答案: D

    abstract 可以与final 并列修饰同一个类。

    abstract 类中不可以有private的成员。

    abstract 类中必须全部是abstract方法。

    abstract 方法必须在abstract类或接口中。

    题解:
    1、abstract类不能与final,static使用。final修饰方法,子类可以调用,但不能覆盖。
    2、最好不要有private因为私有和抽象放在一起,子类如果想重写父类的私有方法根本继承不过来,也就无法重写
    3、抽象类中可以有非抽象方法
    4、抽象类中可以都是非抽象的,但是抽象方法一定要在类和接口中

    6、一个类中,有两个方法名、形参类型、顺序和个数都完全一样,返回值不一样的方法,这种现象叫覆盖。( )

    正确答案: B

    正确

    错误

    题解:
    重载(overload)和重写(override)的区别: 重载就是同一个类中,有多个方法名相同,但参数列表不同(包括参数个数和参数类型),与返回值无关,与权限修饰符也无关。调用重载的方法时通过传递给它们不同的参数个数和参数类型来决定具体使用哪个方法,这叫多态。 重写就是子类重写基类的方法,方法名,参数列表和返回值都必须相同,否则就不是重写而是重载。权限修饰符不能小于被重写方法的修饰符。重写方法不能抛出新的异常或者是比被重写方法声明更加宽泛的检查型异常。

    7、局部变量能否和成员变量重名?

    正确答案: A

    可以,局部变量可以与成员变量重名,这时可用“this”来指向成员变量

    可以,这时可用“local”关键字来指向局部变量

    不能,局部变量不能与成员变量重名

    不能,在一个类中不能有重名变量,不管是成员变量还是函数中的局部变量

    题解:
    java采用局部优先的思想。局部变量可以和成员变量相同,使用标识符调用时,优先使用局部变量。在实例方法中出现变量名相同时,可以使用this关键字来调用。

    8、指出下列程序运行的结果()


    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 void change(String str,char ch[ ]){
           str = "test ok";
           ch[0] = 'g';
       }
    }

    正确答案: B

    good and abc

    good and gbc

    test ok and abc

    test ok and gbc

    题解:
    Java日常练习题,每天进步一点点(46)

    9、java中提供了哪两种用于多态的机制

    正确答案: A B

    通过子类对父类方法的覆盖实现多态

    利用重载来实现多态.即在同一个类中定义多个同名的不同方法来实现多态。

    利用覆盖来实现多态.即在同一个类中定义多个同名的不同方法来实现多态。

    通过子类对父类方法的重载实现多态

    题解:
    Java通过方法重写和方法重载实现多态
    方法重写是指子类重写了父类的同名方法
    方法重载是指在同一个类中,方法的名字相同,但是参数列表不同

    10、下列说法正确的是()

    正确答案: A B

    JAVA程序的main方法必须写在类里面

    JAVA程序中可以有多个名字为main方法

    JAVA程序中类名必须与文件名一样

    JAVA程序的main方法中,如果只有一条语句,可以不用{}(大括号)括起来

    题解:
    答案:AB
    A,java是强类型语言,所有的方法必须放在类里面,包括main
    B ,java中可以有多个重载的main方法,只有public static void main(String[] args){}是函数入口
    C,内部类的类名一般与文件名不同
    D,函数都必须用{}括起来,不管是一条语句还是多条语句

    答案汇总:

    1、正确答案: B

    2、正确答案: C

    3、正确答案: B

    4、正确答案: A

    5、正确答案: D

    6、正确答案: B

    7、正确答案: A

    8、正确答案: B

    9、正确答案: A B

    10、正确答案: A B

    来源:https://blog.csdn.net/weixin_43883917/article/details/119250916

    标签:Java,日常,练习题
    0
    投稿

    猜你喜欢

  • SpringBoot 导出数据生成excel文件返回方式

    2023-09-01 11:29:27
  • 新的Java访问mysql数据库工具类的操作代码

    2023-04-05 16:54:58
  • unity3d实现七天签到功能

    2023-01-05 08:57:21
  • 学习Java之如何正确地跳出循环结构

    2021-10-21 11:21:53
  • Android画板开发之橡皮擦功能

    2022-10-23 02:48:52
  • Java IO之File 类详解

    2023-08-07 20:02:12
  • C#中值类型和引用类型的区别深度分析

    2022-07-21 21:29:26
  • vista和win7在windows服务中交互桌面权限问题解决方法:穿透Session 0 隔离

    2021-06-16 04:05:47
  • c#中WinForm使用OpencvSharp4实现简易抓边

    2023-04-15 15:54:39
  • 深入浅析Java中普通代码块、构造代码块与静态代码块

    2023-04-14 15:16:35
  • Nacos源码之注册中心的实现详解

    2023-04-30 19:25:49
  • C#中数组、ArrayList和List三者的区别详解及实例

    2023-11-07 03:12:47
  • 23种设计模式(14)java迭代器模式

    2021-12-12 15:28:49
  • IntelliJ IDEA中查看文件内所有已声明的方法(类似eclipse的outline)

    2021-08-06 00:39:39
  • C++详细讲解继承与虚继承实现

    2022-10-25 18:33:49
  • JDK14性能管理工具之jstack使用介绍

    2022-10-11 18:48:01
  • Android 实现卡片堆叠钱包管理动画效果

    2021-12-12 11:15:02
  • java如何给对象按照字符串属性进行排序

    2022-05-23 02:17:14
  • Spring Boot + Mybatis-Plus实现多数据源的方法

    2023-11-13 15:01:46
  • SpringMvc返回modelandview返回的页面无法跳转问题及解决

    2023-02-07 23:49:51
  • asp之家 软件编程 m.aspxhome.com