Java基础上机题_分类整理版汇总
Java上机考试复习题
1、在工程中创建包p1,定义可计算面积的接口Area,Area中定义抽象方法: (40分)public double area();再定义一个实现该接口的矩形类Rectangle,(1)矩形类中定义double数据成员width和height。
(2)实现接口中求面积的方法,求矩形面积。
(3)定义矩形类中的求周长的方法,原型如下:public double perimeter();(4)定义主函数,测试这个类。
2、(40分)在工程中新建package包p1,在包中定义如下接口和类:(1)自定义接口Runner,接口中声明抽象方法:public abstract void run();(2)定义一个类Dog,实现上面的Runner接口,Dog中实现的run的功能是输出"A dog is running."(3)再定义一个类 Horse,实现上面的Runner接口,Horse中实现的run的功能是输出"A horse is running."(4)定义主函数,测试上面的两个类,使用Runner animal定义的animal引用Dog与Horse 的实例。
3、在工程中新建package包p1,在包中定义一个复数类Complex,要求:(40分)(1)成员变量包括实部private double real和虚部private double imaginary;(2)构造方法:public Complex(),默认值0.0public Complex(double real,double imaginary)(3)成员方法包括实现复数加法public Complex add(Complex cp)乘法public Complex multiply(Complex cp)描述对象信息的字符串方法public String toString()方法,格式:a+bi的形式比较是否相等public Boolean equal(Complex cp)。
java基础50道经典练习题及答案
java基础50道经典练习题及答案《Java基础50道经典练习题及答案》Java作为一种广泛应用于软件开发的编程语言,对于初学者来说,掌握其基础知识是非常重要的。
为了帮助大家更好地学习和掌握Java基础知识,我们整理了50道经典的练习题及答案,希望能够帮助大家更好地理解和掌握Java编程。
1. 请写出Java中的8种基本数据类型。
2. 什么是Java中的包(package)?3. Java中的“==”和“equals()”有什么区别?4. 什么是Java中的多态(polymorphism)?5. 请写出Java中的四种访问修饰符及其作用。
6. 什么是Java中的接口(interface)?7. 请写出Java中的四种循环语句。
8. 什么是Java中的异常处理(exception handling)?9. Java中的“String”和“StringBuffer”有什么区别?10. 请写出Java中的三种注释方式。
这些练习题涵盖了Java基础知识的各个方面,包括数据类型、包、运算符、多态、访问修饰符、接口、循环语句、异常处理、字符串处理等内容。
通过做这些练习题,可以帮助大家更好地理解和掌握Java编程的基础知识。
在学习Java编程的过程中,不仅要掌握理论知识,还要多做练习,多动手实践。
只有通过实际操作,才能更好地理解和掌握Java编程的各种知识点。
希望大家能够认真对待这些练习题,多加练习,相信一定能够取得不错的成绩。
最后,希望大家在学习Java编程的过程中,保持耐心和坚持,相信通过不懈的努力,一定能够掌握好Java编程的基础知识,成为一名优秀的Java程序员。
祝大家学习进步,早日掌握Java编程!。
Java_基础试题及答案
班级:姓名:学号:《JAVA程序设计》试题1一、单项选择填空(每小题2分,共50分)1.下列有关Java语言的叙述中,正确的是(B)A、Java是不区分大小写的B、源文件名与public权限的类名必须相同C、源文件名其扩展名为.jarD、源文件中public类的数目不限2.在Java中,负责对字节代码解释执行的是(B)。
字节就是class 文件A、垃圾回收器B、虚拟机C、编译器D、多线程机制3.在Java程序设计中,由Java编译器默认导入的包是(D)A、java.appletB、java.awtC、java.util 输入语言D、ng4.编译Java application源程序文件将产生相应的字节码文件,这些字节文件的扩展名为(B)A、.javaB、.classC、.htmlD、.exe5.在Java中,用package语句定义一个包时,该包的层次结构即是(b)A、与文件的结构相同B、与文件目录的层次相同C、与文件类型相同D、与文件大小相同6.有时在程序设计中采用分治算法而选择递归,“递归”的基本思想是(c)A、“让别人反复调用自己”B、“自己反复调用别人”C、“自己反复调用自己”D、以上说法都不对7.main方法是Java Application程序执行的入口,含有main方法的类是主类,且main方法的定义是唯一的,以下哪项是正确的(b)A、public static void main()B、public static void main(String args[ ])C、public static int main(String arg[])D、public void main(String arg[])8.按照Java的标识符的行业命名规范,下列分别表示一个类和一个方法的标识符比较合适的是(b)A、Helloworld,GetSwimmingScoreB、HelloWorld,getSwimmingScoreC、helloworld,getswimmingscoreD、helloWorld,Getswimmingscore9.以下程序的运行结果为(d)public class IfTest{public static void main(String args[]){int x=3;{int y=1;}if(x==y)System.out.println(“equal”);elseSystem.out.println(“Not Equal”);}}A、Not equalB、EqualC、无输出D、编译出错,找不到y10.下列说法不正确的是(c)A、IOException必须被捕获或抛出B、java语言不自动初始化变量的值C、java语言不允许同时继承一个类并实现一个接口D、java语言会自动回收内存中的垃圾11.在Java中,所有类的根类是(a)A、ng.ObjectB、ng.ClassC、java.applet.AppletD、java.swing.Jframe12.下列方法中可以用来创建一个新线程的是(b)A、实现ng.Runnable接口并重写start()方法B、实现ng.Runnable接口并重写run()方法C、实现ng.Thread接口并重写run()方法D、实现ng.Thread类并重写start()方法13.启动Applet小程序时,即调用类似于应用程序main方法的入口方法(b)A、stop()B、init()C、start()D、destroy()14.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用____个比特位。
java基础50道经典练习题及答案
java基础50道经典练习题及答案Java基础50道经典练习题及答案Java作为一门广泛应用于软件开发领域的编程语言,其基础知识的掌握对于程序员来说至关重要。
为了帮助大家更好地理解和掌握Java的基础知识,下面将介绍50道经典的Java练习题及其答案。
1. 编写一个Java程序,打印输出"Hello, World!"。
```javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```2. 编写一个Java程序,计算并打印输出1到100之间所有偶数的和。
```javapublic class SumOfEvenNumbers {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}System.out.println("Sum of even numbers: " + sum);}}```3. 编写一个Java程序,判断一个整数是否为素数。
```javapublic class PrimeNumber {public static void main(String[] args) {int number = 17;boolean isPrime = true;for (int i = 2; i <= Math.sqrt(number); i++) {if (number % i == 0) {isPrime = false;break;}}if (isPrime) {System.out.println(number + " is a prime number.");} else {System.out.println(number + " is not a prime number."); }}```4. 编写一个Java程序,将一个字符串反转并输出。
java试题库及答案
java试题库及答案Java是一种广泛使用的高级编程语言,因其简洁、高效和跨平台性而备受程序员们的青睐。
为了帮助学习Java的同学更好地备战考试,我们特别整理了一份Java试题库及答案,希望对大家有所帮助。
一、基础知识题1. Java中基本数据类型有哪些?请简要说明各自的特点。
答:Java中的基本数据类型包括整型(byte, short, int, long)、浮点型(float, double)、字符型(char)和布尔型(boolean)。
其中整型用于存储整数,浮点型用于存储小数,字符型用于存储字符,布尔型用于存储真假值。
2. Java中如何进行输入输出操作?答:在Java中,可以使用Scanner类进行输入操作,System.out.println()进行输出操作。
二、面向对象题1. 请简要说明面向对象编程的三大特性是什么?答:面向对象编程的三大特性是封装、继承和多态。
封装指的是将数据和方法封装到一个类中,通过访问修饰符来控制对外部的访问权限;继承指的是子类可以继承父类的属性和方法;多态指的是同一个方法在不同的对象下有不同的实现。
2. Java中如何实现继承?请编写一个简单的代码示例。
答:在Java中,可以通过extends关键字来实现继承。
示例代码如下:```javaclass Animal {public void eat() {System.out.println("Animal is eating");}}class Dog extends Animal {public void bark() {System.out.println("Dog is barking");}}public class Main {public static void main(String[] args) {Dog myDog = new Dog();myDog.eat();myDog.bark();}```三、异常处理题1. Java中如何处理异常?请简要说明try-catch-finally语句的作用。
Java上机操作试题
Java上机操作试题一、Java基础语法1. 请简要描述Java的基本数据类型及其占用的空间大小。
2. 请编写一个Java程序,输出以下的结果:12 23 3 34 4 4 45 5 5 5 5提示:使用循环语句和嵌套循环语句。
3. 请编写一个Java程序,实现以下功能:输入两个整数a和b,输出a和b的和、差、积、商和余数。
4. 请编写一个Java程序,实现以下功能:输入一个正整数n,输出n的所有因子。
提示:可以使用循环语句和判断语句。
二、面向对象编程1. 请简要描述Java中类和对象的概念。
2. 请编写一个Java程序,实现以下功能:设计一个圆类Circle,包含一个double类型的半径属性,以及圆的面积和周长的计算方法。
提示:可以使用Math中的常量和方法。
3. 请编写一个Java程序,实现以下功能:设计一个可爱的小猫类Cat,包含一个String类型的name属性和一个void类型的cry方法,输出“喵喵喵!”。
4. 请编写一个Java程序,实现以下功能:定义一个矩形类Rectangle,包含一个int类型的长和宽属性,以及计算矩形周长和面积的方法。
提示:在构造函数中将长和宽初始化。
三、异常处理1. 请简要描述Java异常处理的基本原理。
2. 请编写一个Java程序,实现以下功能:计算两个整数相除的结果,如果除数为0,抛出异常并输出“除数不能为0!”,否则输出计算结果。
3. 请编写一个Java程序,实现以下功能:设计一个数组类,包含一个int类型的数组属性和一个获取指定位置元素的方法,如果指定位置超出范围,抛出异常并输出“数组下标越界!”,否则输出指定位置元素。
4. 请编写一个Java程序,实现以下功能:模拟登录功能,输入用户名和密码,如果用户名或密码不正确,抛出异常并输出“用户名或密码错误!”,否则输出“登录成功!”。
提示:可以使用字符串的equals方法进行字符串比较。
以上试题侧重测试Java基础语法、面向对象编程以及异常处理的掌握情况。
分类试题库JAVA语言基础(含答案)
分类试题库——JAVA语言基础(含答案)一选择题1. 下列java标识符,错误的是()_sys_varl$changeUser_name1_file下列不属于简单数据类型的是()整数类型类符点数类型布尔类型下列属于JAVA关键词的是()TRUEgotofloatNULL下列声明和赋值语句错误的是double w=3.1415;String strl=”bye”;float z=6.74567boolean truth=true;java中,八进制数以______开头。
0x0X08自定义类型转换是由按优先关系从低级数据转换为高级数据,优先次序为()char-int-long-float-doubleint-long-float-double-charlong-float-int-double-char以上都不对在java中,Integer.MAX_VALUE表示浮点类型最大值整数类型最大值长整型最大值以上说法都不对JAVA中,数据类型值中不可能出现的符号是()dfe/下列表示单引号的是()‘\\’\\\\’‘\\10. 下列语句片断中,four得值为:()int three=3;char one=‘1’char four=(char)(three+one);3131411. 下列不属于整型变量的类型是byteshortfloatlong12. int类型整型变量在内存中的位数为816326413. 下列数据类型转换,必须进行强制类型转换的是byte→intshort→longfloat→doubleint→char14. java中,用()关键字定义常量final#definefloatconst15. 关于变量的作用范围,下列说法错误的是异常处理参数作用域为整个类局部变量作用于声明该变量的方法代码段类变量作用于声明该变量的类方法参数作用于传递到方法内代码段16. 下列属于条件运算符的是+?:&&>>17. 下列程序test类中的变量c的最后结果为public class test{public static void main(String args[]) {int a=10;int b;int c;if(a>50){b=9;}c=b+a;}}1019编译出错18. 下列程序片断的执行,说法正确的是public class test{public static void main(String args[]){byte b=100;int i=b;int a=2000;b=a;System.out.println(b);}}b的值为100b的值为2000第六行出错第八行出错19. 00101010(&)00010111语句的执行结果为0000001011111111001111111100000020. 已知i为整形变量,关于一元运算++i和i++,下列说法正确的是A. ++i运算将出错B. 在任何情况下运行程序结果都一样C. 在任何情况下运行程序结果都不一样D. 在任何情况下变量i的值都增121. 在java中语句:37.2%10的运算结果为A. 7.2B. 7C. 3D. 0.222. 在java语句中,运算符&&实现A. 逻辑或B. 逻辑与C. 逻辑非D. 逻辑相等23. 在java语句中,位运算操作数只能为整型或()数据A.实型B.字符型C.布尔型D.字符串型00101010(|)00010111语句的执行结果为A. 00000000B. 11111111C. 00111111D. 1100000025. ~0010101语句的执行结果为A. 1101010B. 0010101C. 11111111D. 0000000026. 复合语句用()括起来的一段代码。
Java基础上机题 分类整理版
Java基础上机题分类整理版java基础上机题-分类整理版一、类和对象基础题(共13题)1.撰写一个java应用程序,该程序中存有3个类:lader、circle和主类a。
具体内容建议如下:lader类具备类型为double的上底、下底、低、面积属性,具备回到面积的功能,包含一个构造方法对上底、下底、低展开初始化。
circle类具备类型为double 的半径、周长和面积属性,具备回到周长、面积的功能,包含一个构造方法对半径展开初始化。
主类a用以测试类lader和类circle的功能。
2.按要求编写java应用程序:(1)撰写西游记人物类(xiyoujirenwu)其中属性有:身高(height),名字(name),武器(weapon)方法有:显示名字(printname),显示武器(printweapon)(2)在主类的main方法中建立二个对象:zhubajie,sunwukong。
并分别为他们的两个属性(name,weapon)赋值,最后分别调用printname,printweapon方法表明二个对象的属性值。
3.编写java应用程序。
首先定义一个描述银行账户的account类,包括成员变量“账号”和“存款余额”,成员方法有“存款”、“取款”和“余额查询”。
其次,编写一个主类,在主类中测试account类的功能。
4.撰写java应用程序。
首先,定义一个时钟类――clock,它包含三个int型成员变量分别则表示时、分后、秒,一个构造方法用作对三个成员变量(时、分后、秒)展开初始化,除了一个成员方法show()用作表明时钟对象的时间。
其次,再定义一个主类――testclass,在主类的main方法中建立多个时钟类的对象,采用这些对象调用方法show()去表明时钟的时间。
5.编写java应用程序。
首先,定义描述学生的类――student,包括学号(int)、姓名(string)、年龄(int)等属性;二个方法:student(intstuno,stringname,intage)用于对对象的初始化,output()用于输出学生信息。
Java基础笔试机试测试题(带答案)
Java基础笔试机试测试题(带答案)Java基础考试题班级:__________ 姓名:___________ 日期:_____________一、笔试(45题,每题2分)1) 分析下面的Java程序段,编译运行后的输出结果是()。
public class Test {public static void changeString(StringBuffer sb) {("stringbuffer2");}public static void main(String[] args) {StringBuffer sb = new StringBuffer("stringbuffer1");changeString(sb);"sb = " + ());}}A. sb = stringbuffer2stringbuffer1B. sb = stringbuffer1C. sb = stringbuffer2D. sb = stringbuffer1stringbuffer22) 在Java中,包有多种用途,但不包含()。
A. 将类组合成较小的单元,便于使用B. 有助于避免命名冲突C. 有助于提高运行效率D. 允许在更广的范围内保护类、数据和方法3) 在Java中,如果要在字符串类型s="java"中,得到字母'v' 出现的位置,选()语句。
A)('v'); B)('v'); C)('v'); D)('v');4)下列代码运行后,变量c的值是()。
int a=15,b=10;double c=a/b;a) b) c) 1 d) 05)main方法如下所示,该程序的运行结果是()。
public static void main(String [] args){int i=0;输出0 b) 输出1 c) 编译错误d) 运行时出现异常6)使用类的步骤包括以下三步,它们的先后顺序是()。
java基础考试复习题
java基础考试复习题Java基础考试复习题一、Java语言概述1. 简述Java语言的特点。
2. 描述Java的运行机制,包括JVM的作用。
3. 解释Java平台的跨平台特性。
二、基本语法1. 列举Java的基本数据类型及其取值范围。
2. 描述变量的声明和初始化过程。
3. 说明运算符的分类及其用法。
三、控制流程1. 描述if-else语句的使用场景和语法结构。
2. 解释循环语句(for, while, do-while)的用法和区别。
3. 列举并解释break和continue语句的作用。
四、数组与字符串1. 说明数组的声明、初始化和遍历方法。
2. 描述多维数组的概念及其使用。
3. 列举常用的String类方法,并解释其功能。
五、面向对象编程1. 解释类和对象的概念及其关系。
2. 描述构造方法的作用和使用。
3. 列举Java中的访问修饰符,并解释其作用域。
六、继承与多态1. 描述继承的概念及其在Java中的实现方式。
2. 说明多态的概念及其在Java中的应用。
3. 解释抽象类和接口的区别。
七、异常处理1. 解释异常的概念及其分类。
2. 描述try-catch-finally语句块的用法。
3. 列举Java中常见的异常类型。
八、集合框架1. 描述Java集合框架的组成。
2. 说明List、Set和Map接口的区别和应用场景。
3. 列举常用的集合类,并解释其特点。
九、输入输出(I/O)1. 描述Java I/O流的概念。
2. 解释字节流和字符流的区别。
3. 列举常用的I/O类,并说明其用途。
十、多线程1. 解释线程的概念及其在Java中的实现。
2. 描述线程的生命周期和状态。
3. 说明同步和死锁的概念及其解决方法。
十一、Java Web基础1. 描述Servlet的作用和生命周期。
2. 解释JSP和Servlet的关系。
3. 列举常用的Web开发技术。
十二、Java数据库连接1. 解释JDBC的概念及其在Java数据库连接中的作用。
java基础50道经典练习题及答案
JAVA基础编程练习题【程序1】古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?【程序2】判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是【程序3】打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
【程序4】将一个正整数分解质因数。
例如:输入90,打印出90=2*3*3*5。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。
【程序5】利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B 表示,60分以下的用C表示。
【程序6】输入两个正整数m和n,求其最大公约数和最小公倍数。
【程序8】求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
【程序9】一个数如果恰好等于它的因子之和,这个数就称为"完数"。
例如6=1+2+3.编程找出1000【程序10】一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次【程序11】有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?程序分析:可填在百位、十位、个位的数字都是1、2、3、4。
Java基础上机题
一、类和对象基础题(共13题)1.编写一个Java应用程序,该程序中有3个类:Lader、Circle和主类A。
具体要求如下:Lader类具有类型为double的上底、下底、高、面积属性,具有返回面积的功能,包括一个构造方法对上底、下底、高进行初始化。
Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的功能,包括一个构造方法对半径进行初始化。
主类A用来测试类Lader和类Circle的功能。
2.按要求编写Java应用程序:(1)编写西游记人物类(XiYouJiRenWu)其中属性有:身高(height),名字(name),武器(weapon)方法有:显示名字(printName),显示武器(printWeapon)(2)在主类的main方法中创建二个对象:zhuBaJie,sunWuKong。
并分别为他们的两个属性(name,weapon)赋值,最后分别调用printName,printWeapon方法显示二个对象的属性值。
8.编写Java应用程序。
首先定义一个描述银行账户的Account类,包括成员变量“账号”和“存款余额”,成员方法有“存款”、“取款”和“余额查询”。
其次,编写一个主类,在主类中测试Account类的功能。
9.编写Java应用程序。
首先,定义一个时钟类——Clock,它包括三个int型成员变量分别表示时、分、秒,一个构造方法用于对三个成员变量(时、分、秒)进行初始化,还有一个成员方法show()用于显示时钟对象的时间。
其次,再定义一个主类——TestClass,在主类的main方法中创建多个时钟类的对象,使用这些对象调用方法show()来显示时钟的时间。
10.编写Java应用程序。
首先,定义描述学生的类——Student,包括学号(int)、姓名(String)、年龄(int)等属性;二个方法:Student(intstuNo,Stringname,intage) 用于对对象的初始化,outPut()用于输出学生信息。
java上机题及答案
}
public static boolean isDaffodil(int n)//判断一个三位数是否是水仙花数
{
int i=n/100;//得到百位上的数
int j=(n-100*i)/10;//得到十位上的数
int k=n%10;//得到个位上的数
if(n==i*i*i+j*j*j+k*k*k)
System.out.println("数字的个数为:"+j);
System.out.println("空格的个数为:"+k);
System.out.println("其他字符的个数为:"+l);
}
}
【程序8】
public class Item8
{
public static void main(String[]args)
System.out.print("请输入一个成绩:");
x=s.nextInt();
Grade(x);
}
public static void Grade(int x)
{
char grade=x>=90?'A'
:x<60?'C'
:'B';
System.out.println("等级为:"+grade);
int j=0;//统计字符串中数字的个数
int k=0;//统计字符串中空格的个数
int l=0;//统计字符串中其他字符的个数
char a[]=s.toCharArray();
for(int ii=0;ii<a.length;ii++)
《Java编程基础知识点汇总与习题集》_答案
目录第一章Java入门 (2)第二章Java基础 (8)第三章条件转移 (28)第四章循环语句 (37)第五章方法 (47)第六章数组 (59)第七章面向对象 (76)第八章异常 (118)第一章Java入门知识点汇总1、JAVA 三大体系⏹Java SE:(J2SE,Java2 PlatformStandard Edition,标准版),三个平台中最核心的部分,包含Java最核心的类库。
⏹JavaEE:(J2EE,Java 2 Platform,Enterprise Edition,企业版),开发、装配、部署企业级应用,包含Servlet、JSP、JavaBean、JDBC、EJB、WebService等。
⏹Java ME:(J2ME,Java 2 PlatformMicro Edition,微型版),用于小型电子设备上的软件开发。
2、JDK,JRE,JVM的作用及关系作用★JVM:保证Java语言跨平台★JRE:Java程序的运行环境★JDK:Java程序的开发环境关系★JDK:JRE+工具★JRE:JVM+类库3、JDK环境变量配置⏹path环境变量:存放可执行文件的存放路径,路径之间用逗号隔开⏹classpath环境变量:类的运行路径,JVM在运行时通过classpath加载需要的类4、重点掌握两个程序⏹javac.exe:Java编译器工具,可以将编写好的Java文件(.java)编译成Java字节码文件(.class);⏹java.exe:Java运行工具,启动Java虚拟机进程,运行编译器生成的字节码文件(.class)5、一切程序运行的入口public static void main(String args []){System.out.println(“Hello World!”);}课堂笔记练习题一、填空题1、Java的三个技术平台分别是(J2SE)、(J2EE)、(J2ME)。
常见Java上机面考试
常见的Java上机面试题在程序员面试中,主要的考试形式分为笔试和上机编程考试两部分。
笔试主要考查面试者的基础是否牢固;上机考试主要考查面试者的实际开发能力和技术技巧。
上机编程考试,要求面试者能够根据题目的要求,使用一种编程工具,编写全部代码并调试运行。
这主要是考查面试者代码书写和编程的熟练程度。
值得注意的是,这类面试题要求能够正确运行,往往要求面试者使用比较原始的JDK编译方式也就是使用DOS命令提示符,而不是提供Eclipse或者JBuilder等快速开发环境。
本章将经常出现的上机编程题进行分类,希望能够给读者带来帮助和启示。
17.1 Java基础编程试题(1)在上机编程类的面试题中,大部分涉及基础编程,例如算法、语法、常用的类等知识点。
面试题1 怎样截取字符串考题题干编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。
但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF"6,应该输出"我ABC",而不是"我ABC+汉的半个"。
试题分析本面试题容易产生困惑的是中文字符和英文字符,在这里需要考虑汉字和英文字符的占用字节数问题,中文字符占两个字节,英文字符占一个字节,理解了这个,就很容易完成本题了。
参考答案具体代码实现如下:1.package core_java;2.import java.util.Scanner;3.public class InterceptionStr {4.static String ss;//要进行截取操作的字符串5.static int n;//截取的字符串的字节数6.public static void main(String[] args) {7. System.out.println("请输入字符串:");8. Scanner scStr = new Scanner(System.in);//从键盘获取字符串9. ss = scStr.next(); //将Scanner对象中的内容以字符串的形式取出来10. System.out.println("请输入字节数:");11. Scanner scByte = new Scanner(System.in);//从键盘获取字符串12. n = scByte.nextInt();//将Scanner对象中的内容以数值的形式取出来13. Interception(setValue());//方法与方法间的套用14. }15.public static String[] setValue() {//此方法的作用是将字符串转换成字符串数组16. String[] string = new String[ss.length()];//创建一个字符数组string17.for (int i = 0; i < string.length; i++) {18. string[i] = ss.substring(i, i + 1);19.//将字符串ss中的第i个字符取出,放入字符数组中string中20. }21.return string;//将这个字符数组返回22. }23.public static void Interception(String[] string) {24.int count = 0;25. String m = "[\u4e00-\u9fa5]";//汉字的正则表达试26. System.out.println("以每" + n + "字节划分的字符串如下所示:");27.for (int i = 0; i < string.length; i++) {28.if (string[i].matches(m)) {29.//将字符数组中的每一个元素与表则表达式进行匹配,如果相同则返回true30. count = count + 2;//如果当前字符是汉字,计数器count就加231. } else {32. count = count + 1;//如果当前字符不是汉字,计数器count就加133. }34.if (count < n) {//如果当前计数器count的值小于n,则输出当前字符35. System.out.print(string[i]);36. } else if (count == n) {//如果当前计数器count的值等于n,则输出当前字符37. System.out.print(string[i]);38. count = 0;39. System.out.println();//内循环结果,则需要换行,起到控制打印格式的作用40. } else {41. count = 0;//如果当前计数器count的值大于n,则计数器count清零,接着执行外部循环42. System.out.println();43. }44. }45. }46.}17.1 Java基础编程试题(2)面试题2 怎样实现元素互换考题题干从键盘上输入10个整数,并将其放入一个一维数组中,然后将其前5个元素与后5个元素对换,即:第1个元素与第10个元素互换,第2个元素与第9个元素互换…第5个元素与第6个元素互换。
Java程序上机练习题库(含答案)
上机练习题(共包括四部分、16个练习、共96个练习题,请使用“视图”中的“文档结构图”查看)一、java语言基础和面向对象(教材内容的第1、2、3章)练习1(4)掌握:各种数据类型变量的定义和访问,各种数据类型常量的使用,数据类型转换。
1. 编写Applet,其功能为:取两个小于1000的正随机数,若两个数均小于10,先将它们都放大50倍,否则不改变这两个数。
最后,求这两个数的和并将结果输出。
要求这些功能在主类的方法init( ) 中实现,并使输出结果仅保留小数点后4位(不需四捨五入)。
@程序import java.awt.*;import java.applet.*;public class Applet1 extends Applet{public void init( ){Label out1=new Label(" ");Label out2=new Label(" ");double x,y;add(out1);add(out2);x=Math.random( )*1000;y=Math.random( )*1000;if(x<10&y<10) { x*=50; y*=50; }out1.setText(""+x+"+"+y+" 约等于");out2.setText(""+(int)((x+y)*10000)/10000.0);}}2. 请编写一个Applet,其功能为:取一个小于10000的正随机整数,并输出该数的平方根。
要求这些功能在主类的方法paint( ) 中实现,并使输出结果在四捨五入后保留小数点后4位。
@程序import java.awt.*;import java.applet.*;public class Applet1 extends Applet{public void paint(Graphics g){int k;k=(int)(Math.random( )*1000);g.drawString(""+k+" 的平方根约等于"+(int)((Math.sqrt(k)+0.00005)*10000)/10000.0,20,20);}}3. 编写一个Applet,其功能为:取一个50~200之间的正随机整数,如果该数为奇数则求它的平方根并转换成float型数后再输出;如果该数为偶数则求它的平方并输出。
java上机试题及答案
java上机试题及答案Java上机试题及答案一、选择题1. 在Java中,以下哪个关键字用于声明一个类?- A. class- B. struct- C. interface- D. enum答案:A2. Java中用于捕获异常的关键字是?- A. try- B. catch- C. throw- D. finally答案:B二、填空题1. Java中,单精度浮点数使用的数据类型是________。
答案:float2. Java中,用于声明字符串的关键字是________。
答案:String三、编程题1. 编写一个Java程序,计算并输出100以内所有偶数的和。
```javapublic class EvenSum {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}System.out.println("The sum of even numbers within 100 is: " + sum);}}```四、简答题1. 简述Java中接口和抽象类的区别。
答案:接口和抽象类都是Java中实现抽象化的方式。
接口可以包含常量、抽象方法和默认方法,但不能包含状态信息;抽象类可以包含状态信息和非抽象方法。
接口中的所有方法默认为public,而抽象类中可以有private和protected方法。
接口不能实现其他接口,但可以继承多个接口;抽象类可以继承一个类,但不能继承另一个抽象类。
2. 描述Java中垃圾回收机制的基本原理。
答案:Java中的垃圾回收机制主要依赖于垃圾收集器(Garbage Collector, GC)。
GC通过追踪对象的引用来识别哪些对象是可达的,即被程序直接或间接引用的对象。
不可达的对象被认为是垃圾,GC会定期地回收这些对象占用的内存。
计算机二级考试JAVA上机试题及答案
计算机二级考试JAVA上机试题及答案计算机二级考试JAVA上机试题及答案平时的练习对我们的考试来说十分重要,练习做得多了自然熟能生巧。
下面是店铺为大家收集整理的计算机二级考试JAVA上机试题及答案,希望对大家学习有所帮助!一、基本操作题在下画线上补充代码。
本题的功能是输出字符串"welcome!"和表达式"a/b=c",以及输出"\\do something"。
Public class javal{Pubhc static void main(string[]args){System.out.println( );System.out.println( );System.out.println( );}二、简单应用题下面的程序中,有两个文本框,Input和Output,用户在Input 文本框中输入字符串后回车,字符串会在Output文本框中出现。
import java.awt.*;import java.awt.event.*;public class java2 extends Frame{public static void main(String args[]){java2 f=new java2("java2");Panel pan=new Panel();f.init();}pubhc java2(String str){super(str);}public void init(){addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(O);}}};setSize(200,200);setLayout(new FlowlLayout());final TextField tfl=new TextField(20):final TextField tf2=new TextField(20);final Label hi—new Label("Input:");final Label la2一new Label("Output:");tfl.addActionListener( {public void actionPerformed(ActionEvent e){tf2.setTex( );}});add(la1);add(tfl);add(la2);add(tf2);setVisible(true);}}三、综合应用题本题的功能是展示4种不同的对话框。
Java基础上机题-分类整理版
Java基础上机题-分类整理版一、类和对象基础题(共13题)1.编写一个Java应用程序,该程序中有3个类:Lader、Circle和主类A。
具体要求如下:Lader类具有类型为double的上底、下底、高、面积属性,具有返回面积的功能,包括一个构造方法对上底、下底、高进行初始化。
Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的功能,包括一个构造方法对半径进行初始化。
主类A用来测试类Lader和类Circle的功能。
解答:解题思路:该题需要构建Lader、Circle和主类A,Lader类主要是做什么什么,A类主要做什么,起什么作用。
解题过程(关键代码):解题总结:该题用到了什么什么知识点 class Lader{double s,x,g,area; double getarea(){ return ((s+x)*g*0.5);}Lader(double s,double x,double g) {this.s=s; this.x=x; this.g=g;} }class Circle{ double r,m,l;Circle(double rr) {r=rr;}double getm(){return 3.14*r*r; }double getl(){return 2*3.14*r; } }public class A{public static void main(String args[]){ Lader text=new Lader(3,4,5);System.out.println(\上底下底高分别为3,4,5的梯形面积为:\+text.getarea());Circle text1=new Circle(5);System.out.println(\半径为5的圆面积是:\+text1.getm()+\周长是\+text1.getl()); } }结题总结:本题用到了构造方法,new实例化对象,方法的声明和调用以及对象的引用等等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、类和对象基础题(共13题)1.编写一个Java应用程序,该程序中有3个类:Lader、Circle和主类A。
具体要求如下:Lader类具有类型为double的上底、下底、高、面积属性,具有返回面积的功能,包括一个构造方法对上底、下底、高进行初始化。
Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的功能,包括一个构造方法对半径进行初始化。
主类A用来测试类Lader和类Circle的功能。
2.按要求编写Java应用程序:(1)编写西游记人物类(XiYouJiRenWu)其中属性有:身高(height),名字(name),武器(weapon)方法有:显示名字(printName),显示武器(printWeapon)(2)在主类的main方法中创建二个对象:zhuBaJie,sunWuKong。
并分别为他们的两个属性(name,weapon)赋值,最后分别调用printName, printWeapon方法显示二个对象的属性值。
3.编写Java应用程序。
首先定义一个描述银行账户的Account类,包括成员变量“账号”和“存款余额”,成员方法有“存款”、“取款”和“余额查询”。
其次,编写一个主类,在主类中测试Account类的功能。
4.编写Java应用程序。
首先,定义一个时钟类——Clock,它包括三个int型成员变量分别表示时、分、秒,一个构造方法用于对三个成员变量(时、分、秒)进行初始化,还有一个成员方法show()用于显示时钟对象的时间。
其次,再定义一个主类——TestClass,在主类的main方法中创建多个时钟类的对象,使用这些对象调用方法show()来显示时钟的时间。
5.编写Java应用程序。
首先,定义描述学生的类——Student,包括学号(int)、姓名(String)、年龄(int)等属性;二个方法:Student(int stuNo,String name,int age) 用于对对象的初始化,outPut()用于输出学生信息。
其次,再定义一个主类——TestClass,在主类的main方法中创建多个Student类的对象,使用这些对象来测试Student类的功能。
6.编写一个Java应用程序,该应用程序包括2个类:Print类和主类E。
Print 类里有一个方法output()功能是输出100 ~ 999之间的所有水仙花数(各位数字的立方和等于这个三位数本身,如: 371 = 33 + 73 + 13。
)在主类E的main方法中来测试类Print。
7.编写Java应用程序。
首先,定义一个Print类,它有一个方法void output(intx),如果x的值是1,在控制台打印出大写的英文字母表;如果x的值是2,在控制台打印出小写的英文字母表。
其次,再定义一个主类——TestClass,在主类的main方法中创建Print类的对象,使用这个对象调用方法output ()来打印出大小写英文字母表。
8.按要求编写Java应用程序。
(1)建立一个名叫Cat的类:属性:姓名、毛色、年龄行为:显示姓名、喊叫(2)编写主类:创建一个对象猫,姓名为“妮妮”,毛色为“灰色”,年龄为2岁,在屏幕上输出该对象的毛色和年龄,让该对象调用显示姓名和喊叫两个方法。
9.创建一个三角形类,成员变量三边,方法求周长,创建类主类A来测试它。
10.按要求编写Java应用程序。
(1)创建一个叫做People的类:属性:姓名、年龄、性别、身高行为:说话、计算加法、改名编写能为所有属性赋值的构造方法;(2)创建主类:创建一个对象:名叫“张三”,性别“男”,年龄18岁,身高1.80;让该对象调用成员方法:说出“你好!”计算23+45的值将名字改为“李四”11.按要求编写Java应用程序。
(1)创建一个叫做机动车的类:属性:车牌号(String),车速(int),载重量(double)功能:加速(车速自增)、减速(车速自减)、修改车牌号,查询车的载重量。
编写两个构造方法:一个没有形参,在方法中将车牌号设置“XX1234”,速度设置为100,载重量设置为100;另一个能为对象的所有属性赋值;(2)创建主类:在主类中创建两个机动车对象。
创建第一个时调用无参数的构造方法,调用成员方法使其车牌为“辽A9752”,并让其加速。
创建第二个时调用有参数的构造方法,使其车牌为“辽B5086”,车速为150, 载重为200,并让其减速。
输出两辆车的所有信息12.创建一个Point类,有成员变量x,y,方法getX(),setX(),还有一个构造方法初始化x和y。
创建类主类A来测试它。
13.首先,编写一个类ChongZai,该类中有3个重载的方法void print();其次,再编写一个主类来测试ChongZai类的功能。
二、数组相关(共4题)14.已知2个一维数组:a[]={3,4,5,6,7},b[]={1,2,3,4,5,6,7};把数组a与数组b 对应的元素乘积再赋值给数组b,如:b[2]=a[2]*b[2];最后输出数组b的元素。
15.找出如下数组中最大的元素和最小的元素,a[][]={{3,2,6},{6,8,2,10},{5},{12,3,23}}16.按要求编写Java应用程序。
编写一个名为Test的主类,类中只有一个主方法;在主方法中定义一个大小为50的一维整型数组,数组名为x,数组中存放着{1,3,5,…,99}输出这个数组中的所有元素,每输出十个换一行;在主方法中定义一个大小为10*10的二维字符型数组,数组名为y,正反对角线上存的是‘*’,其余位置存的是‘#’;输出这个数组中的所有元素。
17.从键盘上输入一个正整数n,请按照以下五行杨辉三角形的显示方式,输出杨辉三角形的前n行。
请采用循环控制语句来实现。
(三角形腰上的数为1,其他位置的数为其上一行相邻两个数之和。
)11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1三、继承相关(共13题)18.实现如下类之间的继承关系,并编写Music类来测试这些类。
19.创建如下三个类:(People类中的三个方法分别输出一些信息,ChinaPeople 和AmericanPeople类重写父类的三个方法)。
20.编写一个Java应用程序,该程序包括3个类:A类、B类和主类E。
其中类B是类A的子类,在子类B中新增了成员变量和成员方法,并且隐藏了父类A的成员变量和重写了父类A的成员方法。
在主类E的main方法中,创建类B 的对象并赋给父类A的对象a,使用上转型对象a来测试上转型对象的一些特性。
21.编写一个Java应用程序,该程序包括3个类:Monkey类、People类和主类E。
要求:(1) Monkey类中有个构造方法:Monkey (String s),并且有个public void speak() 方法,在speak方法中输出“咿咿呀呀......”的信息。
(2)People类是Monkey类的子类,在People类中重写方法speak(),在speak方法中输出“小样的,不错嘛!会说话了!”的信息。
(3)在People类中新增方法void think(),在think方法中输出“别说话!认真思考!”的信息。
(4)在主类E的main方法中创建Monkey与People类的对象类测试这2个类的功能。
22.编写一个类A,该类创建的对象可以调用方法f输出小写的英文字母表。
然后再编写一个A类的子类B,要求子类B必须继承类A的方法f(不允许重写),子类B创建的对象不仅可以调用方法f输出小写的英文字母表,而且可以调用子类新增的方法g输出大写的英文字母表。
最后编写主类C,在主类的main方法中测试类A与类B。
23.实现一个名为Person的类和它的子类Employee,Employee有两个子类Faculty和Staff。
具体要求如下:(1)Person类中的属性有:姓名name(String类型),地址address(String类型),电话号码telphone(String类型)和电子邮件地址email(String类型);(2)Employee类中的属性有:办公室office(String类型),工资wage(double 类型),受雇日期hiredate(String类型);(3)Faculty类中的属性有:学位degree(String类型),级别level(String类型);(4)Staff类中的属性有:职务称号duty(String类型)。
24.编写一个Car类,具有final类型的属性品牌,具有功能drive;定义其子类Aodi和Benchi,具有属性:价格、型号;具有功能:变速;定义主类E,在其main方法中分别创建Aodi和Benchi的对象并测试对象的特性。
25.按要求编写一个Java应用程序:(1)编写一个矩形类Rect,包含:两个protected属性:矩形的宽width;矩形的高height。
两个构造方法:1.一个带有两个参数的构造方法,用于将width和height属性初化;2.一个不带参数的构造方法,将矩形初始化为宽和高都为10。
两个方法:求矩形面积的方法area()求矩形周长的方法perimeter()(2)通过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用矩形的左上角坐标来标识,包含:添加两个属性:矩形左上角坐标startX和startY。
两个构造方法:带4个参数的构造方法,用于对startX、startY、width和height属性初始化;不带参数的构造方法,将矩形初始化为左上角坐标、长和宽都为0的矩形;添加一个方法:判断某个点是否在矩形内部的方法isInside(double x,double y)。
如在矩形内,返回true, 否则,返回false。
提示:点在矩形类是指满足条件:x>=startX&&x<=(startX+width)&&y<startY&&y>=(startY-height) (3)编写PlainRect类的测试程序创建一个左上角坐标为(10,10),长为20,宽为10的矩形对象;计算并打印输出矩形的面积和周长;判断点(25.5,13)是否在矩形内,并打印输出相关信息。
26.定义类Human,具有若干属性和功能;定义其子类Man、Woman;在主类Test中分别创建子类、父类和上转型对象,并测试其特性。
27.编写一个Animal类,具有属性:种类;具有功能:吃、睡。
定义其子类Fish 和Dog,定义主类E,在其main方法中分别创建其对象并测试对象的特性。