JAVA基础第3章类与对象练习题_第1页
JAVA基础第3章类与对象练习题_第2页
JAVA基础第3章类与对象练习题_第3页
JAVA基础第3章类与对象练习题_第4页
JAVA基础第3章类与对象练习题_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第3章 类与对象一选择题1.下列不属于面向对象编程的特性是(D)。A封装性 B. 继承性 C. 多态性 D. 编译执行2.下列类的声明中不合法的是(C)。A. class People B. class 植物 C. Class A D. public class 共有类3.下列方法的声明中不合法的是(C)。A. float area() B. void area() C. double area(d) D. int area(int r)4. 下列构造方法(构造器)的调用中正确的是(C)。A. 按照一般的方法调用 B. 由用户直接调用 C. 只能通过new自动调用 D. 被系统调用5.下列程序

2、运行的结果是(A)。 class Bookint width;int length;public class Astatic void f(Book p)p.width=20;p.length=40;public static void main(String args)Book b=new Book();b.width=10;b.length=20;f(b);System.out.print( +b.width);System.out.print( +b.length);A. 20 40 B. 10 40 C. 10 20 D. 以上都不对6.下列程序运行的结果是(D)。public cla

3、ss A static void f(int y)y=y+10;public static void main(String args) double x=10; f(x); System.out.println(x);A. 10 B. 20 C. 10.0 D. 程序编译错误7.下列程序运行的结果是(C)。public class Aint z=20;static void f(int y)y=z;System.out.println(y);public static void main(String args) f(10);A. 10 B. 20 C. 程序编译错误 D. 以上都不对8.

4、以下代码的输出结果为(C)。public class Pass static int j=20; public static void main(String args) int i=10; Pass p = new Pass(); p.amethod(i); System.out.println(i+ and +j); public void amethod(int x) x=x*2; j=j*2; A错误: 方法参数与变量不匹配B. 20 and 40C. 10 and 40D. 10 and 209. 编译和运行程序会出现什么样的结果(A)。public class Ref public

5、 static void main(String args) Ref r = new Ref(); r.amethod(r); public void amethod(Ref r) int i=99; multi(r); System.out.println(i); public void multi(Ref r) r.i = r.i * 2; A编译出错 B. 输出:99 C. 输出:198 D. 运行出错10. 关于以下程序代码的说明正确的是(D)。1.class HasStatic2. static int x=100; int y=0;3. public static void mai

6、n(String args)4. HasStatic hs1=new HasStatic();5. hs1.x+;6. HasStatic hs2=new HasStatic();7. hs2.x+;8. hs1=new HasStatic();9. hs1.x+;10. HasStatic.x- -;11. System.out.println(x=+x);12. 13.A5行不能通过编译,因为引用了私有静态变量B10行不能通过编译,因为x是私有静态变量C程序通过编译,输出结果为:x=103 D程序通过编译,输出结果为:x=10211. 有如下代码:public class Test voi

7、d printValue(int m) do System.out.println(The value is+m); while( -m 10 ); public static void main(String arg) int i=10; Test t= new Test(); t.printValue(i); 其输出结果是什么(C)。A. The value is 8 B. The value is 9C. The value is 10 D. The value is 1112. 以下代码的调试结果为(D)。 1. public class Q21 2. 3. int maxElemen

8、ts; 4. 5. void Q21() 6. 7. maxElements = 100; 8. System.out.println(maxElements); 9. 10. 11. Q21(int i) 12. 13. maxElements = i; 14. System.out.println(maxElements); 15. 16. 17. public static void main(String args) 18. 19. Q21 a = new Q21(); 20. Q21 b = new Q21(999); 21. 22. A. 输出 100 和 999B输出 999 和

9、 100C第3行出现编译错误, 变量 maxElements 未初始化D. 第19行出现编译错误13. 给出如下类定义:public class test test(int k) 如果要创建一个该类的对象,正确的语句是(B)。A test obj1=new test(); B test obj1=new test(5);C test obj1=new test(5 ); D test obj1=new test(3.4);14. 指出下列哪个方法不能与方法public void add(int a)重载(A)。A. public int add(int b)B. public void add

10、(double b)C. public void add(int a, int b)D. public void add(float g)15.下面程序的输出结果是什么(C)。class J_Testint m_i = 2;String m_s = null;J_Test()m_i = 3;m_s = constructor;public static void main(String args)J_Test app = new J_Test();System.out.println(app.m_i+app.m_s);A. 2null B. 3null C. 3constructor D. 以

11、上都不对16. 下面程序的输出结果是什么(A)。class J_Testint m_i = 2;String m_s = null;void J_Test()m_i = 3;m_s = constructor;public static void main(String args)J_Test app = new J_Test();System.out.println(app.m_i+app.m_s);A. 2null B. 3null C. 3constructor D. 以上都不对17.下列代码的运行结果是(D)。public class J_Teststatic short m_inde

12、x;static int m_age;public static void mb_setData(long n)m_index = n;public static void main(String args)mb_setData(98);System.out.println(Index= + m_index + ;Age=+m_age);A. Index = 98;Age=0 B. Index = 0;Age=0C. Index = 0;Age=98 D. 以上都不对18.下列程序的运行结果为(B)。 public class J_Teststatic char m_name;static i

13、nt m_age;public static void mb_setData(char n)m_name = n;public static void mb_setData(int n)m_age = n;public static void main(String args)mb_setData(int)a);mb_setData(char)98);System.out.println(Name= + m_name + ;Age=+m_age);AName=98;Age=97 B. Name=b;Age=97 C. Name=97;Age=B D. 以上都不对19. 程序的运行结果为(A)。

14、 public class J_Teststatic short m_index;static int m_age;public static void mb_setData(short n)m_index = n;public static void mb_setData(int n)m_age = n;public static void main(String args)mb_setData(98);System.out.println(Index= + m_index + ;Age=+m_age);A. Index=0;Age=98 B. Index=98;Age=0C. Index=

15、0;Age=0 D. 以上都不对二编程题(温馨提示:编程时尽量不要使用中文标识符。)1. 编写一个Java应用程序,该程序中有3个类:Lader、Circle和主类A。具体要求如下:1)Lader类具有类型为double的上底、下底、高、面积属性,具有返回面积的功能,包括一个构造方法对上底、下底、高进行初始化。2)Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的功能,包括一个构造方法对半径进行初始化。3)创建主类,用来测试类Lader和类Circle的功能。1 class Lader double 上底, 下底, 高, 面积;Lader(double a, do

16、uble b, double h) 上底 = a;下底 = b;高 = h;double getArea()/将计算结果存放在对象的成员变量里面,且作为函数值返回。面积 = (上底 + 下底) * 高 / 2;return 面积;class Circle double 半径, 周长, 面积;Circle(double r) 半径 = r; double getLength() 周长 = 3.14 * 2 * 半径;return 周长; double getArea() 面积 = 3.14 * 半径 * 半径;return 面积;class One public static void main

17、(String args) Lader la = new Lader(3,4,2);/参数类型相同或相容la.getArea(); /必须先调用该方法,面积属性才有相应值。System.out.println(梯形的面积为: + la.面积);Circle cr = new Circle(1);System.out.println(圆的周长为: + cr.getLength();System.out.println(圆的面积为: + cr.getArea();2. 建立一个名叫Cat的类,具有属性:姓名、毛色、年龄;具有行为:显示姓名、喊叫。编写主类,在主类中创建一个对象猫,姓名为“妮妮”,毛

18、色为“灰色”,年龄为2岁,在屏幕上输出该对象的毛色和年龄,让该对象调用显示姓名和喊叫两个方法。2class Cat String name;String color;int age;void showName()System.out.println(name);void cry()System.out.println(喵喵);public class Two public static void main(String args) Cat c = new Cat();=妮妮;c.color=灰色;c.age=2;System.out.println(color = + c.colo

19、r);System.out.println(age = + c.age);c.showName();c.cry();3. 创建一个叫做People的类,具有属性:姓名、年龄、性别、身高;具有行为:说话、计算加法、改名;还有能为所有属性赋值的构造方法。创建主类,在主类中创建一个对象:名叫“张三”,性别“男”,年龄18岁,身高1.80;让该对象调用成员方法:说出“你好!”,计算23+45的值,并将名字改为“李四”。3. class People String name;int age;char sex;float height;People(String n, int a, char s, flo

20、at h)name = n;age = a;sex = s;height = h;void speak(String s)System.out.println(s);double add(double x, double y)return x+y;void rename(String m)name = m;public class Three public static void main(String args) People zhang3 = new People(张三,18,男,1.80f);zhang3.speak(你好!);System.out.println(23+45= + zh

21、ang3.add(23,45);zhang3.rename(李四);System.out.println();4. 创建一个叫做机动车的类:属性:车牌号(String),车速(int),载重量(double)。功能:加速(车速自增)、减速(车速自减)、修改车牌号,查询车的载重量。编写两个构造方法:一个没有形参,在方法中将车牌号设置“XX1234”,速度设置为100,载重量设置为100;另一个能为对象的所有属性赋值。创建主类:创建两个机动车对象。创建第一个时调用无参数的构造方法,调用成员方法使其车牌为“辽A9752”,并让其加速。创建第二个时调用有参数的构造方法,使其车牌为

22、“辽B5086”,车速为150,载重为200,并让其减速。输出两辆车的所有信息。4. class VehicleString id;int speed;double load;void upSpeed()+speed;void downSpeed()-speed;void idChanging(String i)id = i;double showLoad()return load;Vehicle()id = XX1234;speed = 100;load = 100;Vehicle(String i, int s, double l)id = i;speed = s;load = l;pub

23、lic class Four public static void main(String args) Vehicle v1 = new Vehicle();v1.idChanging(辽A9752);v1.upSpeed();Vehicle v2 = new Vehicle(辽B5086,150,200);v2.downSpeed();System.out.println(v1.id+,+v1.speed+,+v1.load);System.out.println(v2.id+,+v2.speed+,+v2.load);5. 创建一个point类,有成员变量x、y,方法getX()、setX

24、(),还有一个构造方法用于初始化x和y。创建主类来测试它。5. class Point double x,y;Point(double x, double y)this.x=x;this.y=y;public double getX() return x;public void setX(double x) this.x = x;public class Five public static void main(String args) Point p = new Point(1,2);p.setX(3);System.out.println(p.getX();6. 创建一个三角形类,有成员变

25、量三条边,有方法求周长,创建主类来测试它。6. class Triangledouble a,b,c;double getLength()return a+b+c;public class Six public static void main(String args) Triangle t = new Triangle();t.a = 2;t.b = 3;t.c = 4;System.out.println(周长= + t.getLength();7. 编写Java应用程序。首先,定义一个Print类,它有一个方法void output(int x),1)如果x的值是1,在控制台打印出大写的

26、英文字母;2)如果x的值是2,在控制台打印出小写的英文字母。其次,再定义一个主类,在主类的main方法中创建Print类的对象,使用这个对象调用方法output ()来打印出大小写英文字母。7. class Printvoid output(int x)char c;if (x=1)for(c=A;c=Z;c+)System.out.print(c);if (x=2)for(c=a;c=z;c+)System.out.print(c);System.out.println();public class Seven public static void main(String args) Pri

27、nt p = new Print();p.output(1);p.output(2);8. 编写Java应用程序。首先定义一个描述银行账户的Account类,包括成员变量“账号” 和“存款余额”,成员方法有“存款”、“取款”和“余额查询”。其次,编写一个主类,在主类中测试Account类的功能。class Account String id;double money;void save(double x) money = money + x;void get(double y) money = money - y; void select() System.out.println(余额= + money); public class Eight public static void main(String args) Account kaien = new Account();kaien.save(10000); kaien.get(200); kaien.select();9. 编写Java应用程序。首先,定义一个时钟类Clock,它包括三个int型成员变量分别表示时、分、秒,一个构造方法用于对三个成员变量(时、分、秒)进行初始化,还有一个成员方法show()用于显示时钟对象的时间。其次,再定义一个主类,在主类的main

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论