java篇期末试题你能做对几道???

举报
肥学 发表于 2022/03/27 01:17:51 2022/03/27
【摘要】 虽然是期末题但是有的题可能在面试的时候也会被问到哦!!! 博主主页:链接 目录 温馨提醒选择题填空题判断题简答题编程题未完待续 温馨提醒 如果您是手机观看有的代码片比较长竖屏不利于观...

虽然是期末题但是有的题可能在面试的时候也会被问到哦!!!
在这里插入图片描述
博主主页:链接

温馨提醒

如果您是手机观看有的代码片比较长竖屏不利于观看,您可以双击代码块就会变成横屏有利于看题,祝您做题愉快!!!
在这里插入图片描述

选择题

编写一个Java程序步骤

A、
编辑

B、
编译

C、
运行

D、
测试

我的答案:ABC

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
下面关于接口的说法中不正确的是

A、接口中所有的方法都是抽象的     //java8以前接口是只能定义抽象方法以后是还能定义抽象和静态还有默认方法。
B、接口中所有的方法都是public访问权限
C、子接口继承父接口所用的关键字是implements
D、接口是Java中的特殊类,包含常量和抽象方法
正确答案 C 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
一个类实现接口的情况是

A、一次可以实现多个接口      
B、一次只能实现一个接口
C、不能实现接口
D、不一定
正确答案 A 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
Java语言接口间的继承关系是

A、单继承
B、多重继承
C、不能继承
D、不一定
正确答案 B 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
下面说法不正确的是
A、抽象类既可以做父类,也可以做子类
B、abstract和final能同时修饰一个类
C、抽象类中可以没有抽象方法,有抽象方法的类一定是抽象类或接口
D、声明为final类型的方法不能在其子类中重新定义
正确答案 B 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
下列关于抽象类的描述中,错误的是
A、抽象类是用修饰符 abstract 说明的
B、抽象类是不可以定义对象的
C、抽象类是不可以有构造方法的
D、抽象类通常要有它的子类
正确答案 C 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
以下哪个接口的定义是正确的?

A、
interface  A
{  void print()  {  } ;
}

B、
abstract  interface  A
{ void print() ;
}

C、
abstract  interface  A  extends I1, I2   // I1、I2为已定义的接口
{ abstract  void  print(){  };
}

D、
 interface  A
{  void  print();
}

正确答案 D 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的

A、
ArrayList myList=new Object();
B、
List myList=new ArrayList();
C、
ArrayList myList=new List();
D、
List myList=new List();
正确答案 B 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
下面一段程序
  class Aclass{
   void go(){
    System.out.println("Aclass");
   }
  }
  public class Bclass extends Aclass{
   void go{
    System.out.println("Bclass");
   }
  public static void main(String args[]){
   Aclass a=new Aclass();
   Aclass a1=new Bclass();
  a.go();
  a1.go();
  }
以上程序运行结果是

A、
Aclass 
Aclass
B、
Bclass 
Bclass
C、
Aclass 
Bclass
D、
Bclass 
Aclass
正确答案 C 

  
 
  • 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
  • 30
  • 31
分析下列Java代码:
class A{
public static void main(String[ ] args){
method( );
             }
static void method( ){
try{
System.out.println("Hello");
System.exit(0);
               }finally{
System.out.println("good-bye");
                 }
             }
}


A、
 Hello    
B、
good-bye
C、

 Hello                              
good-bye 

D、
 代码不能编译
正确答案 A 

  
 
  • 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
在Java 中,假定有一个包含引起异常(不是一个RuntimeException)的代码的方法,用什么方式告诉方法的调用者要捕获该异常。

A、
throw Exception
B、
throws Exception
C、
new Exception      
D、
不用特别指定
正确答案 B 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
下面的Java代码
public class testException{
           public static void main(String[ ] args){
               int a[ ]={0,1,2,3,4};
               int sum=0;
               try{
for(int i=1;i<6;i++)
sum=sum+a[i];
System.out.println("sum=" + sum);
               }catch(ArrayIndexOutOfBoundsException e){
System.out.println("数组越界");
               }finally{
System.out.println("程序结束");
}
           }
       }
       输出结果将是


A、
  10 数组越界
程序结束

B、
10 程序结束
C、
数组越界
程序结束

D、
程序结束

正确答案 C 

  
 
  • 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
  • 30
  • 31
  • 32
  • 33
在Java中,所有类的根类是

A、
java.lang.Object
B、
java.lang.Class
C、
java.applet.Applet
D、
java.awt.Frame
正确答案 A 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
运行下面程序时,会产生什么异常?
public class X7 {
    public static void main(String[] args) {
        int x = 0;
        int y = 5/x;
        int[] z = {1,2,3,4};
        int p = z[4];
  }
}


A、
ArithmeticException
B、
NumberFormatException
C、
ArrayIndexOutOfBoundsException
D、
IOException
正确答案 A 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
运行下面程序时,会产生什么异常?
public class X7_1 {
    public static void main(String[] args) {
        int[] z = {1,2,3,4};
        int p = z[4];
        int x = 0;
        int y = 5/x;
    }
}


A、
ArithmeticException
B、
NumberFormatException
C、
ArrayIndexOutOfBoundsException
D、
IOException
正确答案 C 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
在JAVA中ArrayList类实现了可变大小的数组,便于遍历元素和随机访问元素,已知获得了ArrayList类的对象bookTypeList,则下列语句中能够实现判断列表中是否存在字符串“小说”的是

A、
bookTypeList.add("小说");
B、
bookTypeList.get("小说");
C、
bookTypeList.contains("小说");

D、
bookTypeList.remove("小说");
正确答案 C 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的

A、
ArrayList myList=new Object();
B、
 List myList=new ArrayList();
C、
ArrayList myList=new List();
D、
List myList=new List();
正确答案 B 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
下列(  )不能含有重复元素。

A、
Set
B、
List
C、
Map
D、
Collection
正确答案 A 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
java语言的集合框架类定义在(  )语言包中。 

A、
java.lang
B、
java.util
C、
java.array
D、
java.collections
正确答案 B 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
关于链表结构,陈述错误的是哪个?

A、
链表可动态增长
B、
在链表中查找对象是最有效的
C、
链表中的元素可以重复
D、
通常情况下,向链表中插入元素的效率高于向ArrayList中插入元素的效率
正确答案 B 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
下列哪个不是Iterator接口所定义的方法?

A、
hasNext()
B、
next()
C、
remove()
D、
nextElement()
正确答案 D 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
下面程序显示结果。

public class Test{

    public static void main(String [] args){

            Student zhangsan = new Student("张三", 19, 87);

            zhangsan.display();

            Student lisi = new Student("李四", 19, 87);


            lisi = zhangsan;

            lisi.display();

    }

}

public class Student{

    private String name;

    private int age;

    private double grade;

    public Student(String name, int age, double grade){

        this.name = name;

        this.age = age;

        this.grade = grade;

    }

     public void display(){

        System.out.println("姓名:" + name);

    }

}





A、
“姓名:张三”

B、
“姓名:李四”

C、
“姓名:null”

D、
“姓名:”

正确答案: A 

  
 
  • 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
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
public class Test{

       public static void main(String [] args){

              MobilePhone m = new MobilePhone();

              m.display();

       }

}

class MobilePhone{

       private String brand="Apple";

       private String code="13800000000";

       public                  {

              System.out.println("Brand:" + brand);

              System.out.println("Code:" + code);

       }

}

A、
void display()

B、
int display()
C、
 void print()

D、
空

正确答案: A 

  
 
  • 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
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
下面这段程序,计算5个成绩的最大值:

        maxGrade = grade[0];

        for(int i=0; i<10; i++){

            if(maxGrade > grade[i]){

                maxGrade = grade[i];

            }

        }



我的答案:×

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

填空题

1
所有的Java异常类都是系统类库中的                  类的子类。

正确答案
第一空 
Exception

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
2.异常是在程序编译或运行中所发生的可预料或不可预料的异常事件,出现在编译阶段的异常,称之为              ,出现在运行阶段的异常,称之为                       。

正确答案
第一空 
编译时异常 
第二空 
运行时异常 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
java语言的三个基本特征:
封装   //封装(Encapsulation)是面向对象方法的重要原则,就是把对象的属性和操作(或服务)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节
继承
多态

  
 
  • 1
  • 2
  • 3
  • 4
JFrame类默认布局

BorderLayout

  
 
  • 1
  • 2
  • 3
下面有关JAVA swing的描述

swing轻量级 移植性好

  
 
  • 1
  • 2
  • 3
java实现多态三个必要条件:

继承、重写、向上转型

  
 
  • 1
  • 2
  • 3
数据库的访问接口:JDBC

  
 
  • 1
byte、char、float、double占有多少位:

8 16 32 64

  
 
  • 1
  • 2
  • 3
Java四种标准对话框。

ConfirmDialog --- 确认对话框,提出问题,然后由用户自己来确认(按 "Yes ""No "按钮)

InputDialog --- 提示输入文本

MessageDialog --- 显示信息

OptionDialog -- 组合其它三个对话框类型。

或

JOptionPane 用户对话框

JDialog 通用对话框

JFileChooser 文件选择对话框

JColorChooser 颜色选择对话框

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

判断题

Java源程序编译后的文件扩展名class

我的答案:√

  
 
  • 1
  • 2
  • 3
Java的类名和文件名一致

我的答案:√

  
 
  • 1
  • 2
  • 3
修改源程序,需要保存后才能有效

我的答案:√

  
 
  • 1
  • 2
  • 3
设置方法setter一般没有返回类型
答案:√

  
 
  • 1
  • 2
方法重构的目的是让每个方法只做一件事
答案:√

  
 
  • 1
  • 2
小方法更方便代码实现
答案:√

  
 
  • 1
  • 2
Java语言采用值方式传递参数
答案:√

  
 
  • 1
  • 2
一个类的多个构造方法,方法名字相同,参数个数和类型不同

我的答案:√

  
 
  • 1
  • 2
  • 3
下面程序编译正确

public class Student{

    private String name;

    private int age;

    private double grade;

   

    public Student(){

        Student("", 0, 0);

    }

    public Student(String name, int age, double grade){

        this.name = name;

        this.age = age;

        this.grade = grade;

    }

}



我的答案:×

  
 
  • 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
  • 30
  • 31
  • 32
  • 33
下面程序编译错误

public class Student{

    private String name;

    private int age;

    private int grade;

   

    public Student(String name, int age){

        this.name = name;

        this.age = age;

    }

    public Student(String name, int grade){

        this.name = name;

        this.grade = grade;

    }

}



我的答案:√

  
 
  • 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
  • 30
  • 31
  • 32
  • 33
下面程序段运行输出结果:10,20

              int a = 10;

              int b =20;

              if(a > b){

                     System.out.println("" + a + "," + b);

              }

              else{

                     System.out.println("" + b + "," + a);

              }



我的答案:×

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
下面程序执行100次:

for(int i=1; i<=100; i++){

.....

}

我的答案:√

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

简答题

java访问数据库步骤
1.加载程序驱动
2.创建Connection对象链接数据库
3.创建statement类对象,来执行SQL语句
4.创建resultset类对象,用来存放获取的结果集

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
读写文本文件的基本步骤有哪些?

使用File类/字符串(路径) 指向一个文件

把File/字符串 传入文件流

进行读/写操作

关闭流

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
图形界面的基本流程:
应具备顶端容器和中间容器还有基本组件,再加上事件监听

  
 
  • 1
  • 2
网络连接的基本流程:

(1)先在服务器端生成一个ServerSocket实例对象,随时监听客户端的连接请求。
(2)当客户端需要连接时,相应地要生成一个Socket实例对象,并发出连接请求,其中host参数指明该主机名,port#参数指明该主机端口号。
(3)服务器端通过accept()方法接收到客户端的请求后,开辟一个接口与之进行连接,并生成所需的I/O数据流。
(4)客户端和服务器端的通信都是通过一对InputStream和OutputStream进行的,通信结束后,两端分别关闭对应的Socket接口。

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
java继承与接口的区别:

区别1:

不同的修饰符修饰(interface),(extends)

区别2:

在面向对象编程中可以有多继承!但是只支持接口的多继承,不支持'继承'的多继承哦,而继承在java中具有单根性,子类只能继承一个父类

区别3:

在接口中只能定义全局常量,和抽象方法在java8(还能定义静态方法和默认方法),而在继承中可以定义属性方法,变量,常量等...

区别4:

某个接口被类实现时,在类中一定要实现接口中的抽象方法,而继承想调用那个方法就调用那个方法,毫无压力。

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
 接口和抽象类相似和区别?
相似
接口和抽象类都不能被实例化,它们都位于继承树的顶端,用于被其他类实现和继承。
接口和抽象类都可以包含抽象方法,实现接口或继承抽象类的普通子类都必须实现这些抽象方法。
区别 
接口里只能包含抽象方法,静态方法、默认方法和私有方法,不能为普通方法提供方法实现;抽象类则完全可以包括普通方法。
接口里只能定义静态常量,不能定义普通成员变量;抽象类里则既可以定义普通成员变量,也可以定义静态常量。
接口里不包含构造器;抽象类里可以包含构造器,抽象类里的构造器并不是用于创建对象,而是让其子类调用这些构造器来完成属于抽象类的初始化操作。
接口里不能包含初始化块;但抽象类则完全可以包含初始化块。
一个类最多只能有一个直接父类,包括抽象类;但一个类可以直接实现多个接口,通过实现多个接口可以弥补Java单继承的不足。

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

编程题

这里我们大胆猜测一下,期末题无非是一些算法但是接口和抽象类还有继承可能会考大家开始看看比较好。

未完待续

还有各科试题陆续整理中,尽情期待。
若有错之处还请大佬们指出

文章来源: blog.csdn.net,作者:肥学,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/jiahuiandxuehui/article/details/117668948

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。