2022年《Java面向对象编程》练习题.pdf
Java 面向对象编程练习题专题 1 初识 Java 一、填空题1.自从 Sun推出 Java以来,按应用范围可分为三个版本,分别就是 ()、()、( )。2.环境变量的设置 ,若 JDK 安装在 “D: JDK ”, 则应设置 Path为( )、classpath为( )。3.Java源文件的扩展名为 ( ),用 Javac编译 Java源文件 ,得到的字节码文件的扩展名为( )。4.如果 Java源文件中有多个类 ,那么只能有一个类就是 ()类。二、选择题1.作为 Java应用程序入口的 main 方法,其声明格式就是 () A.public static int main(String args) B.public static void main(String args) C.public void main(String args) D.public int main(String args) 2.下面命令正确的就是 () A.java AppFirst、java B.java AppFirst C.java appfirst、class D.javac AppFirst 3.设有一个 Java小程序 ,源程序名为 FirstApplet、 java,其 HTML 文件为 FirstApplet、 html,则运行该小程序的命令为() A.java FirstApplet B.javac FirstApplet、java C.appletviewer FirstApplet、java D.appletviewer FirstApplet、html 4.JDK 安装完成后 ,主要的命令如 javac、java 等,都存放在根目录的 ()文件夹下。A.bin B.jre C.include D.doc 5.Java语言就是一种_语言。A.机器B.汇编C.面向过程的D.面向对象的6、Java程序的最基本组成单位就是_。A.函数B.过程C.变量D.类三、简答题 (十分重要 ) 1.Java语言有哪些特点?2.JDK 安装完成后 ,如何设置环境变量?4.简述 Java应用程序的开发过程精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 19 页 - - - - - - - - - - Java 面向对象编程练习题专题 2 标识符、表达式、数据类型一、填空题1.Java逻辑常量有两个 :()与()。2.写出下列表达式的运算结果,设 a=2,b=-4,c=true。(1)-a%b+ ( )(2)a=1 & a b) ()(4)(-a)a ()(5)(double)(a+b)/5+a/b ()3、比较两个数相等的运算符就是: 。4、Java中的八种基本数据类型分别就是:char、与。二、选择题1.下面这些标识符哪个就是错误的( ) A.Javaworld B._sum C.2Java Program D.$abc 2.下列哪一组运算符的优先级顺序就是从高到低排列的( ) A.|、&、 !B.&、| C.! 、%、+ D.、3 ? +a : b+); A.a 的值为 2,b 的值为 3,c 的值为 1 B.a 的值为 2,b 的值为 4,c 的值为 2 C.a的值为 2,b 的值为 4,c的值为 1 D.a 的值为 2,b 的值为 3,c 的值为 2 6.设各个变量的定义如下 ,哪些选项的值为 true ( ) int a=3, b=3; boolean flag=true; A.+a = = b B.+a= = b+ C.(+a = = b) | flag D.(+a= =b) & flag 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 19 页 - - - - - - - - - - Java 面向对象编程练习题7.表达式 (int)6、5/7、5*3 的值的类型为 ()?A.short B.int C.double D.float 8.设 a, b, x, y, z均为 int 型变量 ,并已赋值 ,下列表达式的结果属于非逻辑值的就是( ) A.xy & bx-y C.y = = +x D.y+x*x+ 9.下面语句输出的结果为 ( ) Syste 、out、println(52); A.6 B.7 C.10 D.25 10.对下面的语句执行完后正确的说法就是:( ) int c=c/3;System、out、println(c); A.输出结果为 21 B.输出结果为 22 C.输出结果为 32 D.输出结果为 33 11.以下选项中变量 a已定义类型 ,合法的赋值语句为 ( ) A.a = int(y); B.a= =1; C.a = a+1=3; D.+a; 12.执行下列程序段后 ,ch,x,y 的值正确的就是 :( ) int x=3, y=4; boolean ch; ch=xy&+x=-y; A.true , 6, 8 B.false , 6, 8 C.e, 7, 7 D.false, 7, 7 19、下列程序运行的结果就是。public class A public static void main(String args) int x = 7%3; while(x) x-; System 、out、println(x); A.0 B.1 C.true D.编译错误三、编程题1.使用 Math、pow()方法 ,求出 2 的 32 次方的值。专题 3 流程控制语句一、填空题1.在 switch 语句中的表达式的类型必须就是( )或者( )。2.break在循环语句中的作用就是()。3.分支语句包括 ()与()。4.while 循环语句的循环次数(),do-while 语句的循环次数 ( ),for 语句的循环次数()。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 4 页,共 19 页 - - - - - - - - - - Java 面向对象编程练习题二、选择题1.下面程序片段输出的就是什么() int a=3, b=1; if(a=b) Syste、out、println(“a=”+a);A.a=1 B.a=3 C.编译错误 ,没有输出D.正常运行 ,但没有输出2.下面语句执行后 ,x 的值为 ( ) int a=4, b=5, x=3; if(+a=b) x=x*a; A.3 B.12 C.15 D.20 3.请瞧下面的程序代码 : if(x0) Syste 、out、println(“first”);else if(x20) Syste、out、println(“second”);else Syste 、out、println(“third”);当程序输出 “second”时,x 的范围就是 ( B) A.x=0 B.x=0 C.x0 D.x=20 4.请瞧下面的程序代码 : switch(n) case 0: Syste 、out、println(“first”);case 1: case 2: Syste 、out、println(“second”); break;default: Syste 、out、println(“end”); 当 n 为何值时 ,程序段将输出字符串 ”second”( ) A. 0 B.1 C.2 D.以上都可以5.下列语句执行后 ,j 的值就是 () int j=3, i=3; while(-i!=i/j) j=j+2; A. 4 B.5 C.6 D.7 6.下列语句执行后 ,x 的值就是 () int x=2 ; dox+=x ; while(x-j) continue; while(i4); A. i=4, j=5 B.i=5,j=4 C.i=5,j=5 D.i=5,j=6 8.下列语句执行后 ,k 的值就是 ( ) int j=4, i, k=10; for(i=2; i!=j; i+) k=k-i; A. 4 B.5 C.6 D.7 9.下列语句执行后 ,c 的值就是 () char c= 0;for(c=a; c=e) break; A. e B.f C.g D.h10.若变量都已经正确说明 ,则以下程序段输出为 ( ) a=10; b=50; c=30; if(ab) a=b;b=c; c=a; System 、out、println(“a=”+a+” b=”+b+” c=”+c);A.a=10 b=50 c=10 B.a=10 b=30 c=10 C.a=50 b=30 c=10 D.a=50 b=30 c=3011.以下程序段输出就是 (D ) int x=1,y=0,a=0,b=0; i=(-a=b+)? - -a : +b; j=a+; k=b; System 、out、println(“i= ”+i+ ” ,j= ”+j+ ” ,k= ”+k);2 -1 2 A.i=2,j=1,k=3 B.i=1,j=1,k=2 C.i=4,j=2,k=4 D.i=2,j=-1,k=2 12.以下程序的输出就是 ( B ) int x=1,y=0,a=0,b=0; switch(x) case 1: switch(y) case 0: a+;break; case 1: b+;break; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 19 页 - - - - - - - - - - Java 面向对象编程练习题 case 2: a+;break; case 3: a+;b+; System 、out、println(“a=”+a+”,b= ”+b); 2 0 A.a=1, b=0 B.a=2,b=0 C.a=1, b=1 D.a=2, b=213.以下程序段输出就是 ( ) int i=0,j=0,a=6; if (+i0) | (+j0 ) a+ : System 、out、println(“i= ”+i+ ” ,j=”+j+ ” ,a= ”+a);A.i=0,j=0,a=6 B.i=1,j=1,a=7 C.i=1,j=0,a=7 D.i=0,j=1,a=7 14、下列程序运行的结果就是。public class A public static void main(String args) char c = d; for (int i = 1; i =0;i-) arri = 2*i+1; String output = 0; int sum = 0; for(int i=0;iarr 、length;i+) sum += arri; output += + + arri; output += = +sum; System 、out、println(output); System 、exit(0); 3、写出运行结果 :。public class Person String name;int age; public Person(String name,int age) this、name=name; this、age=age; public static void main(Stringargs) Person c=new Person(Peter,17); System 、out、println(c、name+ is +c、age+ years old!); 4、写出运行结果 :。public class abc public static void main(String args ) SubSubClass x = new SubSubClass(10 , 20 , 30); x、show(); class SuperClass int a,b; SuperClass(int aa , int bb) 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 16 页,共 19 页 - - - - - - - - - - Java 面向对象编程练习题a=aa; b=bb; void show( ) System 、out、println(a=+a+ b=+b); class SubClass extends SuperClass int c; SubClass(int aa,int bb,int cc) super(aa,bb); c=cc; class SubSubClass extends SubClass int a; SubSubClass(int aa,int bb,int cc) super(aa,bb,cc); a=aa+bb+cc; void show() System 、out、println(a=+a+ b=+b+ c=+c); 5.下面就是一个类的定义 ,请将其补充完整class _ String name; int age; Student(_ name, int a) _、name=name; age=a; 6.下面就是一个类的定义 ,请将其补充完整class _ String s; _ int a=3; A(String s) this、s=s; static int getA() return a; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 17 页,共 19 页 - - - - - - - - - - Java 面向对象编程练习题四、编程题1、编写一个 Java程序,并满足如下要求 : 1)编写一个 Car 类,具有 : 属性:品牌(mark)String 类型功能:驾驶(void drive( ) 2)定义 Car 类的子类 SubCar ,具有: 属性:价格(price)、速度 (speed) int 型功能:变速(void speedChange(int newSpeed), 把新速度赋给 speed 3)定义主类 E,在其 main 方法中创建 SubCar类的两个对象 :aodi 与 benchi的对象并测试其对象的特性。4)输出效果如下 : 2. 某公司正进行招聘工作, 被招聘人员需要填写个人信息, 编写“个人简历”的封装类。包括如下属性与对属性进行操作的方法。String xm;/ 姓名String xb;/ 性别int nl;/ 年龄String jtzz;/ 家庭住址String xl;/ 学历3. 编写程序 , 提供实现各种数学计算的方法。包括如下几项。(1) 两个数的加、减、乘、除。(2) 求某数的相反数、倒数、绝对值。(3) 取两数中较大的与较小的。(4) 对浮点数 (double型) 的计算功能。如: 给定浮点数d, 取大于或等于d 的最小整数 , 取小于或等于 d 的最大整数 , 计算最接近d 的整数值 , 计算 d 的平方根、自然对数log(d)等。(5) 计算以 double 型数 a 为底数 ,b 为指数的幂。4(选做 ). 定义一个人类 , 包括属性 : 姓名、性别、年龄、国籍; 包括方法 : 吃饭、睡觉 , 工作。(1) 根据人类 , 派生一个学生类, 增加属性 : 学校、学号 ; 重写工作方法 ( 学生的工作就是学习) 。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 18 页,共 19 页 - - - - - - - - - - Java 面向对象编程练习题(2) 根据人类 , 派生一个工人类, 增加属性 : 单位、 工龄 ; 重写工作方法 ( 工人的工作就是自己想吧 ) 。(3) 根据学生类 ,派生一个学生干部类, 增加属性 : 职务 ; 增加方法 : 开会。(4) 编写主函数分别对上述3 类具体人物进行测试。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 19 页,共 19 页 - - - - - - - - - -