Java面向对象程序设计综合练习3(填空题)

简介: Java面向对象程序设计综合练习3(填空题)

R4-1


按异常处理不同可以分为运行异常、捕获异常、声明异常和


3e23eeb734ec48f09e5d3c3d33ce3358.png


R4-2


public class X {  
    public static void main(String [] args) {
        try {
            badMethod();  
            System.out.print("A");  
        } catch (RuntimeException ex) { 
            System.out.print("B"); 
        } catch (Exception ex1) { 
            System.out.print("C"); 
        } finally {
            System.out.print("D"); 
        } 
        System.out.print("E"); 
    } 
    public static void badMethod() { 
        throw new RuntimeException(); 
}}


BDE


R4-3


使用Iterator遍历集合时,首先需要调用( )方法判断是否存在下一个元素,若存在下一个元素,则调用( )方法取出该元素。


hasNext()


1 分


next()

1 分


R4-4

25-3 The output of the code below is:


public class Main {
    static int count = 0;
    public static void main(String[] args) {
        for ( ;; ) {
            try {
                if ( count++ == 0 )
                    throw new Exception();
                System.out.println(1);
            } catch (Exception e) {
                System.out.println(2);
            } finally {
                System.out.println(3);
                if ( count == 2 )
                    break;
            }
            System.out.println(4);
        }
    }
}


2

1 分

3

1 分

4

1 分

1

1 分

3

1 分


R4-5

给出以下代码:


public enum Main {
  PLUS   { int eval(int x, int y) { return x + y; } },
  MINUS  { int eval(int x, int y) { return x - y; } },
  TIMES  { int eval(int x, int y) { return x * y; } },
  DIVIDE { int eval(int x, int y) { return x / y; } };
  abstract int eval(int x, int y);
  public static void main(String args[]) {
          int x = 4;
        int y = 2;
        for (Main op : Main.values())
            System.out.printf("%d %s %d = %d%n", x, op, y, op.eval(x, y));
    }
}


程序运行结果为(一行一空):

4 PLUS 2 = 6

2 分

4 MINUS 2 = 2

2 分

4 TIMES 2 = 8

2 分

4 DIVIDE 2 = 2

2 分


R4-6

集合按照存储结构的不同可分为单列集合和双列集合,单列集合的根接口是( ),双列集合的根接口是( )。

Collection

1 分

Map

1 分


R4-7

请写出以下程序运行结果:


class NoWater extends Exception {}
class NoDrinkableWater extends NoWater {}
public class FinallyWorks {
    static int count = 0;
    public static void main(String[] args) throws NoWater {
        while ( true ) {
           try {
           count++;
           if ( count == 1 ) { 
             System.out.println("OK");
           } else if ( count == 2 ) {
             System.out.println("Exception raised: NoDrinkableWater");
             throw new NoDrinkableWater();
           } else if ( count == 3 ) {
             System.out.println("Exception raised: NoWater");
             throw new NoWater();
           }
            } catch (NoDrinkableWater e) {
                System.out.println(e);
            } finally {
                System.out.println("finally");
                if ( count == 3 )
                    break;
            }
        }
    }
}


OK


2 分


finally


2 分


Exception raised: NoDrinkableWater


2 分


NoDrinkableWater


2 分


finally


2 分


Exception raised: NoWater


2 分


finally


2 分


R4-8


Map集合中存储元素需要调用( )方法,要想根据该集合的键获取对应的值需要调用( )方法。


put()


1 分


get()


1 分


R4-9


请写出以下程序运行结果:


public class Main {
    public static void main(String[] args) {
        String s = "hello";
        try {
            s = s+" world";
            s.toUpperCase();
            String[] a = s.split("o");
            System.out.println(a.length);
        } catch (Exception e) {
            System.out.print(s);
        } finally {
            System.out.print(s);
}}}


3


2 分


hello world


2 分


R4-10


请写出以下程序运行结果:


 //环境 JDK 1.5及以上
 public static void main(String args[])
    {
        Set<Integer> set=new TreeSet<Integer>();
        List<Integer> list=new ArrayList<Integer>();
        for (int i=-3;i<3;i++)
        {
            set.add(i);
            list.add(i);
        }
        for (int i=0;i<3;i++)
        {
            set.remove(i);
            list.remove(i);
        }
        System.out.println(set+" "+list);
    }


程序运行的输出结果为


[-3, -2, -1] [-2, 0, 2]


2 分


R4-11


在Java中,


Throwable


2 分


类是所有异常和错误的顶级父类。


目录
相关文章
|
15天前
|
安全 Java Go
面向对象程序设计语言:Java
Java语言语法和C语言和C++语言很接近,很容易学习和使用,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的特性,Java语言不使用指针,而是引用,并提供了自动分配和回收内存空间,使得程序员不必为内存管理而担忧
31 2
|
3天前
|
Java 开发者
Java 面向对象
Java 是一种面向对象的编程语言,通过对象与类的概念组织代码和数据。面向对象编程的核心包括类、对象、继承、多态、封装和抽象。类是对象的蓝图,定义了属性和行为;对象则是类的实例。继承允许子类继承父类的属性和方法,增强代码复用性;多态则支持通过相同接口调用不同类型对象的行为,包括方法重载和重写。封装通过公共方法隐藏对象细节,提高安全性;抽象则对对象特征进行提炼,通过抽象类和接口实现。理解这些概念有助于设计高效、可维护的 Java 应用程序。
|
10天前
|
Java 开发者
Java编程之旅:探索面向对象的力量
【9月更文挑战第16天】在编程的世界中,Java以其强大的面向对象编程特性而闻名。本文将带你走进Java的世界,一起探索类与对象的奥秘,学习如何通过封装、继承和多态性构建健壮的软件系统。无论你是初学者还是有经验的开发者,本文都旨在提供实用的代码示例,帮助你提升Java技能。准备好开始这段旅程了吗?让我们启程吧!
|
1月前
|
Java 开发者 C++
|
1月前
|
存储 Java
Java面向对象面试题总结(上)
在Java中,重写(Override)与重载(Overload)是两个重要的概念,关联到方法的定义与调用。重写是指子类对继承自父类的方法进行新的实现,以便提供子类特有的行为,其关键在于方法签名一致但方法体不同。重载则允许在同一个类中定义多个同名方法,只要参数列表不同即可,以此提供方法调用的灵活性。重写关注多态性,而重载强调编译时多态。
21 1
|
27天前
|
存储 Java 数据库连接
Java编程之旅:从基础到高级,探索面向对象的力量
【8月更文挑战第31天】本文是一篇深入浅出的Java编程指南,旨在通过生动的例子和实际代码演示,带领读者从Java的基础语法起步,逐步深入到面向对象的核心概念,最后探讨如何在实际项目中应用这些知识。无论你是编程新手还是有一定经验的开发者,这篇文章都将为你提供有价值的见解和实用的技巧。
|
1月前
|
Java 数据安全/隐私保护
【Java 第五篇章】面向对象
封装隐藏对象内部细节,仅暴露出必要的接口,提升代码的安全性和可维护性。通过private修饰属性并提供公有的getter和setter方法实现。权限修饰符从private到public控制着访问范围,从类内到整个项目。封装可用于类及其内部结构。
16 0
|
2天前
|
存储 缓存 Java
java线程内存模型底层实现原理
java线程内存模型底层实现原理
java线程内存模型底层实现原理
|
13天前
|
存储 缓存 安全
【Java面试题汇总】多线程、JUC、锁篇(2023版)
线程和进程的区别、CAS的ABA问题、AQS、哪些地方使用了CAS、怎么保证线程安全、线程同步方式、synchronized的用法及原理、Lock、volatile、线程的六个状态、ThreadLocal、线程通信方式、创建方式、两种创建线程池的方法、线程池设置合适的线程数、线程安全的集合?ConcurrentHashMap、JUC
【Java面试题汇总】多线程、JUC、锁篇(2023版)
|
7天前
|
缓存 Java 应用服务中间件
Java虚拟线程探究与性能解析
本文主要介绍了阿里云在Java-虚拟-线程任务中的新进展和技术细节。