Java语言程序设计习题与答案

Java语言程序设计习题与答案
Java语言程序设计习题与答案

一、简单编程

1.编写程序使用方法重载分别实现了两个和三个整数的相加。import java.util.Scanner;

class ADD{

public int Add(int a,int b){

return a+b;

}

public int Add(int a,int b,int c){

return a+b+c;

}

}

public class Ex1 {

public static void main(String[] args) {

Scanner in =new Scanner(System.in);

int a,b,c;

System.out.println("输入三个数字:");

a=in.nextInt();

b=in.nextInt();

c=in.nextInt();

ADD x=new ADD();

System.out.println("输出前两个数之和:"+x.Add(a, b));

System.out.println("输出三个数之和:"+x.Add(a,b,c));

}

2.编写程序使用冒泡法对一组数进行排序

import java.util.Scanner;

public class Ex2 {

public static void main(String[] args) {

int temp;

int[] a=new int[4];

System.out.println("输入4个正整数:");

for(int i=0;i

Scanner b=new Scanner(System.in);

a[i]=b.nextInt();

}

//冒泡排序,从小到大排序

for(int i=0;i

for(int j=i+1;j

if(a[i]>a[j]){

temp=a[i];

a[i]=a[j];

a[j]=temp;

}

}

}

System.out.println("输出排序后的数组:");

for(int i = 0;i < a.length; i++){

System.out.print(a[i]+"\t");

}

}

}

3.定义一个线程PrintThread,该线程打印输出1~1000之间所有3的倍数,每输出一个数休眠1500毫秒,在main方法中创建该线程的一个实例,并启动该线程。

class PrintThread extends Thread {

public void run(){

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

if(i%3==0){

System.out.print(i+" ");

try{

Thread.sleep(1500);

}

catch(Exception c){}

}

if(i%60==0){

System.out.print("\n ");

}

}

}

}

public class Ex3 {

public static void main(String[] args) {

PrintThread thread=new PrintThread();

thread.start();

}

}

4. 编写程序判断一个数是不是素数

import java.io.*;

import java.util.Scanner;

public class Ex4{

public static void main(String args[]) throws IOException

{

int num;

Scanner in =new Scanner(System.in);

System.out.print("请输入一个正整数:");

num=in.nextInt();

if(num<=0){

System.out.print("您所输入的为非正整数!!");

System.exit(-1);

}

if(num==1){

System.out.print("1既不是素数也不是合数!!");

System.exit(-1);

}

if(num==2){

System.out.print("2是素数!");

System.exit(-1);

}

for(int i=2;i<=num/2;i++){

if(num%i==0){

System.out.print(num+"是合数!");

System.exit(-1);

}

}

System.out.print(num+"是素数!");

}

}

5. 编写程序练习将字符串转换为int、double类型,将数值类型转换为字符串类型。练习StringBuffer类的使用方法。

import java.util.Scanner;

public class Ex5 {

public static void main(String[] args) {

System.out.println("输入int数字字符串:");

Scanner inta = new Scanner(System.in);

System.out.println("其转换成int型为"+Integer.parseInt(inta.nextLine()));

System.out.println("输入一个double型数据字符串:");

System.out.println("其转换成double型为"+Double.parseDouble(inta.nextLine()));

System.out.println("输入一个整数:");

System.out.println("其字符串为"+String.valueOf(inta.nextInt()));

}

}

6.编写程序读取文本并显示在屏幕上

方法一:

import java.io.*;

class Ex6{

public static void main(String[] args){

String filename="D:/bigbook.txt";

String line;

try{

BufferedReader in=new BufferedReader(new FileReader(filename));

line=in.readLine();

while(line!=null){

System.out.println(line);

line=in.readLine();

}

in.close();

}

catch(IOException iox){

System.out.println("Problem reading"+filename);

}

}

}

方法二:

import java.io.*;

public class Ex6{

public static void main(String[] args) throws IOException

{FileInputStream s=new FileInputStream("D:/bigbook.txt");

int c;

while ((c=s.read())!=-1){

System.out.write(c);

}

s.close();

}

}

7.创建线程,线程休眠,线程启动

public class Ex7 {

public static void main(String[] args) {

//只创建一个实现Runnable接口类的对象

TestThread threadobj=new TestThread();

System.out.println("Starting threads");

//只用一个Runnable类型对象为参数创建三个新线程,分别命名并启动之

new Thread(threadobj,"Thread1").start();

new Thread(threadobj,"Thread2").start();

new Thread(threadobj,"Thread3").start();

System.out.println("Threads started,main ends\n");

}

}

class TestThread implements Runnable{

private int sleep;

public TestThread(){ //构造函数

sleep=(int)(Math.random()*6000); //获得随机休息毫秒数}

public void run(){ //run方法是线程启动并开始运行后要执行的方法

try{

System.out.println(

Thread.currentThread().getName()+" "+"going to sleep for"+" "+sleep);

Thread.sleep(sleep); //线程休眠

}

catch(InterruptedException exception){}

//运行结束给出提示信息

System.out.println(Thread.currentThread().getName()+" "+"finished");

}

}

二、编程题

8.定义一个包括4个元素一维整型数组,通过从键盘输入的4个整数对数组进行初始化,对数组中的元素按大到小排序后在屏幕上显示,求出该数组中元素的最小值、最大值以及平均值并在屏幕上显示输出。

import java.util.*;

public class Ex8 {

public static void main(String[] args) {

int sum=0;

int[] a=new int[4];

System.out.println("输入4个正整数:");

for(int i=0;i

Scanner b=new Scanner(System.in);

a[i]=b.nextInt();

}

Arrays.sort(a); //排序是采用快速排序并且是从小到大的排序方法

System.out.println("输出排序后的数组:");

for(int i = 0;i < a.length; i++){

System.out.print(a[i]+"\t");

sum=sum+a[i];

}

System.out.println("\n"+"平均值是:"+((double)sum/4));

System.out.println("最小值是:"+a[0]);

System.out.println("最大值是:"+a[3]);

}

}

9.编写一个应用程序创建两个线程,一个线程打印输出1~100之间所有的奇数,另外一个线程打印输出1~100之间所有的偶数,要求两个线程随机休眠一段时间后继续打印输出下一个数。分别使用Runnable接口和Tread类编程实现。

public class Ex8_1{

public static void main(String[] args){

Jishu jishu=new Jishu();

Oushu oushu=new Oushu();

oushu.start();

jishu.start();

while(true){

if(jishu.i==100||oushu.j==100)

System.exit(0);

}

}

}

class Jishu extends Thread{

public int i;

public void run(){

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

if(i%2!=0){

System.out.println("奇数是:"+i);

try{

sleep((int)(Math.random()*8)+8);

}

catch(InterruptedException c){}

}

}

}

}

class Oushu extends Thread{

public int j;

public void run(){

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

if(j%2==0){

System.out.println("偶数是:"+j);

try{

sleep((int)(Math.random()*8)+8);

}

catch(InterruptedException c){}

}

}

}

}

04747java语言程序设计(一)20120年01月试卷

全国2012年1月高等教育自学考试 Java语言程序设计(一)试题 课程代码:04747 一、单项选择题(本大题共10小题,每小题1分,共l0分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.下面供选字符序列中,不属于 ...Java语言关键字的是( ) A.inner B.throw C.false D.throws 2.表达式“-1>>>1”的十进制值是( ) A.-2 B.231-1 C.-(231-1) D.232-1 3.Java语言中,在类定义时用final关键字修饰,是指这个类( ) A.子类必须实现父类未实现的方法 B.没有具体实现代码 C.必须要有实例 D.不能被继承 4.表达式"java程序设计".1ength()的值是( ) A. 0 B.12 C. 8 D.13 5.以下关于BorderLayout布局的叙述中,不正确 ...的是( ) A.把容器内的空间划分成5个区域 B.加入组件应该指明要放入的区域 C.是框架窗口的默认布局 D.一个位置可直接放多个组件 6.利用文件对话框打开或保存文件,在打开文件对话框之前,可用FileFilter类设置筛选条件,其所用的两个方法是( ) A.accept()和getSelectedFile() B.accept()和getDescription() C.accept()和setDescription() D.setDescription()和getDescription() 7.设已经有Graphics2D对象g2d,RoundRectangle2D对象rRect,绘制对象rRect的代码是( ) A.g2d.draw(rRect) B.g2d.drawRoundRect(rRect) C.rRect.draw() D.rRect.drawRoundRect() 8.以下关于线程互斥和同步的叙述中,正确的是( ) A.临界段是线程互斥使用资源的程序段 B.临界段能使线程使用其它线程的资源 浙04747# Java语言程序设计(一)试卷第1页(共12页)

Java编程基础知识点汇总及习题集答案

J a v a编程基础知识点汇总及习题集答案 集团文件发布号:(9816-UATWW-MWUB-WUNN-INNUL-DQQTY-

目录 第一章 Java入门 (2) 第二章 Java基础 (5) 第三章条件转移 (14) 第四章循环语句 (20) 第五章方法 (26) 第六章数组 (33) 第七章面向对象 (42) 第八章异常 (63) 第一章 Java入门 知识点汇总 1、JAVA 三大体系 Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个平台中最核心的部分,包含Java 最核心的类库。 JavaEE:(J2EE,Java 2 Platform, Enterprise Edition,企业版),开发、装配、部署企业级应用,包含Servlet、JSP、JavaBean、JDBC、EJB、Web Service等。 Java ME:(J2ME,Java 2

Platform Micro Edition,微型版),用于小型电子设备上的软件开发。 2、JDK,JRE,JVM的作用及关系作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 path环境变量:存放可执行文件的存放路径,路径之间 用逗号隔开 classpath环境变量:类的运行路径,JVM在运行时通过classpath加载需要的类 4、重点掌握两个程序 :Java编译器工具,可以将编写好的Java文件(.java)编译成Java字节码文件(.class); :Java运行工具,启动Java虚拟机进程,运行编译器生成的字节码文件(.class) 5、一切程序运行的入口public static void main (String args []){ World!”); } 课堂笔记

自考Java语言程序设计试题及答案解析

自考J a v a语言程序设计试题及答案解析 文档编制序号:[KK8UY-LL9IO69-TTO6M3-MTOL89-FTT688]

2015年10月高等教育自学考试全国统一命题考试 Java语言程序设计(一) 试卷 (课程代码04747) 本试卷共13页,满分100分.考试时间150分钟。 考生答题注意事项: 1.本卷所有试题必须在答题卡上作答。答在试卷上无效,试卷空白处和背面均可作草稿纸. 2.第一部分为选择题。必须对应试卷上的题号使用2B铅笔将“答题卡”的相应代码涂黑. 3.第二部分为非选择题。必须注明大、小题号.使用0.5毫米黑色字迹签字笔作答. 4.合理安排答题空间.超出答题区域无效。 第一部分选择题 一、单项选择题(本大题共10小题.每小题1分.共10分) 在每小题列出的四个备选项中只有一个是符合题目要求的。请将其选出并将“答题卡” 的相应代码涂黑。未涂、错涂或多涂均无分. 1.以下字符组合中,不能作为Java整型常量的是 A.037 B.0x3ADG C.7000 D.0x3abcL 2.以下程序代码的输出结果是 3.设有数组定义,则x.length的值为 A.2 B.3 C.4 D.5 4. 设有字符串String s=〝ABCDEFGABC〞;,则表达式s.indexOf(〝A〞,7)的值是 A.7 B.6 C.3 D.0 5.以下关于Swing与AWT之间关系的叙述中,正确的是 A.Swing是AWT的提高和扩展

B.在写GUl程序时,AWT和Swing不能同时使用 C.AWT和Swing在不同的平台上都有相同的表示 D.AWT中有一些类是从Swing中的一些继承的 6.以下供选择的类中,其子类能用来创建框架窗口的是 A.JWindow B.JFrame C.JDialog D.JAudio 7.某程序定义了一个子类,并要让它实现多线程,以下正确的步骤是 A.继承Thread类,在类内定义run( )方法,声明和创建线程对象,并让该对象调用 start( )方法。 B.继承Thread类,在类内定义run( )方法,声明线程对象,并让该对象调用start( )方法。 c.声明实现Runnable接口,在类内实现run( )方法,声明线程对象,创建线程,并调用start( )方法。 D.声明实现Runnable接口,在类内实现run( )方法,声明和创建线程对象,并让该对象调用start( )方法。 8.大多数采用缓冲式输入数据文件的程序的主要目的是 A.用readLine( )方法按行输入字符 B.提高输入速度 C.更快地读入字符数据 D.用read( )方法输入任意个字符 9.在打开文件对话框时,可用FileFilter类设置筛选条件,在以下供选择的方法中,是 FileFilter类预设的方法之一的是 A.setFileFilter( ) B.addFileFilter( ) C.accept( ) D.setDescription( ) 10.对访问数据库的Java程序来说,DriverManager类的作用是

Java程序设计A卷

《Java语言程序设计》 一.选择题:本大题共20小题;每小题1分,共20分。在每 小题给出的四个选择中,只有一项是符合题目要求的,把所选 择项前的字母填在题后的括号内。 1.使用Java语言编写的源程序保存时的文件扩展名是()。 (A).class (B).java (C).cpp (D).txt 2. 设int a=1,则表达式(true|(++a==1))&(a==2)的值为()。 (A)true (B)0 (C)false (D)1 3. 下列关于构造方法描述错误的是()。 (A)Java语言规定构造方法名与类名必须相同 (B)Java语言规定构造方法没有返回值,但不用void声明 (C)Java语言规定构造方法不可以重载 (D)Java语言规定构造方法只能通过new自动调用 4. 以下关于字符串类的说法正确的是()。 (A)String类用于字符串变量,而StringBuffer类用于字符串常量 (B)String类用于字符串常量,而StringBuffer类用于字符串变量 (C)String类的对象只能用“new”关键字生成 (D)StringBuffer字符串的容量是指字符串中字符的个数 5. 下面语句中哪一个不是用于异常处理的语句()。 (A)try (B)break (C)catch (D)finally 6. 类可以保护它的成员变量和成员函数不会被其他对象随意访问到,这一特性 属于类的()。 (A)封装性(B)继承性 (C)多态性(D)重载 7. 下面文件操作中哪一个方法是用来创建目录的()。 (A)createNewFile() (B)mkdir() (C)isDirectory() (D)delete() 8. 以下Swing组件中哪一个不是顶层容器组件()。 (A)框架(B)对话框 (C)面板(D)小程序 9. 下面哪一个是Java中不合法的标识符()。 (A)$persons (B)twoNum (C)_myVar (D)*point 10. 对于Swing基本控件单选框,若要使两个单选框对象之间具有相互排斥的 关系,需要()。 (A)创建两个单选框对象时定义相同的对象名 (B)将两个单选框对象放在同一个面板上 (C)定义一个ButtonGroup对象group,将两个单选框对象加到group中 (D)让两个单选框排成一行或一列 11. 下面关于Java Application与Java Applet的说法错误的是()。 (A)Java Application 与Applet 所用编译命令相同 (B)通常情况下Java Application 只能有一个main()方法 (C)Java Applet 必须有HTML 文件才能运行 (D)Java Applet 程序的.class 文件可用java 命令运行 12. 在JDK中用于将文档注释自动生成HTML在线帮助文档的工具是()。 (A)javadoc (B)java (C)javac (D)appletviewer

Java语言程序设计课后习题答案

Java语言程序设计(郑莉) 第二章习题答案 1.什么是对象、类,它们之间的联系 答:1)对象是包含现实世界物体特征的抽象实体,它反映系统为之保存信息和与它交互的能力。对象是一些属性及服务的封装体,在程序设计领域,可以用“对象=数据+作用于这些数据上的操作”来表示。现实生活中对象是指客观世界的实体;在程序中对象是指一组变量和相关方法的集合。 2)类是既有相同操作功能和相同的数据格式的对象的集合与抽象!3)两者的关系:对象是类的具体实例.。 2.什么是面向对象的程序设计方法它有那些基本特征 答:面向对象程序设计从所处理的数据入手,以数据为中心而不是以服务为中心来描述系统。它把编程问题视为一个数据集合,数据相对于功能而言,具有更强的稳定性。 它的特征:抽象,封装,继承,多态。 3(无用) 4.请解释类属性、实例属性及其区别。 答:实例属性,由一个个的实例用来存储所有实例都需要的属性信息,不同实例的属性值可能会不同。 5.请解释类方法、实例属性及其区别。 答:实例方法表示特定对象的行为,在声明时前面不加static修饰符,在使用时需要发送给一个类实例。 类方法也称为静态方法,在方法声明时前面需加static修饰符,类方法表示具体实例中类对象的共有行为。 区别:实例方法可以直接访问实例变量,调用实例方法,实例方法可以直接访问类变量,调用类方法;类方法可以直接调用类变量和类方法,类方法不能直接调用实例变量和实例方法; 6.类的访问控制符有哪几种具体含义及其区别。 答:类的访问控制符只有public(公共类)及无修饰符(默认类)两种。 区别:当使用public修饰符时表示所有其他的类都可以使用此类;当没有修饰符时,则只有与此类处于同一包中的其他类可以使用类。 7类成员的访问控制符有哪几种他们对类成员分别有哪些访问限制的作用 答:类成员的访问控制符有 public,private,protecte及无修饰符. public(公有的):用public修饰的成分表示公有的,也就是它可以被其他任何对象访问(前提是对累成员所在的类访问有访问权限). Private(保护的):类中限定为private的成员只能被这个类本身 访问,在类外不可见。 proteced(保护的)用该关键字修饰的成分是受保护的,只可以被同一类及其子类的实例对象访问。 无修饰符(默认的):public,private,protected这个三个限定符不是必须写的。如果不写,则表明是“friendly”,相应的成分可以被所在保重的各类访问。 8简述构造方法的特点答:构造方法主要有以下特点: (1)构造方法的方法名与类名相同; (2)构造方法没有返回类型(修饰符void也不能有);(3)构造方法通常被声明为公有的(public); (4)构造方法可以有任意多个参数; (5)构造方法的主要作用是完成对象的初始化工作; (6)构造方法不能在程序中显式的调用; (7)在生成一个对象时,系统会自动调用该类的构造方法为新生成的对象初始化。 9如果在类声明中声明了构造方法,系统是否还提供默认的构造方法 答: 用户在进行类声明时,如果没有声明任何构造方法,系统会赋给此类一个默认(无参)的构造方法。但是,只要用户声明了构造方法,即使没有声明无参的构造方法,系统也不会再赋默认的构造方法。 10:声明Patient类表示在门诊室中的病人。此类对象应包括name(astring)\sex(achar)、age(an integer)、weight(a float0、allergies(a boolean). 声明存取及修改方法。在一个单独的累中,声明测试方法,并生成两个patient的例子: Atient april=new Patient(); (“zhangli”) (‘f’);; (330; ; (true); 那么:”+()); ”+()); ”+()); (“weught: ”+());\ ”+()); 声明并测试toString()方法显示一个病人的aga、sex、name及allergies属性。 答: public class Patient { private String name; private char sex; private int age; private float weight; private boolean allergies; public void setname(String a) { name=a; } public void setsex(char b) { sex=b; }

Java基础试题及其答案

Java试题 1) java程序中,main方法的格式正确的是()。(选择一项) a)static void main(String[] args) b)public void main(String[] args) c)public static void main(String[]s) d)public static void main(String[] args) 2)给定java代码,如下: public byte count(byte b1,byte b2){ return______; } 要使用这段代码能够编译成功,横线处可以填入()。(选择一项)a)(byte) (b1-b2) b)(byte) b1-b2 c) b1-b2 d) (byte) b1/b2 3)在Java中,在包下定义一个类,要让包下的所有类都可以访问这个类,这个类必须定义为()。(选择一项) a)protected b)private c)public d)friendly 4)在Java中,下列()语句不能通过编译。 (选择一项) a) String s= “join”+ “was”+ “here”; b) String s= “join”+3; “”+new Person() toString() c) int a= 3+5 d) float f=5+; double float 6)给定java代码如下,运行时,会产生()类型的异常。(选择一项) String s=null; (“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 已到文件尾,再读取抛出 7) 在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList List 有序可重复 b) HashSet Set 无序不可重复同一对象是重复 的 c) HashMap Map(key/value)重复定义:hashCode、 equals(业务) d) LinkedList List 8)给定如下java代码,编译运行之后,将会输出()。 public class Test{ public static void main(String args[]){ int a=5;

自考Java语言程序设计试题及答案解析

2015年10月高等教育自学考试全国统一命题考试 Java语言程序设计(一) 试卷 (课程代码04747) 本试卷共13页,满分100分.考试时间150分钟。 考生答题注意事项: 1.本卷所有试题必须在答题卡上作答。答在试卷上无效,试卷空白处和背面均可作草稿纸. 2.第一部分为选择题。必须对应试卷上的题号使用2B铅笔将“答题卡”的相应代码涂黑. 3.第二部分为非选择题。必须注明大、小题号.使用0.5毫米黑色字迹签字笔作答. 4.合理安排答题空间.超出答题区域无效。 第一部分选择题 一、单项选择题(本大题共10小题.每小题1分.共10分) 在每小题列出的四个备选项中只有一个是符合题目要求的。请将其选出并将“答题卡” 的相应代码涂黑。未涂、错涂或多涂均无分. 1.以下字符组合中,不能作为Java整型常量的是 A.037 B.0x3ADG C.7000 D.0x3abcL 2.以下程序代码的输出结果是 3.设有数组定义,则x.length的值为 A.2 B.3 C.4 D.5

4. 设有字符串String s=〝ABCDEFGABC〞;,则表达式s.indexOf(〝A〞,7)的值是 A.7 B.6 C.3 D.0 5.以下关于Swing与AWT之间关系的叙述中,正确的是 A.Swing是AWT的提高和扩展 B.在写GUl程序时,AWT和Swing不能同时使用 C.AWT和Swing在不同的平台上都有相同的表示 D.AWT中有一些类是从Swing中的一些继承的 6.以下供选择的类中,其子类能用来创建框架窗口的是 A.JWindow B.JFrame C.JDialog D.JAudio 7.某程序定义了一个子类,并要让它实现多线程,以下正确的步骤是 A.继承Thread类,在类内定义run( )方法,声明和创建线程对象,并让该对象调用 start( )方法。 B.继承Thread类,在类内定义run( )方法,声明线程对象,并让该对象调用start( ) 方法。 c.声明实现Runnable接口,在类内实现run( )方法,声明线程对象,创建线程,并 调用start( )方法。 D.声明实现Runnable接口,在类内实现run( )方法,声明和创建线程对象,

最新java程序设计a卷试卷汇总

2011J A V A程序设计A 卷试卷

华南农业大学期末考试试卷(A 卷) 2011-2012学年第 1 学期 考试科目: Java 程序设计 考试类型:(闭卷)考试 考试时间: 120 分钟 学号 姓名 年级专业 考试说明:所有答案必须填写在答卷上,考试结束时答卷和试卷都上交。 一、单项选择题(本大题共 25 小题,每小题 2 分,共 50 分) 1. 下列有关Java 程序的说法中正确的是________: 2. A. 由于Java 程序是解释执行的,所以执行前不需要进行编译 B. 一个.java 源程序编译后将产生一个.class 的字节码文件 C. 安装了JDK 后,安装程序会自动配置系统的环境变量path 和classpath D. 面向对象的解释型高级编程语言 3. 下列为合法变量名的是________。 4. A. false B. 0xabc C. iStudent D. cow ’s 5. 对于构造方法,下列叙述不正确的是________。 6. A. 构造方法是类的一种特殊函数,它的方法名必须与类名相同 B. 构造方法没有返回值类型

C. 子类不但可以继承父类的无参构造函数,也可以继承父类的有参构造函数。 D. 子类在创建构造方法是必须把调用父类构造方法放在第一条语句 7.下列关于接口的说明正确的是________。 8. A. 接口和抽象类是同一回事 B. 一个类不可以实现多个接口 C. 接口间不能有继承关系 D. 实现一个接口必须实现接口的所有方法 9.Java为移动设备提供的平台是________。 10.A.J2ME B.J2SE C.J2EE D.JDK5.0 11.下列语句中,属于多分支语句的是________。 A.if语句 B.switch语句 C.do while语句 D.for语句 12.在Java中,存放字符串常量的对象属于________类对象。 13. A. Character B. String C. StringBuffer D. Char 14.下列关于继承的哪项叙述是正确________。 15. A. 在java中允许多继承 B. 在java中一个类只能实现一个接口 16. C. 在java中一个类不能同时继承一个类和实现一个接口 17. D. java的单一继承使代码更可靠 18.给出如下代码: class Test{ private int m; public static void fun() { // some code... } } 如何使成员变量m 被函数fun()直接访问? A. 将private int m 改为protected int m B. 将private int m 改为 public int m C. 将private int m 改为 static int m D. 将private int m 改为 int m 19.System和Math类在哪个包中________。

JAVA入门练习50题(含答案)

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数: 1"); System.out.println("第2个月的兔子对数: 1"); int f1 = 1, f2 = 1, f, M=24; for(int i=3; i<=M; i++) { f = f2; f2 = f1 + f2; f1 = f; System.out.println("第" + i +"个月的兔子对数: "+f2); } } } 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 public class lianxi02 { public static void main(String[] args) { int count = 0; for(int i=101; i<200; i+=2) { boolean b = false; for(int j=2; j<=Math.sqrt(i); j++) { if(i % j == 0) { b = false; break; } else { b = true; } } if(b == true) {count ++;System.out.println(i );} } System.out.println( "素数个数是: " + count); } }

《Java程序设计》试卷(A卷

《Java程序设计》试卷(A卷) 一.选择(每个1分,共10分) 1.Which of the following are Java keywords?C A. System B. exit C. new D. instanceOf 2.Which of the following statements are true? A. A byte can represent between 0 to 256 B. A byte can represent between -128 to 127 C. A byte can represent between -127 to 128 D. A char can represent between -2x2 pow 16 2 x2 pow 16 –1 3. Which of the following statements are true? A. An interface can only contain method and not variables B. Interfaces cannot have constructors C. A class may extend only one other class and implement only one interface D. Interfaces are the Java approach to addressing its lack of multiple inheritance, but require implementing classes to create the functionality of the Interfaces. 4. 以下类中是Container的子类的是 A.JList B.JCanvas C.JCheckBox D.JPanel 5. protected限定成员变量,以下说法正确的是( ) A. 可以被三种类所引用: 该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B. 可以被两种类访问和引用: 该类本身、该类的所有子类 C. 只能被该类自身所访问和修改 D. 只能被同一个包中的类访问 6. 关于数组的说法,以下正确的是() A. int[] x=new int[20]建立了一个20个元素的整数数组 B. 数组声明时可以不限定大小 C. 数组大小在运行时可以动态改变 D. 跟C的规定相同 7.以下正确的说法是 A. Applet类中不能有main方法 B.Applet类是java.awt中的类 C.Applet类是Container的间接子类 D.Applet类不是容器类 8.以下那种布局是JFrame的默认布局 A.空布局B.BorderLayout C.FlowLayout D.CardLayout 9.对于绘图类Graphics、Grphics2D,正确的说法是: A.Graphics是抽象类 B.Graphics2D对象也可以当成Graphics对象使用 C.Graphics类中包含Graphics2D中定义的全部方法 D.Graphics2D是Graphics中二维绘图操作的具体实现类 10. 关于流的说法,正确的是 A.流专门用于描述跟外设的I/O操作 B.File类是专门用来文件流式读写操作的 C.流可以描述任何数据处理过程

《Java语言程序设计基础教程》习题解答

《Java语言程序设计基础教程》练习思考题参考答案

第1章Java程序设计概述 1.9 练习思考题 1、Java运行平台包括三个版本,请选择正确的三项:() A. J2EE B. J2ME C. J2SE D. J2E 解答:A,B,C 2、Java JDK中反编译工具是:() A. javac B. java C. jdb D. javap 解答:D 3、public static void main方法的参数描述是:() A. String args[] B. String[] args C. Strings args[] D. String args 解答:A,B 4、在Java中,关于CLASSPATH环境变量的说法不正确的是:() A. CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。 B. 编译器用它来搜索各自的类文件。 C. CLASSPATH是一个目录列表。 D. 解释器用它来搜索各自的类文件。 解答:A 5、编译Java Application源文件将产生相应的字节码文件,扩展名为() A. .java B. .class C. .html D. .exe 解答:B 6、开发与运行Java程序需要经过的三个主要步骤为____________、____________和____________。 7、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是______类的子类并且存储该源程序文件的文件名为______。 8、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生______个文件名与类名相同而扩展名为______的字节码文件。 9、开发与运行Java程序需要经过哪些主要步骤和过程? 10、Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎么样的? 11、编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。

JAVA试题及答案

JA V A语言基础内部测试题 选择题(针对以下题目,请选择最符合题目要求的答案,针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。)(每题2分) 没有注明选择几项的,只选择一项 1、JAVA所定义的版本中不包括:() A、JAVA2 EE B、JAVA2 Card C、JAVA2 ME D、JAVA2 HE E、JAVA2 SE 2、下列说法正确的是() A、JAVA程序的main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、JAVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来 3、Java中,在如下所示的Test类中,共有()个构造方法。 public class Test{ private int x; public Test(){ x=35; } public void Test(double f){ =(int)f; } public Test(String s){} } A、0 B、 1 C、 2 D、3 4、变量命名规范说法正确的是() A、变量由字母、下划线、数字、$符号随意组成; B、变量不能以数字作为开头; C、A和a在java中是同一个变量; D、不同类型的变量,可以起相同的名字; 5、下列javaDoc注释正确的是() A、/*我爱北京天安门*/

B、quals("john") C、"john" = "john" D、"john".equals(new String("john")) 6、下列输出结果是() int a = 0 ; while ( a < 5 ) { switch(a){ case 0: case 3 : a = a + 2; case 1 : case 2 : a = a + 3; default : a = a + 5; } } ( a ) ; A、0 B、5 C、10 D、其他 7、下列代码输出结果是( ) int i = 10; while ( i > 0 ){ i = i + 1; if ( i = =10 ){ break; } } A.while循环执行10次 B.死循环 C.循环一次都不执行 D.循环执行一次 8、下面有关for循环的描述正确的是() A、for循环体语句中,可以包含多条语句,但要用大括号括起来 B、for循环只能用于循环次数已经确定的情况 C、在for循环中,不能使用break语句跳出循环 D、for循环是先执行循环体语句,后进行条件判断 9、下列()属于引用数据类型(选择两项) A、String B、char C、用户自定义的Student类类型

2016年10月自考Java语言程序设计(一)04747

2016年10月高等教育自学考试全国统一命题考试 Java语言程序设计(一)试卷 (课程代码 04747) 本试卷共9页,满分l00分,考试时间l50分钟。 考生答题注意事项: 1.本卷所有试题必须在答题卡上作答。答在试卷上无效,试卷空白处和背面均可作草稿纸。 2.第一部分为选择题。必须对应试卷上的题号使用2B铅笔将“答题卡”的相应代码涂黑。 3.第二部分为非选择题。必须注明大、小题号,使用0.5毫米黑色字迹签字笔作答。 4.合理安排答题空间,超出答题区域无效。 第一部分选择题(共l0分) 一、单项选择题(本大题共l0小题,每小题l分,共10分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题卡”的相应代码涂黑。错涂、多涂或未涂均无分。淘宝店铺自考达人 V信1297755429 1.在下述字符串中,不是Java余言关键字的是 A.int B.static C.java D.try 2.要作下列数据类型转换,需进行强制类型转换才能实现的是 A.从int到char B.从int到 long C.从lloat到 double D.从byte到 int 3.在以下供选择的概念中,属于面向对象语言重要概念或机制的是 A.方法 B.模块 C.线程 D.继承 4.在下述Java程序代码中,能正确创建数组的是 A.int myA[5]={1,2,3,4,5); B.int myA[]=new int(5); C.int myA[];myA[]=new int[5]; D.int[]myA={1,2,3,4,5,6};5.某Java程序的类A需要利用Swin9创建无边框窗口,则A需要继承的类是A.JWindow B.JApplet C.JFrame D.JDialog 6.在以下供选的鼠标事件中,MouseMotionListener接口能处理的是 A.按下鼠标键 B.拖动鼠标 C.鼠标进入 D.鼠标松开7.在以下代码中,能正确创建Font对象的是 A.new Font(″宋体″,斜体,20); B.new Font(″楷体″,20,正常);C.new Font(″楷体″,Font.BOLD,l 8); D.new Font(″楷体″,1 8,Font.BOLD);8.某线程正处于运行状态,则在以下选项中,不可能是它的后继状态的是 A.就绪状态 B.新建状态 C.阻塞状态 D.死亡状态 9.某Java程序用类JFileChooser来实现打开和保存文件对话框。当对话框的返回 值是JFileChooser.APPROVE_OPTION时,程序进一步的工作是 A.用方法getName()取得文件名称 B.用方法getPathO()取得文件路径 C.用方法getFile()取得文件内容 D.用方法getSelectedFile()取得文件对象 10.Java语言实现C/S模式时,需要使用网络套接字,套接字的内容包括 A.IP地址+端口号 B.IP地址+监控线程名 C.监控线程名+端口号 D.IP地址+监控线程名+端口号 第二部分非选择题(共90分) 二、填空题(本大题共l0小题,每空2分,共20分) 11.一个Java小应用程序必须定义成一个子类,它的超类是______。 12.在Java语言中,左移运算符是______。 13.类A的成员变量x的类型是类B的,则类A和类B之间的关系是______。14.以下代码: 的输出结果是_______。 15.在JFrame子类的构造方法中,代码getContentPane0的作用是_______。16.用JScrollBar创建一个垂直滚动条对象时,需要指定的常量是_______。17.在异或模式下绘图时,实际绘制的颜色是由3种颜色作特定的运算确定的:当前正要绘 制的颜色、原先绘制的颜色以及_______。 18.处于运行状态的线程执行yield()方法,该线程将进入_______状态。 19.在Java语言中,客户端使用的套接字类是_______。 20.在Java语言中,DriverManager类的作用是加载驱动程序和_______。

2010JAVA程序设计A卷答案

华南农业大学期末考试试卷(A卷) 2010-2011学年第1 学期考试科目:Java程序设计 考试类型:(闭卷)考试考试时间:120 分钟 学号姓名年级专业 一、单项选择题(本大题共15 小题,每小题 2 分,共30 分) 1.Java语言是____D_____。 A. 面向问题的解释型高级编程语言 B. 面向机器的低级编程语言 C. 面向过程的编译型高级编程语言 D. 面向对象的解释型高级编程语言 2.下列为合法类名的是___C_____。 A. class B. 123Student C. GraduateStudent D. “类名” 3.对于构造方法,下列叙述不正确的是___B_____。 A. 构造方法是类的一种特殊函数,它的方法名必须与类名相同 B. 构造方法的返回类型只能是void类型 C. 构造方法的主要作用是完成对类的对象的初始化工作 D. 一般在创建新对象时,系统会自动调用构造方法 4.下列关于接口的说明正确的是___D_____。 A. 接口和抽象类是同一回事 B. 一个类不可以实现多个接口 C. 接口间不能有继承关系 D. 实现一个接口必须实现接口的所有方法 5.在Java中,存放字符串常量的对象属于___B_____类对象。 A. Character B. String C. StringBuffer D. Vector 6.在一个应用程序中有如下定义:int a[]={1,2,3,4,5,6,7,8,9,10}; 为了打印输出数组a的最 后一个元素,下面正确的代码是___B_____。 A. System.out.println(a[10]); B. System.out.println(a[9]); C. System.out.println(a[a.length]); D. System.out.println(a(9)); 7.定义如下的二维数组b,下面的说法不正确的是___C_____。

2012《Java语言程序设计》_A卷

2011-2012 学年第二学期《Java语言程序设计》考试卷 (A卷) 授课班号273601 年级专业学号姓名 一、问答题(共15分,每小题5分) 1. 请解释一下Java语言的主要特点(至少说明五个特点)? 2. 进程和线程的概念是什么?两者有什么区别和联系? 3. 什么是流?什么是字节流?什么是字符流?字节流和字符流的差别是什 么? 二、单项选择题 (共30分,每小题2分,把最恰当的答案题 号填入括号内) 1. Java程序经过编译后生成的文件后缀是__C___。 A. .obj B. .exe C. .class D. .java 2. 下列关于Java语言的描述中,错误的是__D___。 A. Java语言支持多线程操作 B. Java语言与平台无关 C. Java语言可以直接访问Internet上的对象 D. Java语言仍保留了结构和联合 1

3. 下列循环语句的循环次数是__C___。 int i=6; do{ System.out.println(i--); i--; }while(i!=0); A. 0 B. 2 C. 3 D. 5 4. 如下选择中,__D___不是Java中的合法的变量标识符? A. $fieldname B._int C. main D. 3a 5. 下面的代码段中,___C__注释符错误的是 A. // B. /*…*/ C. /**…**/ D. /**…*/ 6. 下列关于Java中子类继承父类中的成员的描述中,错误的是__A___。 A. 子类中继承父类的所有成员变量都可以直接访问 B. 子类中定义有与父类同名变量时:子类继承父类的操作中,使用继承父 类的变量;子类定义自己的操作时,使用自己定义的变量 C. 当子类中出现成员方法头与父类方法头相同的方法时,子类成员方法覆 盖父类中的成员方法 D. 方法重载是编译时处理的,而方法覆盖是运行时处理的 7. 下列关于抽象类的描述中,错误的是__C___。 A. 抽象类是用修饰符abstract说明的 B. 抽象类是不可以定义对象的 C. 抽象类是不可以有构造方法的 D. 抽象类通常要有它的子类 8. 下面关于Applet程序的描述中,错误的是__B___。 A. Applet程序的主类必须是Applet类的子类 B. Applet程序的主类中必须有一个main()方法 C. Applet不是完整的独立程序 D. Applet字节码文件必须嵌套在一个HTML文件中 9. 在Applet类的主要方法中,用来实现初始化操作的是___A_。 A. init() B. stop() C. start() D. paint() 2

java语言程序设计课后习题答案

习题2 3.使用“= =”对相同内容的字符串进行比较,看会产生什么样的结果。 答:首先创建一个字符串变量有两种方式:String str = new String("abc"); String str = "abc"; 使用“= =”会因为创建的形式不同而产生不同的结果: String str1 = "abc"; String str2 = "abc"; =str2); ; public class Exercise51{ public static void main(String[] args) throws IOException{ "请输入一个整数:"); InputStreamReader isStream=new InputStreamReader; BufferedReader bfReader=new BufferedReader(isStream); String input=(); int length=()-1; int n=new Integer(input).intValue(); while(length>=0){ int divisor=(int) (10,length); length=length-1; int output=n/divisor; n=n%divisor; ","); } } } 法二:(建议使用) public class Exercise5{ public static void main(String[] args){ int n=1678; int unit; int decimal; int hundred; int thousand; thousand=n/1000%10; hundred=n/100%10; decimal=n/10%10; unit=n%10; "1678包含的数字分别是: "+thousand+','+hundred+','+decimal+', '+unit); } } ;

相关文档
最新文档