Java程序设计模拟试题及答案

时间:2017-04-28 09:10:57 java试题 我要投稿

Java程序设计模拟试题及答案

  《Java程序设计》通过对Java编程语言的全面介绍,引导读者快速地掌握Java编程语言的核心内容并学会灵活运用所学的语言知识及面向对象的编程思想。以下是由阳光网小编整理关于Java程序设计模拟试题的内容,希望大家喜欢!

Java程序设计模拟试题及答案

  Java程序设计模拟试题及答案

  一、判断题。判断下列各题是否正确,若正确,在()内打“√”,否则打“×”。

  1、Java Application程序中,必有一个主方法main(),该方法有没有参数都可以。×

  2、Java程序中不区分大小写字母。×

  3、已知byte i = (byte)127; i = i +1;这两个语句能被成功编译。×

  4、调用this 或super构造方法的语句必须放在第一条语句。√

  5、创建对象时系统将调用适当的构造方法给对象初始化。√

  6、对象可作方法参数,对象数组不能作方法参数。×

  二、不定项选择题。

  1、Java 程序的编程与运行分几个阶段,下面的阶段描述中正确的是(BE)。

  A、Java编译器将源文件编译为二进制的目标码文件

  B、连接软件将目标码文件连接为最终的执行文件

  C、Java虚拟机运行连接后的可执行文件,将它们翻译为硬件能够理解的机器语言

  D、目标码无需连接,可以直接由Java虚拟机执行

  E、Java虚拟机解释目标文件,并把它们翻译为硬件能够理解的机器语言

  2、执行一个Java 程序“FirstApp” 的方法是(B)

  A、直接双击编译好的Java 目标码文件执行 B、运行“javac FirstApp.class”

  C、运行“java FirstApp.java” D、运行“java FirstApp”

  3、按照Java的标识符命名规范,下列表示一个类的标识符正确的是(B)。

  A、Helloworld B、HelloWorld C、helloworld D、helloWorld

  4、下列叙述中,正确的是(A)。

  A、Java语言的标识符是区分大小写的

  B、源文件名与public类名可以不相同

  C、源文件扩展名为.jar

  D、源文件中public类的数目不限

  5、指出下列哪个方法不是public void add(int a){}的重载方法。(A)

  A、public int add(int a) B、public void add(long a)

  C、public void add(int a, int b) D、public void add(float a)

  6、关于缺省级和公开级的类在访问上的差别,描述正确的是(BD)。

  A、对于其它包的类,只要用“import ”关键字导入,就可以访问到缺省级的类

  B、“import ”关键字只能导入公开级的类

  C、在公开级,不但同一个包里的其它类可以访问这个类,而且其它包里的类也可以访问它

  D、缺省级下,只有同一个包内的其它类可以访问这个类,外界不能访问

  E、缺省级和公开级的类都能从包外访问到

  7、子类如何调用父类带有参数的构造方法? B

  A、子类也创建具有同样参数的方法参数,Java会自动调用父类构造方法

  B、子类构造方法的开头用“super” 语句调用父类构造方法

  C、无法调用

  D、创建子类对象时,先调用父类的构造方法,再调用子类的构造方法

  8、public的成员变量能够被以下哪些对象访问到? C

  A、所有的对象,但子类只能直接访问,而不能继承父类对象的public 组成员

  B、所有的对象,但其它包中的对象只能访问少数从句中导出的成员

  C、所有的对象,子类可以直接访问,也可以继承父类对象的public 组成员

  D、所有的对象

  E、所有的对象,但子类不能访问其它包中的.父类对象的public 组成员

  9、当父类的引用变量指向子类对象时,对于同名的方法调用哪个?A

  A、调用子类的方法 B、先调用父类的方法再调用子类的方法

  C、调用父类的方法 D、先调用子类的方法再调用父类的方法

  10、关于多态性,以下描述中正确的是( D )。

  A、多态性就是方法的覆盖 B、多态性就是方法重载

  C、多态性只存在于同名的成员变量之间

  D、多态性是指按引用变量指向的对象,而不是引用变量本身的类型来决定调用哪个方法

  11、以下关于字符串函数的描述中,正确的是( C )。

  A、delete 函数用于删除整个字符串

  B、replace 函数的作用是替换一段子串

  C、setCharAt函数的作用是将String 或StringBuffer字符串的某个字符替换

  D、insert 函数的作用是在字符串的某个位置插入一个字符

  12、以下关于运行期异常的说法中,错误的是(AD)。

  A、运行期异常不需要在函数定义的throws 部分给出

  B、在程序运行中,如发生运行期异常会被自动抛出函数

  C、运行期异常必须用try、catch 块捕获

  D、RuntimeException是各种在正常运行情况下可以被Java 虚拟机抛出的异常的父类

  13、以下关于捕获的原则中,错误的是(D)。

  A、Exception类必须出现,而且必须作为catch 块中第一个匹配的类

  B、先列出具体的异常类,后列出通用的异常类

  C、先列出子类,后列出父类

  D、RuntimeException 可以不被捕获,Java 会自动处理运行期的异常

  三、简答题(每题5分,共20分)。

  1、阅读下面的程序并写出类MyClass3的所有成员,并写明它们定义自哪里。

  class MyClass1{

  private int pro11;

  double pro12;

  }

  class MyClass2 extends MyClass1{

  private double pro12;

  int pro21;

  }

  class MyClass3 extends MyClass2{

  private int pro21;

  double pro31;

  }

  2、创建接口使用什么关键字?接口可以有父接口吗?试书写语句创建—个名为MyInterface的接口,它是继承了MySuperInterface1和MySuperInterface2两个接口的子接口。

  答:创建接口使用关键字Interface。接口可以有父接口。

  Interface MyInterface extends MySuperInterface, MySuperInterface2

  四、编程题(每题10分,共30分)。

  1、编写一个方法,实现对数组元素由大到小排列。

  #include<iostream>

  #include<cstdlib>//函数exit的函数头

  using namespace std;

  int main()

  {

  void sort(int x[],int n);//函数声明

  int n;

  cin>>n;//数组长度由用户输入

  int *a=new int[n];//动态分配数组的长度

  if(a==NULL)

  {

  cout<<"Error,Cannot Allocate Memory!"<<endl;

  exit(1);

  }

  int *p,i;

  p=a;

  for(i=0;i<n;i++)

  cin>>a[i];

  p=a;

  sort(p,n);//调用函数

  for(p=a,i=0;i<n;i++)

  {

  cout<<a[i];

  cout<<endl;

  }

  delete []a;//释放内存块

  return 0;

  }

  void sort(int x[],int n)

  {

  int i,j,k,t;

  for(i=0;i<n-1;i++)//选择排序法,这里也可以选用其他排序法

  {

  k=i;

  for(j=i+1;j<n;j++)

  if(x[j]>x[k])

  k=j;

  if(k!=i)

  {

  t=x[i];

  x[i]=x[k];

  x[k]=t;

  }

  }

  }

下一页更多有关“Java程序设计模拟试题及答案”的内容