当前位置:文档之家› java题带答案

java题带答案

java题带答案
java题带答案

Java期末考试题库

选择题

(ABCD)1、以下选项中,哪些属于JDK工具?(多选)

A、Java编译器

B、Java运行工具

C、Java文档生成工具

D、Java打包工具

(C)2、Java属于以下哪种语言?

A、机器语言

B、汇编语言

C、高级语言

D、以上都不对(AD)1、以下选项中,哪些属于合法的标识符?(多选)AD A、Hello_World B、class C、123username D、username123 (AD)2、关于方法重载的描述,以下选项中哪些是正确的?(多选)(AD)ABD

A、方法名必须一致

B、返回值类型必须不同

C、参数个数必须一致

D、参数的个数或类型不一致

(C)3、以下关于变量的说法错误的是? C

A、变量名必须是一个有效的标识符

B、变量在定义时可以没有初始值

C、变量一旦被定义,在程序中的任何位置都可以被访问

D、在程序中,可以将一个byte类型的值赋给一个int类型的变量,不需要特殊声明

(ABCD)4、以下选项中,switch语句判断条件可以接收的数据类型有哪些?(多选) ABCD

A、int

B、byte

C、char

D、short

(AC)7、下列语句哪些属于循环语句?(多选) AC

A、for语句

B、if语句

C、while语句

D、switch语句

(A)8、下面哪种写法可以实现访问数组arr的第1个元素?A

A、arr[0]

B、arr(0)

C、arr[1]

D、arr(1)

(B)9、以下哪个选项可以正确创建一个长度为3的二维数组?

(B)C

A、 new int [2][3];

B、 new int[3][];

C、 new int[][3];

D、以上答案皆不对

(A)10、请先阅读下面的代码。

int x = 1;

int y = 2;

if (x % 2 == 0) {

y++;

}else {

y--;

}

System.out.println("y=" + y);

上面一段程序运行结束时,变量y的值为下列哪一项?

A、1

B、2

C、3

D、switch语句

(B)1、在类的继承关系中,需要遵循以下哪个继承原则?

A、多重

B、单一

C、双重

D、不能继承

(C)2、在Java语言中,以下哪个关键字用于在方法上声明抛出异常?

A.try

B.catch

C.throws

D.throw

(ABC)3、关于super关键字以下说法哪些是正确的?(多选)

A、super关键字可以调用父类的构造方法

B、super关键字可以调用父类的普通方法

C、super与this不能同时存在于同一个构造方法中

D、super与this可以同时存在于同一个构造方法中(ABCD)4、以下说法哪些是正确的?(多选)

A、Java语言中允许一个类实现多个接口

B、Java语言中不允许一个类继承多个类

C、Java语言中允许一个类同时继承一个类并实现一个接口

D、Java语言中允许一个接口继承一个接口

(C)5、类中的一个成员方法被下面哪个修饰符修饰,该方法只能在本类被访问?

A、public

B、 protected

C、 private

D、default (AC)6、关于抽象类的说法哪些是正确的?(多选)

A、抽象类中可以有非抽象方法。

B、如果父类是抽象类,则子类必须重写父类所有的抽象方法。

C、不能用抽象类去创建对象。

D、接口和抽象类是同一个概念。

(C)7、在Java中,要想让一个类继承另一个类,可以使用以下哪个关键字?

A、inherits

B、implements

C、extends

D、modifies

(D)8、System类位于以下哪个包中?

A、java.io

B、java.util

C、java.awt

D、https://www.doczj.com/doc/ae13973305.html,ng

(B)1、Thread类位于下列哪个包中?

A、java.io

B、https://www.doczj.com/doc/ae13973305.html,ng

C、java.util

D、java.awt (AC)2、关于线程的创建过程,下面四种说法正确的有哪些?(多选)

A、定义Thread类的子类,重写Thread类的run()方法,创建该子类的实例对象,调用对象的start()方法

B、定义Thread类的子类,重写Thread类的run()方法,创建该子类的实例对象,调用对象的run()方法

C、定义一个实现Runnable 接口的类并实现run()方法,创建该类实例对象,将其作为参数传递给Thread类的构造方法来创建Thread对象,调用Thread对象的start()方法

D、定义一个实现Runnable 接口的类并实现run()方法,创建该类对象,然后调用run()方法

(ABC)3、对于通过实现Runnable接口创建线程,下面说法正确的有哪些?(多选)

A、适合多个相同程序代码的线程去处理同一个资源的情况

B、把线程同程序代码、数据有效的分离,很好的体现了面向对象的设计思想

C、可以避免由于Java的单继承带来的局限性

D、编写简单,可以不通过Thread类直接创建线程

(BC)4、对于线程的生命周期,下面四种说法正确的有哪些?(多选)

A、调用了线程的start()方法,该线程就进入运行状态 (就绪,还要获得CPU使用权)

B、线程的run()方法运行结束或被未catch的InterruptedException等异常终结,那么该线程进入死亡状态

C、线程进入死亡状态,但是该线程对象仍然是一个Thread对象,在没有被垃圾回收器回收之前仍可以像引用其它对象一样引用

D、线程进入死亡状态后,调用它的start()方法仍然可以重新启动

(ABD)5、对于死锁的描述,下面四种说法正确有哪些?(多选)

A、当两个线程互相等待对方释放同步锁时会发生死锁

B、Java虚拟机没有检测和处理死锁的措施

C、一旦出现死锁,程序会发生异常

D、处于死锁状态的线程处于阻塞状态,无法继续运行

(ABC)6、下面四个选项中,哪些是线程进入阻塞状态的原因?(多选)

A、线程试图获取某个对象的同步锁,而该锁被其它线程持有

B、线程调用了另一个线程的join()方法

C、当线程调用了一个阻塞式的IO方法

D、线程调用了setDaemon(boolean b)方法

(C)7、线程调用sleep()方法后,该线程将进入以下哪种状态?

A、就绪状态

B、运行状态

C、阻塞状态

D、死亡状态

(D)8、在以下哪种情况下,线程进入就绪状态?

A、线程调用了sleep()方法时

B、线程调用了join()方法(终止)

C、线程调用了yield()方法时

D、线程调用了notify()方法?? (AB)9、下面四个选项中,对线程同步的目的描述正确的有哪些?(多选)

A、锁定资源,使同一时刻只有一个线程去访问它,防止多个线程操作同一个资源引发错误

B、提高线程的执行效率

C、让线程独占一个资源

D、让多个线程同时使用一个资源

(ABCD)10、对于wait()方法,下面说法正确的是?(多选)

A、wait()方法的调用者是同步锁对象

B、wait()方法使线程进入等待状态

C、调用同一锁对象的notify()或notifyAll()方法可以唤醒调用wait()方法等待的线程

D、调用wait()方法的线程会释放同步锁对象

(C)1、先阅读下面的程序片段:

String str = "abccdefcdh";

String[] arr = str.split("c");

System.out.println(arr.length);

程序执行后,打印的结果是几?

A、2个

B、 3个

C、4个

D、 5个

(C)2、以下都是Math类的常用方法,其中用于计算绝对值的方法是哪个?

A、ceil()

B、 floor()

C、 abs()

D、random()

(D)3、Random对象能够生成以下哪种类型的随机数?

A、int

B、string

C、double

D、A和C

(C)4、String s = "abcdedcba";则s.substring(3,4)返回的字符串是以下选项中的哪个?

A、cd

B、de

C、d

D、e

(C)5、假若indexOf()方法未能找到所指定的子字符串,则返回以下选项中的哪个?

A、 false

B、 0

C、-1

D、以上答案都不对

(B)6、要产生[20,999]之间的随机整数可以使用以下哪个表达式?

A.(int)(20+Math.random()*97)

B. 20+(int)(Math.random()*980)

C. (int)Math.random()*999

D. 20+(int)Math.random()*980

(C)7、以下Math类的方法中,-4.4通过哪个方法运算后,结果为-5.0?

A. round()四舍五入

B. min()

C. floor() 小于参数最大整数

D. ceil()大于参数最小整数

(A)8、下面的程序段执行后,输出的结果是以下哪个选项?StringBuffer buf=new StringBuffer("Beijing2008");

buf.insert(7,"@");

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

A、Beijing@2008

B、@Beijing2008

C、Beijing2008@

D、Beijing#2008

(A)9、阅读下面的程序:

public class test {

public static void main(String args[]) {

int i;

float f = 2.3f;

double d = 2.7;

i = ((int)Math.ceil(f)) * ((int)Math.round(d)); System.out.println(i);

}

}

程序执行后,运行结果为以下哪个选项?

A、 9

B、 5

C、6

D、 6.1

(B) 10、先阅读下面的程序片段:

String str1=new String("java");

String str2=new String("java");

StringBuffer str3=new StringBuffer("java");

对于上述定义的变量,以下表达式的值为true的是哪个?

A、 str1==str2;

B、str1.equals(str2);

C、str1==str3;

D、以上都不对

(BC)1、要想保存具有映射关系的数据,可以使用以下哪些集合?(多选)

A、ArrayList

B、TreeMap

C、HashMap

D、TreeSet (A)2、Java语言中,集合类都位于哪个包中?

A、java.util

B、https://www.doczj.com/doc/ae13973305.html,ng

C、java.array

D、java.collections

(D)3、使用Iterator时,判断是否存在下一个元素可以使用以下哪个方法?

A、next()

B、hash()

C、hasPrevious()

D、hasNext()

(ABD)4、关于foreach循环的特点,以下说法哪些是正确的?(多选)

A、foreach循环在遍历集合时,无需获得容器的长度

B、foreach循环在遍历集合时,无需循环条件,也无需迭代语句

C、foreach循环在遍历集合时非常繁琐

D、foreach循环的语法格式为:for(容器中元素类型临时变量:容器变量)。

(C)5、在程序开发中,经常会使用以下哪个类来存储程序中所需的配置?

A、HashMap

B、TreeSet

C、Properties

D、TreeMap

(AB)6、使用Enumeration遍历集合时,需要使用以下哪些方法?(多选)

A、hasMoreElements()

B、nextElement()

C、next()

D、hashNext()

(D)7、要想集合中保存的元素没有重复并且按照一定的顺序排列,可以使用以下哪个集合?

A、LinkedList

B、 ArrayList

C、hashSet

D、TreeSet (AB)8、下列哪些说法是正确的?(多选)

A、LinkedList集合在增删元素时效率较高

B、ArrayList集合在查询元素时效率较高

C、HashMap不允许出现一对null键null值

D、HashSet集合中元素可重复并且无序

(ABC)9、以下哪些方法是LinkedList集合中定义的?(多选)

A、getLast()

B、getFirst()

C、remove (int index)

D、next()

(B)10、获取单列集合中元素的个数可以使用以下哪个方法?

A、length()

B、size()

C、get(int index)

D、

add(Object obj)

(AB)1、下面选项中,哪些是标准输入输出流?(多选)

A、System. In

B、System. Out

C、InputStream

D、OutputStream (C)2、以下选项中,哪个是的父类?

A. C.OutputStream D.InputStream

(C)3、File类中以字符串形式返回文件绝对路径的的方法是?

A、getParent()

B、getName()

C、getAbsolutePath()

D、getPath()

(ABCD)4、下面哪些是常用的字符码表?(多选)

A、ASCII

B、UTF-8

C、ISO8859-1

D、GB2312

(AB)5、以下创建RandomAccessFile类实例对象的代码,哪些是正确的?(多选)

A、RandomAccess

File(“D:\\itcast\\dir1\\test.java”),”rw”)

B、

RandomAccessFile( “D:\\itcast\\dir1\\test.java”,”r”)

C、RandomAccessFile( “D:\\itcast\\dir1\\t est.java”)

D、

RandomAccessFile( “D:\\itcast\\dir1\\test.java”,”wr ”)

(ACD)6、以下哪些属于InputStream类的方法?(多选)

A、int read(byte[])

B、void flush()

C、void close()

D、available()

(A)7、以下选项中,哪个流中使用了缓冲区技术?

A 、BuffereOutputStream B、 C、DataOutputStream D、(A)8、以下选项中,哪个是()方法返回值的类型?

A、 boolean

B、 int

C、 String

D、 Integer

(D)9、以下选项中,哪个文件操作类可以实现一次读入多个文件?

A、 B、BufferedReader C、 D、SequenceInputStream

(A)10、以下对File类的public boolea isFile()方法的描述,哪个是正确的?

A、判断该File对象所对应的是否是文件。

B、判断该File对象所对应的是否是目录。

C、返回文件的最后修改时间。

D、在当前目录下生成指定的目录。

(D)1、下面四个组件中哪一个不是Component的子类?

A、Button

B、Dialog

C、Label

D、MenuBar

(D)2、每一个GUI程序中必须包含一个什么组件?

A、按钮

B、标签

C、菜单

D、容器

(ABD)3、下面四个选项中,哪些是事件处理机制中的角色?(多选)

A、事件

B、事件源

C、事件接口

D、事件监听器

(A)4、当鼠标按键被释放时,会调用以下哪个事件处理器方法?

A、mouseReleased()

B、mouseUp()

C、mouseOff()

D、mouseLetGo()

(D)5、ActionEvent的对象会被传递给以下哪个事件处理器方法?

A、addChangeListener()

B、addActionListener()

C、stateChanged()

D、actionPerformed() (ABCD)6、AWT中,常用的布局管理器包括哪些?(多选)

A、FlowLayout布局管理器

B、BorderLayout布局管理器

C、CardLayout布局管理器

D、GridLayout布局管理器(ABD)7、下面哪些是FlowLayout类中表示对齐方式的常量?(多选)

A、FlowLayout.LEFT

B、FlowLayout.CENTER

C、FlowLayout.VERTICAL

D、FlowLayout.RIGHT (ABC)8、下面对与Swing的描述,正确的有哪些?(多选)

A、Swing 是在AWT基础上构建的一套新的图形界面系统

B、Swing提供了AWT 所能够提供的所有功能

C、Swing 组件是用Java代码来实现的

D、Swing组件都是重量级组件

(D)9、下面四对AWT和Swing对应组件中,错误的是?

A、Button和JButton

B、Dialog和JDialog

C、MenuBar和JMenuBar

D、ComboBox和JComboBox

(C)10、使用下面哪个组件可以接收用户的输入信息?

A、JButton

B、JLabel

C、JTextField

D、以上都可以

(C) 1.使用UDP协议通信时,需要使用哪个类把要发送的数据打包?(d)的街A, Socket 辣C m05 3136t0 www B. DatagramSocket

C. DatagramPacket

D. ServerSocket

(A)2. 以下哪个是 serverSocket 类用于接收来自客户端请求的方法? ( )

A. accept()

B. getOutputStream()"

C. receive( )

D. get()

(ABD)3.以下说法哪些是正确的? (多选)()

A.TCP连接中必须要明确客户端与服务器端

B.TCP协议是面向连接的通信协议,它提供了两台计算机之间可靠无差错的数

据传输

C.UDP协议是面向无连接的协议,可以保证数据的完整性

D.UDP协议消耗资源小,通信效率高,通常被用于音频、视频和普通数据的传输

(B)4.以下哪个类用于实现TCP通信的客户端程序? ( ) A. ServerSocket B. Socket

C. Client

D. Server

(C)5.进行UDP通信时,在接收端若要获得发送端的IP地址,可以使用DatagramPacket的哪个方法? (

A. getAddress()

B. getPort()

C. getName()

D. getData()

(A)6. 以下哪个方法是DatagramSocket 类用于发送数据的方法?()

A. receive( )

B. accept()

C. set()

D. send()

(B)7.在程序运行时,DatagramSocket的那个方法会发生阻塞()

A. send()

B. receive()

C. close()

D. connect()

(C)8. TCP协议的“三次握手”中,第一-次握手指的是什么?() A.客户端再次向服务器端发送确认信息,确认连接

B.服务器端向客户端回送一.个响应,通知客户端收到了连接请求

C.客户端向服务器端发出连接请求,等待服务器确认

D.以上答案全部错误

(B)1、类的定义必须包含在以下哪种符号之间?

A、方括号[]

B、花括号{}

C、双引号“”

D、圆括号()

(D)2、下面哪一个是正确的类的声明?

A、 public void HH{…}

B、 public class Move(){…}

C、 public class void number{}

D、 public class Car{…}(B)3、在以下什么情况下,构造方法会被调用?

A、类定义时

B、创建对象时

C、调用对象方法时

D、使用对象的变量时

(ABC)4、下面对于构造方法的描述,正确有哪些?(多选)

A、方法名必须和类名相同

B、方法名的前面没有返回值类型的声明

C、在方法中不能使用return语句返回一个值

D、当定义了带参数的构造方法,系统默认的不带参数的构造方法依然存在

(ABCD)5、使用this调用类的构造方法,下面的说法正确的是?(多选)

A、使用this调用构造方法的格式为this([参数1,参数2…])

B、只能在构造方法中使用this调用其它的构造方法

C、使用this调用其它构造方法的语句必须放在第一行

D、不能在一个类的两个构造方法中使用this互相调用(ACD)6、下面哪些可以使用static关键字修饰?(多选)

A、成员变量

B、局部变量

C、成员方法

D、成员内部类

填空题

(class )1、Java中的程序代码都必须在一个类中定义,类使用__ ____关键字来定义。

(true和false )2、布尔常量即布尔类型的两个值,分别是_ _____和______。

(基本数据类型、引用数据类型)

4、Java中的变量可分为两种数据类型,分别是_基本数据类型_____和_引用数据类型_____。(34)9、若int

[]a={12,45,34,46,23}; ,则a[2]= ______。

(56) 10、若int a[3][2]={{123,345},{34,56},{34,56}},则a[2][1]= ______。

(继承)1、在Java语言中,允许使用已存在的类作为基础创建新的类,这种技术我们称为继承______。

(方法,抽象类)2、一个类如果实现一个接口,那么它就需要实现接口中定义的全部_方法_____,否则该类就必须定义成_抽象类_____。

(import)3、在程序开发中,要想将一个包中的类导入到当前程序中,可以使用______关键字。

(子类、父类、基类)4、一个类可以从其它的类派生出来,派生出来的类称为______,用于派生的类称为______或者__ ____。(Exception) 5、 JDK中定义了大量的异常类,这些类都是_ _____类的子类或者间接子类。

(final)6、定义一个Java类时,如果前面加使用______关键字修饰,那么该类不可以被继承。

(try、catch)9、异常的捕获通常由try、catch两部分组成,_____代码块用来存放可能发生异常,_catch_____代码块用来处理产生的异常。

(填空题线程、通信)1、一个应用程序中有多条并发执行的线索,每条线索都被称作一个线程______,它们会交替执行,彼此间可以进行_通信_____。

(Thread、Runnable)2、在实现多线程的程序时有两种方式,一是通过继_Thread_____承类,二是通过实现Runnable______接口。

(就绪)3、yield()方法只能让相同优先级或者更高优先级、处于_就绪_____状态的线程获得运行的机会。

(synchronized、对象、this)4、在Java语言中,同步方法需要用到关键字_synchronized_,对于同步方法而言无需指定同步锁,它的同步锁是方法所在的_对象_____,也就是_this_____(关键字)。

(进程)5、在多任务系统中,每个独立执行的程序称之为_线程

_____,也就是“正在运行的程序”。

(新建状态(New)、就绪状态(Runnable)、运行状态(Running)、阻塞状态(Blocked)、死亡态(Terminated))6、线程的整个生命周期分为五个阶段,分别是_新建_____、就绪______、_运行

_____、_阻塞_____、和死亡_____。

(10、1)7、线程的优先级用1~10之间的整数来表示,其中__10___代表优先级最高,__1___代表优先级最低。

(开启一个新线程、run()方法)8、在Thread类中,提供了一个start()方法,该方法用于启动线程______,当新线程启动后,系统会自动调用__run()____方法。

(wait()、notify()、notifyAll())9、要想解决线程间的通信问题,可以使用__wait()____、notify()______、

_notifyALL()_____方法。

(setDaemon(true)、start())10、要将某个线程设置为后台线程,需要调用该线程的_setDaemon(true)_____方法,该方法必须在_start()_____方法之前调用。

(String、StringBuffer)1、在Java中定义了两个类来封装对字

符串的操作,它们分别是_和_ ___。

(Date、Calendar、DateFormat)2、Java中的操作日期的类有____、____、____等。

(getRuntime())3、在程序中若想取得一个Runtime实例,则可以调用Runtime类的静态方法_____。

(sqrt())4、Math类中用于计算所传递参数平方根的方法是_____。

(DateForma)5、Java中专门用于将日期格式化为字符串的类是_____。

(π、e)6、Math类中有两个静态常量PI和E,分别代表数学常量____和___。

(Random、java.util)7、Java中的用于产生随机数的类是___,它位于____包中。

(length())8、String类中用于返回字符串字符个数的方法是_____。

(静态)9、System类中所提供的属性和方法都是_静态___的,想要引用这些属性和方法,直接使用System类调用即可。(edcba)10、已知 sb 为 StringBuffer 的一个实例,且

sb.toString() 的值为 "abcde ",则执行sb. reverse()后,sb.toString()的值为____。

(集合)1、JDK中提供了一系列可以存储任意对象的类,统称为()

第4章-Java语言与面向对象作业习题与答案

第4章 Java语言与面向对象作业习题与答案 一、简答题 1.什么是对象?什么是类? 对象是一种抽象数据类型。它包含了事物的静态特征(属性)和动态特征(行为)两大特征。 类是一组同种对象的集合与抽象。即是具有相同属性和方法的一组对象集合。 2.Java语言的单继承是指什么? 一个类可以派生出多个子类,但子类只允许有一个父类,而不允许存在多个父类。 3.在一个共有类中的数据成员及方法成员的访问控制符为缺省,则这个类可供什么样的包引用? 当一个类的访问控制符为public共有时,表明这个类作为整体对其它类是可见和可引用的;但其数据成员和方法成员访问控制符为缺省时,它们只能被包中类(含当前类)引用。 4.抽象类的用途 (1)设计在更高的层次上进行,不考虑具体对象,从而大大简化了处理问题的复杂性; (2)设计出的类也具有更加良好的可扩展性。 5.什么是非静态的成员变量? 非静态成员即为实例成员变量(没有加static修饰的变量)。 6.异常Exception和错误Error有什么不同?Java如何处理它们? 答:错误通常是指程序本身存在非法情形,常常是因为代码存在问题而引起的,如造成系统崩溃、虚拟机粗错、动态失败等,这一类错误无法恢复或不可能捕获,并将导致应用程序中断。 异常表示另外一种“非同寻常”的错误。这种错误通常是不可预测,但可以被捕获且可以恢复。常见的异常情况包括存不足、找不到所需文件等。 对于错误,编程人员可以通过对程序进行更仔细的检查,以避免这种错误。 对于异常,可以使用捕获机制进行捕获,再编写出相应的处理程序。 7.简单述Java的异常处理机制。 答:Java采取“抛出—捕获”的方式,一旦一个异常想象产生,Runnable环境和应用程序会抛出各种标准类型和自己定义的异常,系统就可以捕获这些异常,并一定有相应的机制来处理它,确保不会产生司机、死循环或其它对操作系统的损害,从而保证了整个程序运行的安全性。 8.简单述throw语句和throws关键字之间的差别。 答:throw语句是在一个方法中用来直接抛出异常对象,其格式是: throw 异常对象; throws关键字是用一个方法声明首部,用来指出这个方法中可能产生若干种异常,其格式:[方法修饰符] 返回类型方法名(参数表)throws 异常类型表 { /*方法体*/ } 二、填空题 1.所有Java应用程序都必须包含的一个类方法是 main() 。 2.面向对象程序设计语言的三种重要特性是封装性、继承性和多态性。

最新JAVA语言与面向对象程序设计课后习题答案

1 第1章面向对象软件开发概述 2 1.简述面向过程问题求解和面向对象问题求解的异同。试列举出面向对象和面向3 过程的编程语言各两种。 4 答:面向过程问题求解,以具体的解题过程为研究和实现的主体,其思维特点更5 接近于计算机;面向对象的问题求解,则是以“对象”为主体,“对象”是现实世6 界的实体或概念在计算机逻辑中的抽象表示,更接近于人的思维特点。 7 面向过程的编程语言:C,Pascal, Foratn。 8 面向对象的编程语言:C++, Java,C#。 9 2.简述对象、类和实体及它们之间的相互关系。尝试从日常接触到的人或物中抽10 象出对象的概念。 11 答:面向对象技术中的对象就是现实世界中某个具体的物理实体在计算机逻辑中12 的映射和体现。类是同种对象的集合与抽象。类是一种抽象的数据类型,它是所有13 具有一定共性的对象的抽象,而属于类的某一个对象则被称为是类的一个实例,是14 类的一次实例化的结果。如果类是抽象的概念,如“电视机”,那么对象就是某一15 个具体的电视机,如“我家那台电视机”。 16 3.对象有哪些属性?什么是状态?什么是行为?二者之间有何关系?设有对象“学17 生”,试为这个对象设计状态与行为。 18

答:对象都具有状态和行为。 19 对象的状态又称为对象的静态属性,主要指对象内部所包含的各种信息,也就是20 变量。每个对象个体都具有自己专有的内部变量,这些变量的值标明了对象所处的21 状态。 22 行为又称为对象的操作,它主要表述对象的动态属性,操作的作用是设置或改变23 对象的状态。 24 学生的状态:姓名、性别、年龄、所在学校、所在系别、通讯地址、电话号码、25 入学成绩等; 26 学生的行为:自我介绍、入学注册、选课、参加比赛等。 27 4.对象间有哪三种关系?对象“班级”与对象“学生”是什么关系?对象“学生” 28 与对象“大学生”是什么关系? 29 答:对象间可能存在的关系有三种:包含、继承和关联。 30 对象“班级”与对象“学生”是包含关系。 31 对象“学生”与对象“大学生”是继承关系。 32 5.有人说“父母”和“子女”之间是继承的关系。这种说法是否正确?为什么? 33 答:“父母”和“子女”之间不是面向对象意义上的“继承”关系。因为这里的34

JAVA面向对象基础测试题

读书破万卷下笔如有神 JAVA面向对象基础测试题 提示:本题为第一阶段,JAVA面向对象基础部分练习题,包括对象,类,继承,封装,多态,接口,内部类等等,java核心基础,适合初学者对面向对象基础的知识进行测试,以便查漏补缺。 1. 程序执行的结果是:()。 01 public class Point{ 02 int y = 7; 03 public void step(int y) { 04 y += y; 05 System.out.println(y); 06 读书破万卷下笔如有神 } 07 public static void main(String[] args) {

08 Point p = new Point(); 09 p.step(10); 10 } 11 } A.14 B.20 C.10 D.17 正确答案:B解析: 2. 读书破万卷下笔如有神 程序的执行结果是:()。 01 public class Question { 02 private int num; 03 public static void main(String [] args){ 04

Question q = new Question(); 05 q.num=13; 06 update(q); 07 System.out.println(q.num); 08 } 读书破万卷下笔如有神 09 public static void update(Question q){ 10 q.num=9; 11 } 12 } A.13 B.9 C.0 D.4

正确答案:B解析: 3. 程序执行的结果是:()。 01 public class Answer { 读书破万卷下笔如有神 02 public static void main(String[] args) { 03 int score = 20; 04 Answer ans= new Answer(); 05 ans.add(score); 06 System.out.println( main:score = + score); 07 } 08 void add(int score) { 09 System.out.println( add:score= + score++); 10

Java面向对象程序设计_习题解答

Java面向对象程序设计 清华大学出版社 (编著耿祥义张跃平) 习题解答 建议使用文档结构图 (选择Word菜单→视图→文档结构图)

习题1 1.James Gosling 2. (1)使用一个文本编辑器编写源文件。 (2)使用Java编译器(javac.exe)编译Java源程序,得到字节码文件。 (3)使用J ava解释器(java.exe)运行Java程序 3.Java的源文件是由若干个书写形式互相独立的类组成的。 应用程序中可以没有public类,若有的话至多可以有一个public类。 4.系统环境path D\jdk\bin; 系统环境classpath D\jdk\jre\lib\rt.jar;.; 5. B 6.Java源文件的扩展名是.java。Java字节码的扩展名是.class。 7.D 8.(1)Speak.java (2)生成两个字节码文件,这些字节码文件的名字Speak.class 和Xiti8.class (3)java Xiti8 (4)执行java Speak的错误提示 Exception in thread "main" https://www.doczj.com/doc/ae13973305.html,ng.NoSuchMethodError: main 执行java xiti8得到的错误提示 Exception in thread "main" https://www.doczj.com/doc/ae13973305.html,ng.NoClassDefFoundError: xiti8 (wrong name: Xiti8) 执行java Xiti8.class得到的错误提示 Exception in thread "main" https://www.doczj.com/doc/ae13973305.html,ng.NoClassDefFoundError: Xiti8/class 执行java Xiti8得到的输出结果 I'm glad to meet you 9.属于操作题,解答略。

java面向对象考试题-练习版

JAVA面向对象结课考试题 班级_______ 姓名________得分___________ 1下列程序编译或运行的结果是。() public static void main(String args[]){ int a = 10, b,c; if(a>50){ b=9; } c = b + a; System.out.println(c); } A.10 B. 19 C.9 D.编译错误 2、已知’1’的ascii码值为31下列语句片段中,four 的值为( ) int three = 3; char one = ‘1’; char four = (char)(three+one); A. 3 B. 1 C. 31 D. 4 3、下列代码的运行结果是( ) public static void main(String[] args){ int a = 7; System.out.println(a%3); } A 6 B 2 C 5 D 1 4、以下程序的输出结果为( )。 public static void main(String[]args) { int x = 1, y = 1, z =1; if(x--==1&&y--==1||z--==1) System.out.println(“x=” +x+”,y=” +y+”,z=” +z); } A x=0, y=1,z=1 B x=0,y=2,z=2 C x=0,y=2,z=1 D x=0,y=0,z=1 5、下列代码段编译和运行的结果是() public static void main(String args[]){ String str = “null”; if(str==null){ System.out.println(“null”); }else if(str.length()==0){ System.out.println(“zero”); }else { System.out.println(“some”); } } A null B zero C some D 编译错误6、下列代码的运行结果是(): public class Animal{ public String noise(){ return “peep”; } public static void main(String[] args){ Animal animal = new Dog(); Cat cat = (Cat)animal; System.out.println(cat.noise()); } } class Dog extends Animal{ public String noise(){ return “bark”; } } class Cat extends Animal{ public String noise(){ return “meow”; } } A. peep B.bark C.meow D.编译错误 E.抛出运行时异常 7、关于下列代码说法正确的是( ) public class Foo{ public int add(int a,int b){ return a+b; } public static void main(String[] args){ Foo foo= null; System.out.println(foo.add(10,20)); } } A. 编译错误 B. 正常运行,但无结果输出 C.30 D NullPointerException 8、程序的执行结果是( ) public class Test{ int x; public static void change(Test t){ t.x = 3; } public static void main(String[] args){

面向对象试题(答案)

CoreJavaOOP考试题 考试时间:90分钟 考试总分:100分 一、选择题(不定项选择)(22*4=88) 1. 类A,B的定义如下: class A { private int a = 100; A() { System.out.print("A()"); System.out.println(a); } } class B extends A { private int a = 200; B() { System.out.print("B()"); System.out.println(a); } } 运行下面的代码: new B(); 输出的结果是:(A )。 A. A() 100 B() 200 B. A() 200 B() 200 C. B() 200 A() 100 D. B() 200 A() 200

2.下列说法正确的是(D ) A.所有类都必须定义构造方法(构造器) B.构造方法必须初始化类的所有数据成员 C.子类定义了构造器后,不再调用父类的构造器 D.构造方法可以访问类的非静态成员 3.在Java中,哪个关键字使类不能派生子类?, (A ) A : final B : public C : private D : native 4.class Base{ static void test(){ System.out.println(“Base.test()”); } } public class Child extends Base{ static void test(){ System.out.println(“Child.test()”); } public static void main(String[] args){ Base base = new Child(); Child child = new Child(); base.test(); child.test(); } } 程序运行的结果是( C ) A.Child.test() Child.test() B.Child.test() Base.test() C.Base.test() Child.test() D.Base.test() Base.test()

Java面向对象测试试题

《使用Java实现面向对象编程》阶段测试-笔试试卷 一、选择题(共25题,每题4分,满分100分) 1) 在Java类中,使用以下()声明语句来定义公有的int型常量MAX。 A. public int MAX = 100; B. final int MAX = 100; C. public static int MAX = 100; D. public static final int MAX = 100; 2) 在Java中,下列关于方法重载的说法中错误的是()。 A. 方法重载要求方法名称必须相同 B. 重载方法的参数列表必须不一致 C. 重载方法的返回类型必须一致 D. 一个方法在所属的类中只能被重载一次 3) 给定Java代码如下所示,在横线处新增下列()方法,是对cal方法的重载。 public class Test{ public void cal(int x, int y, int z) {} } A. public int cal(int x, int y, float z){ return 0; } B. public int cal(int x, int y, int z){ return 0; } C. public void cal(int x, int z){ } D. public void cal(int z, int y, int x){ } 4) 在Java中,下面对于构造函数的描述正确的是()。 A. 类必须显式定义构造函数 B. 构造函数的返回类型是void C. 构造函数和类有相同的名称,并且不能带任何参数 D. 一个类可以定义多个构造函数

java面向对象试卷及答案

java面向对象程序设计 系班级姓名成绩得分评卷人 一、填空题(每空2分,共20分) 1.Java源程序的扩展名是,经过编译后的程序的扩展名是。2.Socket通常也称为,用于描述和。3.线程的优先级在至之间,数值越大 4.构造方法是一种特殊的成员方法,构造方法名与相同 5.Java语言只允许单继承,指每个类只能有一个。 二、选择题(每题2分,共50分) 1.下列哪个概念是面向对象和面向过程程序设计所共有的() A、继承 B、流程控制 C、抽象 D、封装 2.以下关于执行Java小程序的论述错误的是:() A、可以通过浏览器调用嵌入了Java小程序的HTML文档 B、可以通过appletviewer.exe调用嵌入了Java小程序的HTML文档 C、可以通过java.exe调用嵌入了Java小程序的HTML文档 D、可以在Java集成开发环境中调用嵌入了Java小程序HTML文档 3.符合对象和类关系的是:() A、人和老虎 B、书和汽车 C、楼和土地 D、松树和植物 4.关于选择结构下列哪个说法正确?() A.if语句和else语句必须成对出现 B.if语句可以没有else语句对应 C.一个if语句只能有一个else if语句与之对应 D.else if结构中必须有default语句 5.while循环和do…while循环的区别是:()

A.没有区别,这两个结构任何情况下效果一样 B.while循环比do…while循环执行效率高 C.do…while循环执行次数可能为0 D.while循环执行次数可能为0 6.关于for循环和while循环的说法哪个正确?() A.while循环先判断后执行,for循环先执行后判断。 B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果C.两种循环任何时候都不可以替换 D.两种循环结构中都必须有循环体,循环体不能为空 7.下列修饰符中与访问控制无关的是() A.private B.public C.protected D.final 8.方法内的形参:() A.必须定义多个形参B.可以没有 C.至少有一个D.只能是简单变量 9.throws的作用:() A.表示方法可能会抛出例外 B.表示后面是方法的输出量 C.方法的标志,每个方法都必须有 D.没有意义 10.在Java语言中,整型常量123占用的存储字节数是:()A.1B.2 C.4 D.8 11.关于对象成员占用内存的说法哪个正确?() A.同一个类的对象共用同一段内存 B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C.对象的方法不占用内存 D.以上都不对 12.return语句:()

Java面向对象测试试题(经典)

《使用实现面向对象编程》阶段测试-笔试试卷 一、选择题(共25题,每题4分,满分100分) 1) 在类中,使用以下()声明语句来定义公有的型常量。 A. = 100; B. = 100; C. = 100; D. = 100; 2) 在中,下列关于方法重载的说法中错误的是()。 A. 方法重载要求方法名称必须相同 B. 重载方法的参数列表必须不一致 C. 重载方法的返回类型必须一致 D. 一个方法在所属的类中只能被重载一次 3) 给定代码如下所示,在横线处新增下列()方法,是对方法的重载。 { ( x, y, z) {} } A. ( x, y, z){ 0; } B. ( x, y, z){ 0; } C. ( x, z){ }

D. ( z, y, x){ } 4) 在中,下面对于构造函数的描述正确的是()。 A. 类必须显式定义构造函数 B. 构造函数的返回类型是 C. 构造函数和类有相同的名称,并且不能带任何参数 D. 一个类可以定义多个构造函数 5) 下面代码的运行结果是()。 { ; 名字 0; 健康值 ; 性别 () { = 10; = "雄"; ("执行构造方法。"); } () { ("企鹅的名字是" + + ",健康值是" + + ",性别是" + "。"); } ([] ) { = (); (); } } A. 企鹅的名字是,健康值是10,性别是雄。 B. 执行构造方法。

企鹅的名字是,健康值是0,性别是。 C. 企鹅的名字是,健康值是0,性别是。 D. 执行构造方法。 企鹅的名字是,健康值是10,性别是雄。 6) 下列选项中关于中封装的说法错误的是()。 A. 封装就是将属性私有化,提供公有的方法访问私有属性 B. 属性的访问方法包括方法和方法 C. 方法用于赋值、方法用于取值 D. 类的属性必须进行封装,否则无法通过编译 7) 使用实现封装,第一步是修改属性可见性来限制对属性的访问,第二步是创建赋值和取值方法,用于对属性的访问,第三步应该是()。 A. 使用赋值和取值方法访问属性 B. 编写常规方法访问属性 C. 在赋值和取值方法中,加入对属性的存取限制 D. 编写方法创建对象,调用赋值和取值方法访问属性 8) 分析如下所示的代码,其中关键字的意思是()。 { ; () { ;

面向对象程序设计java语言程序设计期末考试试题及部分答案

《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案2 一、单选择题(每小题2分,共10分) 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。 A. .java B. .class C. .html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( A )。 A. 3 B. 3. 5 C. 4 D. 5 3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画图操作。 A. start( ) B. stop( ) C. init( ) D. paint( ) 4、不允许作为类及类成员的访问控制符的是( C )。 A. public B. private C. static D. protected 5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题(每空格1分,共20分) 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码、和解释运行字节码。 2、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是Applet、类的子类并且存储该源程序文件的文件名为MyApplet。 3、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器javac.exe编译该源程序文件将产生3 个文件名与类名相同而扩展名为. class的字节码文件。

《面向对象程序设计JAVA语言程序设计》期末复习试题及部分答案

一、单选题 1.在下列概念中,Java语言只保留了D A.运算符重载B.结构和联合C.指针D.方法重载 2.下列类定义中,不正确的是B A.class x { .... } B.static class x implements y1,y2 { .... } C.public class x extends Applet { .... } D.class x extends y { .... } 3.下列语句序列执行后,k 的值是B int m=3, n=6, k=0; while( (m++) < (- - n) ) ++k; i++ 先把i的初值赋给表达式(i++),作为表达式(i++)的值,然后i自增1作为i 的值。 如i=1,则表达式(i++)的值等于1,而i的值变为2。 ++i i先自增1,再把自增后的值赋给表达式(++i)。 如i=1,则表达式(++i)的值等于2,i的值也为2, A.0 B.1 C.2 D.3 4.设i、j为int型变量名,a为int型数组名,以下选项中,正确的赋值语句是A A.a[0] = 7; B.i = i + 2 C.i++ - --j; D.a(0) = 66; 5.Java语言的类间的继承关系是B A.多重的B.单重的C.线程的D.不能继承 6.下列语句序列执行后,k 的值是C int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; } A.31 B.3 C.2 D.33 7.设有定义 float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true的是C

JAVA面向对象编程测试题

Java 面向对象 一、单选: (1)在JDK1.5.0 安装目录下的bin 文件夹中,下面哪个程序是Java 执行器 (B) A )Javac.exe B )java.exe C)jdb.exe D )javah.exe E)javadoc.exe (E) (2)在JDK1.5.0 安装目录下的bin 文件夹中,下面哪个程序能生成Java 参考文档 A )Java.exe B )javac.exe C)appletviewer.exe D)javah.exe E)javadoc.exe (3)下列数据类型不属于整型的是 (E) A )byte 类型 B )short 类型 C)int 类型 D )long 类型 E)float 类型 (4 )精确保存一个值为“53.21458961”需要用什么数据类型 ( D) A )int 类型 B )long 类型 C)String 类型 D )double 类型 E)以上都可以 (5)循环语句for(int i=0。i<4。i++){}循环的次数为 (D) A )无限次 B )不确定 C)1 次 D )3 次 E)4 次 (6)若i、j 为已定义的整型,下面程序段中循环体执行的次数为 (B) for(i=0。i<5。i++){ for(j=0。j<=i。j++){ } } A )不确定 B )5 次 C)15 次 D )25 次 E)无限次 (7)执行下列程序段后,j 的值变为 (E) int i=1。 int j=10。 do{ j-=i。 i++。 }while(j--<0)。 A )9 B)10 C)-1 D)-2 E)8 (8)执行下列程序段后,y 的值变为 (E) int x,y。 for(y=1,x=1。y<=50。y++){ if(x>=10){

Java面向对象程序设计复习题附答案

Java面向对象程序设计复习题 一、选择题 1、下列哪个是Java中的关键字(C )。 A、run B、Integer C、default D、implement 2、下面关于Java.applet.Applet和其祖先类的描述语句哪个不对(B )。 A、Applet是Container的一种 B、Applet是Window的一种 C、Applet是Component的一种 D、Applet是Panel的一种 3、下列类DataOutputStream的构造方法正确的是(A )。 A、new dataOutputStream(new FileOutputStream(“out.txt”)); B、new dataOutputStream(“out.txt”); C、new dataOutputStream(new writer(“out.txt”)); D、new dataOutputStream(new FileWriter(“out.txt”)); 4、在switch(表达式)语句中,表达式的类型不能为(C )。 A、byte B、char C、long D、int 5、在接口MouseMotionListener中方法正确的是(A )。 A、Public void mouseDragged(MouseEvent) B、Public boolean mouseDragged(MouseEvent) C、Public void mouseDragged(MouseMotionEvent) D、Public boolean MouseDragged(MouseMotionEvent) 6、下面是一些异常类的层次关系 https://www.doczj.com/doc/ae13973305.html,ng.Exception https://www.doczj.com/doc/ae13973305.html,ng.RuntimeException https://www.doczj.com/doc/ae13973305.html,ng.IndexOutOfBoundsException https://www.doczj.com/doc/ae13973305.html,ng.ArrayIndexOutOfBoundsException https://www.doczj.com/doc/ae13973305.html,ng.StringIndexOutOfBoundsException 假设有一个方法X,能够抛出两个异常,Array Index和String Index异常,假定方法X中没有try-catch语句,下面哪个答案是正确的。(B ) A、方法X应该声明抛弃ArrayIndexOutOfBoundsException和StringIndexOutOfBounds Exception。 B、如果调用X的方法捕获IndexOutOfBoundsException,则ArrayIndexOutOfBounds Exception和StringIndexOutOfBoundsException都可以被捕获。 C、如果方法X声明抛弃IndexOutOfBoundsException,则调用X的方法必须用Try-catch 语句 捕获。 D、方法X不能声明抛弃异常。 7、现有一变量声明为boolean aa;下面赋值语句中正确的是( D )。 A、aa=0 B、aa=True C、aa="true" D、aa=false 8、某类Example的main()方法参数为args,当输入数据Java Example cat时,args[0]的值为(A )。 A、cat B、Java C、example D、null 9、String s1=new String(“Java”);String s2=new String(s1)则下列哪个说法是正确的(C )。 A、表达式s1==s2为真 B、s1和s2是同一个对象

JAVA填空题复习(有答案)

JAVA复习 1、面向对象程序设计的三个特征是_封装、多态、继承。 2、Java语言的主要特点有简单性、安全性、面向对象、平台无关性。 3、Java是面向对象语言,类是客观事物的_抽象_ __,而对象是类的_实例_ __。 4、类_ _是Java程序中基本的结构单位。 5、Java语言是一种完全的_面向对象 _程序设计语言 6、布尔型常量有两个值,它们分别true_ _、_ false _ 7、表达式1/2*9的计算结果是0。 8、表达式“b”+10的值为_”b10”,‘b'+10的值为108__ 9、String s1=“China”; int n=s1.length( ); n的值为_5__ 10、_常量名__必须完全大写。 11、Java中用于定义整形变量的关键字有四个:byte、_short__、_int_ __、long。 12、在Java语言中,简单数据类型包括:整数类型、浮点类型、字符类型_和布尔类型。 13、Java的类型、单精度浮点型、布尔型数据的保留字分别是:float_、boolean。 14、JAVA语言中提供了两种类型的字符串类来处理字符串,它们是String_和StringBuffer类 15、Java程序的种类有:内嵌于_HTML__文件中,由浏览器

来观看的_applet___,必须继承__Applet__;可独立运行的_application___,必须包含_main()方法__ 16、Java语言中,所有的类都是Object的子类,Java的窗口通常是JFrame__的子类,抽象 _类只能定义但不能被实例化,_ 最终 _类不能被继承异常类都是_Exception_的子类。 17、Java源程序文件和字节码文件的扩展名分别为_.java___和_.class___ 18、一般Java程序的类体由两部分组成:一部分是_属性_,另一部分是_方法_ 19、子类对父类继承来的属性重新定义称为__重写__。子类对自身拥有的同名方法的重新定义称_重载___。 20、分别用__class_关键字来定义类,用_new__关键字来分配实例存储空间。 21、this指_当前对象___,super指_父对象___。 22、Java中类成员的限定词有以下几种:__ private_ _, public __ _, protected __ _, _缺省_ _。其中,_public __的限定的范围最大。_ private __的限定只能内部访问。Java中成员变量用___final__修饰符修饰的是常量。 23、在Java语言中,_ _包_是组织Java程序中类的一种手段,其作用与Windows系统中的__文件夹__类似。创建包的语句必须是文件的第一 __个语句

java面向对象练习题

java面向对象练习题 1定义了一个函数来接收一年并确定它是否是闰年什么是闰年?可以除以4而不是100,或者可以除以400,那么今年是闰年 2年,使用do-while重写猜谜游戏(希望比老师更完美) 3定义了一个接收数组的函数,找到数组中的最大值,并计算数组中所有奇数的和4定义一个函数来接收数组,并将数组中元素的最大值放在数组的第一个位置练习5:输出1-150个奇数并计数 6练习:计算1-100的和。奇数和偶数是什么?练习7:用“边做边做”来计算1到100之间的偶数练习8:用边做边猜数字的游戏9打印99 10的乘法计算1-100个奇数的和 11定义一个函数来执行加法函数操作,而不向调用者返回值 12要求:定义一个函数来比较两个数字的大小,并将最大的数字返回给呼叫者要求:定义一个函数,根据学生的分数将相应的分数返回给调用者。 14要求:定义一个函数做加法函数,直接打印,不需要返回结果给调用者要求1:定义一个函数来接收数组并取出数组中的最大值 16要求2:定义一个接收数组的函数,并将数组中的最大值放在数组的第一个位置17要求3:定义一个接收数组的函数,并将数组中的最大值放在数组的最后一个位置定义一个函数来接收数组并翻转数组中的元素例如:国际[] arr = {1,2,3,4}-{4,3,2,1 }; 19练习:定义接收二维数组的函数,计算二维数组中所有元素的和,并计算奇数

XXXX年龄的方法 29练习:首先编写一个Person类,并计算创建Person的对象的数量练习:描述一种动物。鸟类和动物有名字和年龄属性,而且会移动。鸟类也有名称、年龄、颜色、属性和移动行为。31定义接收无序数组的方法。要对数组进行排序,请使用二分法来查找指定的元素 32描述了三种类型的汽车,宝马和奔驰,它们都有颜色、名称它还具有运行功能定义一个方法可以接收任何汽车对象,定义一个方法可以返回任何汽车对象描述动物、蛇、鱼和三类。编写一个可以接收任何动物对象的方法,定义一个可以接收任何动物类型对象 的方法,并调用该动物类型对象的特定方法34动物、狗和鱼的描述。动物有名字和颜色两种属性,动物有移动的行为。 199狗的一个独特方法是咬人。鱼特有的行为:吹泡泡 35练习:描述三类图形,矩形和圆形。每张图表都有计算面积和周长的方法。 清楚地描述了三类之间的关系 36描述了一类学生,它有两个属性id和name。学生有学习行为功能,但有些学生也在学习过程中赚钱。普通学生:不能通过学习赚钱的学生 可以通过学习赚钱的学生 37描述了图形、矩形、圆形和三个类。定义接收所有图像对象并打印图形对象的周长和面积的方法。定义一个返回任何图形对象的方法38描述了三类汽车,宝马和奔驰。汽车有颜色和名称它还具有运行

Java面向对象编程练习试题包括答案.docx

【练习题】 01. 类的成员变量: 猜数字游戏:一个类 A 有一个成员变量 v,有一个初值 100。定义一个类,对 A 类的成员变量 v 进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。import .*; class A{ int v = 100; A(){ =v; } } public class b01 { public static void main(String args[]){ A a = new A(); Scanner intput = new Scanner; int intputvalue = (); if(intputvalue> "你的输入大于这个值 "); if(intputvalue< "你的输入小于这个值 "); if(intputvalue== "猜测成功 "); } } 【练习题】 02. 类的成员变量: 请定义一个交通工具 (Vehicle)的类,其中有: 属性:速度 (speed) ,体积 (size)等等 方法:移动 (move()) ,设置速度 (setSpeed(int speed)),加速speedUp(),减速speedDown()等等 . 最后在测试类Vehicle 它初始化 speed,size 对速度进行改变。 中的 main() 中实例化一个交通工具对象,并通过方法给的值,并且通过打印出来。另外,调用加速,减速的方法 class Vehicle {int speed; int size; void move(){ }; void setSpeed(int speed){ = speed; } void speedUp(){ speed = speed+1;

Java面向对象测试题

Java面向对象 测试题(一) 注: 测试时间:3小时 编程题在电脑上编写,保存在已学生名字为文件名的文件夹中 一、选择题 (共30分,每题1分<多选、少选、错选不得分>) 1、下面有关Java异常处理模型的说法错误的是()。

a)一个try块只能有一条catch语句 b)一个try块中可以不使用catch语句 c)Catch块不能单独使用,必须始终与try块在一起 d)Finally块不能单独使用,必须始终与try块在一起 2、下列选项中关于Java中super关键字的说法错误的是()。 a)super关键字是在子类对象内部指代其父类对象的引用 b)super关键字不仅可以指代子类的直接父类,还可以指代父类 的父类 c)子类可以通过super关键字调用父类的方法 d)子类可以通过super关键字调用父类的属性 3、下列选项中关于Java中this关键字的说法错误的是()。 a)this是在对象内部指代对象自身的引用 b)this关键字可以在类中的任何位置使用 c)this只和特定的对象关联,而不和类关联 d)同一个类的不同对象有不同的this 4、在Java中,Object类是所有类的父亲,用户自定义类默认扩 展自Object类,下列选项中的()方法不属于Object类的方法。 a)equals(Object obj) b)getClass() c)toString() d)trim()

5、给定如下Java代码,关于super的用法,以下描述正确的是 ()。 class C extends B{ public C(){ super(); } } a)用来调用类B中定义的super()方法 b)用来调用类C中定义的super()方法 c)用来调用类B的无参构造方法 d)用来调用类B中第一个出现的构造方法 6、在Java中,有如下两个类Student和Person。如果Student 是Person的子类,则下列声明对象x的语句中错误的是()。 a)Person x = new Student() b)Person x = new Person() c)Student x = new Person() d)Student x = new Student() 7、下列对Java中的继承描述错误的说法是()。 a)子类至少有一个基类 b)子类可作为另一个子类的基类

Java面向对象测精彩试题(一)

实用文档 Java面向对象 测试题(一) 注: 测试时间:3小时 编程题在电脑上编写,保存在已学生名字为文件名的文件夹中

一、选择题 (共30分,每题1分<多选、少选、错选不得分>) 1、下面有关Java异常处理模型的说法错误的是()。 a)一个try块只能有一条catch语句 b)一个try块中可以不使用catch语句 c)Catch块不能单独使用,必须始终与try块在一起 d)Finally块不能单独使用,必须始终与try块在一起 2、下列选项中关于Java中super关键字的说法错误的是()。 a)super关键字是在子类对象内部指代其父类对象的引用 b)super关键字不仅可以指代子类的直接父类,还可以指代父类 的父类 c)子类可以通过super关键字调用父类的方法 d)子类可以通过super关键字调用父类的属性 3、下列选项中关于Java中this关键字的说法错误的是()。 a)this是在对象内部指代对象自身的引用 b)this关键字可以在类中的任何位置使用 c)this只和特定的对象关联,而不和类关联 d)同一个类的不同对象有不同的this 4、在Java中,Object类是所有类的父亲,用户自定义类默认扩 展自Object类,下列选项中的()方法不属于Object类的方法。 a)equals(Object obj) b)getClass()

c)toString() d)trim() 5、给定如下Java代码,关于super的用法,以下描述正确的是 ()。 class C extends B{ public C(){ super(); } } a)用来调用类B中定义的super()方法 b)用来调用类C中定义的super()方法 c)用来调用类B的无参构造方法 d)用来调用类B中第一个出现的构造方法 6、在Java中,有如下两个类Student和Person。如果Student 是Person的子类,则下列声明对象x的语句中错误的是()。 a)Person x = new Student() b)Person x = new Person() c)Student x = new Person() d)Student x = new Student()

相关主题
文本预览
相关文档 最新文档