《Java程序设计》期末复习.docx

上传人:b****6 文档编号:16021119 上传时间:2023-07-10 格式:DOCX 页数:17 大小:29.11KB
下载 相关 举报
《Java程序设计》期末复习.docx_第1页
第1页 / 共17页
《Java程序设计》期末复习.docx_第2页
第2页 / 共17页
《Java程序设计》期末复习.docx_第3页
第3页 / 共17页
《Java程序设计》期末复习.docx_第4页
第4页 / 共17页
《Java程序设计》期末复习.docx_第5页
第5页 / 共17页
《Java程序设计》期末复习.docx_第6页
第6页 / 共17页
《Java程序设计》期末复习.docx_第7页
第7页 / 共17页
《Java程序设计》期末复习.docx_第8页
第8页 / 共17页
《Java程序设计》期末复习.docx_第9页
第9页 / 共17页
《Java程序设计》期末复习.docx_第10页
第10页 / 共17页
《Java程序设计》期末复习.docx_第11页
第11页 / 共17页
《Java程序设计》期末复习.docx_第12页
第12页 / 共17页
《Java程序设计》期末复习.docx_第13页
第13页 / 共17页
《Java程序设计》期末复习.docx_第14页
第14页 / 共17页
《Java程序设计》期末复习.docx_第15页
第15页 / 共17页
《Java程序设计》期末复习.docx_第16页
第16页 / 共17页
《Java程序设计》期末复习.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

《Java程序设计》期末复习.docx

《《Java程序设计》期末复习.docx》由会员分享,可在线阅读,更多相关《《Java程序设计》期末复习.docx(17页珍藏版)》请在冰点文库上搜索。

《Java程序设计》期末复习.docx

《Java程序设计》期末复习

期末考试题型

一、填空题

1、Java源程序文件的扩展名是___java_______,编译源程序的命令是___javac________。

2、Java程序可分为___applet______________和__application____________两种类型。

3、声明静态成员的关键字是_____static__________,定义一个接口的关键字是_____interface_________。

4、创建pack1.pack2包的语句是____packagepack1.pack2_____________,importx.y.Myclass;语句的功能是_____通过import语句来导入到x,y.Myclass这个类下_____________。

5、___Object______类是所有Java类的直接或者间接父类。

6、转义字符___\t__能够实现“将输出内容跳到下一个制表位”的功能。

7、假设在程序中已执行:

Calendarcurrent=newGregorianCalendar();语句,则current.get(Calendar.YEAR)返回的是________当前时间的年份____________________。

二、单项选择题

1、以下哪个是应用程序main()方法的正确形式?

【B】

A.publicstaticintmain(Stringargs[])B.publicstaticvoidmain(Stringargs[])

C.publicstaticvoidMAIN(Stringargs[])D.publicstaticvoidmain(charargs[])

2、请在Java预定义了的数据类型中,为“姓名”选择一种合适的数据类型:

【B】

A.intB.StringC.booleanD.float

3、short型数据的取值范围为【C】

A.-27~27-1B.-216~216-1C.-215~215-1D.-231~231-1

4、下列标识符中,哪一个是合法的?

【A】

A.$personB.2abC.*pointD.this

5、已知x=10,则条件表达式(x>=5)&&(x<=2)的值是【D】

A.0B.1C.trueD.false

6、下列程序片段的输出结果是【A】

intX=0;

if(X>0)X=1;

switch(x)

{

case1:

System.out.println

(1);

case0:

System.out.println(0);

case2:

System.out.println

(2);

break;

case3:

System.out.println(3);

default:

System.out.println(4);

break;

}

A.0B.4C.2D.1

2330

7、在Java中定义常量的正确语句是【C】

A.intvalue=20;B.constintVALUE=20;

C.finalintVALUE=20;D.intVALUE=20;

8、设有如下的程序代码,在执行完后x和y的值各是多少?

【D】

intx=8,y=3,z;

z=x+++--y;

A.x=8,y=3B.x=10,y=2C.x=9,y=1D.x=9,y=2

9、对于名为Myclass的类,以下哪种方式是定义无参数构造方法的正确形式?

【C】

A.intMyclass(){…}B.voidMyclass(){…}

C.Myclass(){…}D.Myclass(intmyClassObject){…}

10、已有:

Stringstr="12.345";现欲将str转换为对应的双精度浮点数,正确的语句为【D】

A.Integer.parseInt(str);B.Double.valueOf(str);

C.Float.parseFloat(str);D.Double.parseDouble(str);

11、基类中具有【B】访问权限的成员,不允许在子类中直接对其进行访问或调用

A.publicB.privateC.protectedD.缺省的(即package)

12、对于字符串s="java",下面哪个选项可以返回字符'v'在字符串中的位置?

【B】

A.s.charAt('v');B.s.indexOf('v');C.indexOf('v');D.indexOf(s,'v');

13、以下哪一项是创建抽象类X的引用的正确方式?

【C】

A.Xx;x=newX();B.Xx=newX();C.Xx;D.以上均不正确

14、接口X声明了两个空方法m1()和m2(),当实现接口X时,以下哪个语法是正确的?

【C】

A.classYextendsX{B.classYextendsX{

publicvoidm1(){...}publicvoidm1(){...}

publicvoidm2(){...}}

}

C.classYimplementsX{D.classYimplementsX{

publicvoidm1(){...}publicvoidm1(){...}

publicvoidm2(){...}}

}

三、根据题目要求,把下面的程序补充完整

1、以下程序片段的功能是计算分段函数的值:

输入x,求相应的y值

 

……

(1)doublex,y;//将变量x和y声明为double类型

Strings=JOptionPane.showInputDialog("请输入x的值:

");

x=Double.parseDouble(s);

if(x<-5){

y=-x;

}elseif(

(2)x<5){

y=Math.sin(x);

}else{

y=(3)2*x-3;

}

JOptionPane.showMessageDialog(null,"x="+x+'\n'+"函数值为:

"+y);

……

2、以下程序片段实现的功能是对一维数组的元素求和:

……

int

(1)array[]={85,68,12,33,91};//声明一个名为array的int型一维数组

(2)intsum=0;//声明一个int型变量sum,初始值为0

for(inti=0;(3)i

sum=(4)sum+array[i];

System.out.println("累加结果:

"+sum);

……

四、写出下列程序的运行结果

1、

//字符串的比较

publicclassStringCompare{

publicstaticvoidmain(Stringargs[]){

Strings1="abc";

Strings2=newString("abc");

System.out.println(s1==s2);

System.out.println(s1.equals(s2));

System.out.println(pareTo(s2));

}

}

flase

true

0

程序运行结果:

___________________________

2、

//实现多态的程序

classAnimal{

publicvoiddisplay(){

System.out.println("我是一只可爱的动物,...");

}

}

classCatextendsAnimal{

publicvoiddisplay(){

System.out.println("我是能捉老鼠的好猫,...");

}

}

classDogextendsAnimal{

publicvoiddisplay(){

System.out.println("我是主人忠诚的卫士,...");

}

}

publicclassAnimalTest{

publicstaticvoidmain(Stringargs[]){

Animalam=newAnimal();

am.display();

am=newDog();

am.display();

am=newCat();

am.display();

}

}

我是一只可爱的动物,...

我是主人忠诚的卫士,...

我是能捉老鼠的好猫,...

程序运行结果:

____________________________

 

五、编程题

1.类的继承

(1)定义一个矩形类Rect,它封装了:

⏹两个成员变量(访问权限为private):

  length //表示矩形的长度,double类型

width //表示矩形的宽度,double类型

⏹七个成员方法(访问权限为public):

Rect(doublel,doublew)//带参数的构造方法

voidsetLength(doublel)//设置矩形的长度

doublegetLength()//返回矩形的长度

voidsetWidth(doublew)//设置矩形的宽度

doublegetWidth()//返回矩形的宽度

doublegetArea()//返回矩形的面积

StringtoString()//返回形如:

“矩形的长度:

xxx,宽度:

xxx,面积:

xxx”

字符串(其中:

xxx表示相应的数值)

(2)再定义一个立方体类Cube,它继承了矩形类Rect(上一题已定义),并增加了:

⏹一个成员变量(访问权限为private):

height//立方体的高度,double类型

⏹三个成员方法(访问权限为public):

Cube(doublel,doublew,doubleh)//带参数的构造方法,需要调用基类带参数构造函数;

doublegetVolume()//返回立方体的体积(计算公式:

底面积×高度)

StringtoString()//重写toString()方法,返回形如:

“立方体的长度:

xxx,宽度:

xxx,高度:

xxx,体积:

xxx”

字符串(其中:

xxx表示相应的数值)

(3)最后定义一个主类:

CubeTest,在它的main()方法中创建一个长度为4.5,宽度为5.5,高度为6.5的立方体对象cb,然后调用toString()方法输出其相应信息。

package test;  

class Circle { 

 private double radius;  

 public Circle(double r) { 

  this.radius = r;

  }  

 public double getLength() { 

  return radius;

  }  

 public void setLength(double r) { 

  this.radius = r; 

 }  

 public double getArea() { 

  double area; 

  area = Math.PI * radius;   

return area; 

 }  

 public String toString()

 {   

return "圆形的半径:

" + radius + "面积:

" + getArea(); 

 }

  }  

class Cylinder extends Circle {  private double height;  

 public Cylinder(double r, double h) {  

 super(r); 

  this.height = h;

  }  

 public double getVolume() {   

double volume; 

  volume = getArea() * height; 

  return volume;  

}  

 public String toString()

 {   

return ("圆形的半径:

" + getLength() + "底面积:

" + getArea() + "体积:

" + getVolume()); 

 } 

}  

public class CylinderTest { 

 public static void main(String[] args)

 {  

 Cylinder cb = new Cylinder(4.5, 5.5);  

 System.out.println(cb.toString());  

(4)、类似地,如果把矩形改成圆形,当作基类,在子类中增加一个成员变量高度,使其成为圆柱体的情况下将如何修改基类、子类和主程序?

请课后思考之,请组织程序记住步骤和方法。

package test;  

class Circle { 

 private double radius;  

 public Circle(double r) {   this.radius = r;  } 

  public double getLength() {   return radius;  } 

  public void setLength(double r) {   this.radius = r;  } 

  public double getArea() {   double area; 

  area = Math.PI * radius;   return area;  } 

  public String toString() {   

return "圆形的半径:

" + radius + "面积:

" + getArea(); 

 }  }  

class Cylinder extends Circle {

  private double height;  

 public Cylinder(double r, double h) {  

 super(r); 

  this.height = h;  

}  

 public double getVolume() {  

 double volume; 

  volume = getArea() * height; 

  return volume; 

 }  

 public String toString() 

{   

return ("圆形的半径:

" + getLength() + "底面积:

" + getArea() + "体积:

" + getVolume());

 }

 } 

public class CylinderTest { 

 public static void main(String[] args) 

{  

 Cylinder cb = new Cylinder(4.5, 5.5); 

 System.out.println(cb.toString()); 

}

 }

2.用FileInputStream(文件输入流)读文件

(1)步骤

①引入相关的类

importjava.io.IOException;importjava.io.InputStream;

importjava.io.FileInputStream;

②创建一个文件输入流对象

InputStreamf=newFileInputStream(文件名);//对象f关联源数据源

③f.read();//读取文件一个字节,并返回0-255一个int数,若文件读取完毕或再无可读数据,返回-1

④f.available();//可读取字节数

⑤f.close();//关闭文件输入流

(2)完成下面用FileInputStream读文件示例

importjava.io.*;

publicclasstestFile{

publicstaticvoidmain(String[]args){

Filefname=newFile("_____myfile.txt______________");

try{

InputStreamf=newFileInputStream(______fname______________);

intsize=f._avaiable______________;

for(inti=0;i

System.out.print((char)f.__read()_________________);//强制类型

f.____close()_____________________;

}

catch(IOExceptione){

System.out.println("文件读取失败");

}

}

}

 

3.事件处理编程步骤:

①创建运行窗体和独立组件对象;

②确定事件源、事件;

③为事件源注册对应事件侦听器对象;

④实现事件侦听器接口方法;

⑤运行主程序引发相应事件,观察事件处理结果。

(1)利用监听器接口中的方法处理事件

实例10-2功能:

在文本框中输入“123张小明”,当点击“确认”按钮时,下面的标签中将显示:

“您输入了:

123张小明”字样。

//实例10-2

importjava.awt.*;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

classButtonFrameextendsFrameimplements

(1)ActionListener{

Buttonbtn=newButton("确认");

Labellb=newLabel("");

TextFieldtxt=newTextField(10);

ButtonFrame(){

super("实例10-2");

setLayout(newFlowLayout());

setBackground(Color.blue);

setSize(200,100);

lb.setForeground(Color.red);

(2)btn.addActionListener(this);//给按钮注册动作监听器

add(txt);

add(btn);

add(lb);

setVisible(true);

}

//对点击“确认”按钮所做的事件处理

publicvoid(3)actionPerformed(ActionEvente){

(4)lb.setText(“你输入了:

”+txt.getText());

}

}

publicclassTestButtonFrame{

publicstaticvoidmain(String[]args){

ButtonFramebuttonFrame=newButtonFrame();

}

}

(2)修改上面程序,拓展成为通过鼠标事件和键盘事件实现一个简单用户登录画面程序.操作过程:

当输入用户或密码不正确时光标留在对应文本框处,弹出请输入正确用户或密码提示对话框:

当输入用户和密码正确时弹出欢迎对话框.请组织程序记住步骤和方法.

4.采用JDBC-ODBC桥式的数据库连接的主要步骤:

①创建数据源(使用JDBC-ODBC桥式驱动程序时必需);

②注册、加载特定的驱动程序;

③创建连接--Connection对象;

④利用Connection对象生成Statement对象;

⑤利用Statement对象执行SQL语句,如查询、更新、插入、删除等;

⑥若是执行查询语句,还要从ResultSet读取数据;

⑦关闭ResultSet、Statement、Connection等。

(1)JDBC_ODBC桥方式查询数据库实例

import__java.sql.*__;//导入java.sql包中的所有类

publicclassQueryTest{

publicstaticvoidmain(String[]args){

Stringurl="_jdbc:

odbc:

数据源名称___";//根据数据源,设置数据库URL

StringuserName="";//登录数据库用户名

Stringpassword="";//用户密码

___Connection___conn=null;//声明Connection对象

_____Statement___stmt=null;//声明Statement对象

try{

//加载JDBC-ODBC驱动程序

Class.___forName__("sun.jdbc.odbc.__JdbcOdbcDriver____");

//创建连接

conn=DriverManager._________________(url,userName,password);

//通过Connection对象,创建Statement对象

stmt=conn.__createStatement__();

//执行查询"年龄为20岁的学生信息"的SQL语句,得到结果集

____ResultSet__rs=stmt.__executeQuery____("select*fromstudentswhereage=”20”_____");

//通过循环输出相关学生信息

System.out.println("学号"

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2