2-java面向对象练习题

合集下载

java 面向对象 练习题

java 面向对象 练习题

java 面向对象练习题Java面向对象练习题1. 场景描述:小明是一名学生,他参加了一场Java编程的培训。

在课堂上,老师出了一些面向对象的练习题,希望学生能够通过练习加深对Java面向对象的理解。

2. 第一题:设计一个名为"Person"的类,该类包括以下数据成员:- 姓名(name)- 年龄(age)- 性别(gender)并且提供以下方法:- 构造方法(带参数初始化所有数据成员)- getter和setter方法- 显示个人信息的方法(输出姓名、年龄和性别)编写测试类,创建两个Person对象并设置相关属性后,分别通过调用显示个人信息的方法来展示它们的信息。

3. 第二题:设计一个名为"Student"的类,该类继承自Person类,并且新增以下数据成员:- 学号(studentID)- 成绩(score)其中,学号和成绩均为整型数据。

并且提供以下方法:- 构造方法(带参数初始化所有数据成员)- getter和setter方法- 重写父类的显示个人信息的方法,包括学号和成绩的输出编写测试类,创建一个Student对象并设置相关属性后,通过调用显示个人信息的方法展示其信息。

4. 第三题:设计一个名为"Teacher"的类,该类继承自Person类,并且新增以下数据成员:- 工号(teacherID)- 工龄(workingYears)其中,工号为字符串类型,工龄为整型数据。

并且提供以下方法:- 构造方法(带参数初始化所有数据成员)- getter和setter方法- 重写父类的显示个人信息的方法,包括工号和工龄的输出编写测试类,创建一个Teacher对象并设置相关属性后,通过调用显示个人信息的方法展示其信息。

5. 第四题:设计一个名为"Shape"的抽象类,该类包括以下数据成员:- 形状名称(name)并且提供以下方法:- 构造方法(带参数初始化形状名称)- 抽象方法"calculateArea",用于计算形状的面积设计并实现两个继承自Shape类的具体子类:- 圆形类(Circle):新增数据成员半径(radius),重写calculateArea方法来计算圆形的面积(3.14 * 半径 * 半径)- 矩形类(Rectangle):新增数据成员长度(length)和宽度(width),重写calculateArea方法来计算矩形的面积(长度 * 宽度)编写测试类,创建一个Circle对象和一个Rectangle对象并设置相关属性后,分别调用calculateArea方法来计算它们的面积,并输出结果。

java面向对象习题二

java面向对象习题二

《JAVA面向对象程序设计》试题与解析库1)在JAVA编程中,关于Font下列()是正确的。

(选择两项)a)在我们的程序中可以使用Font类中定义的字体常量。

b)我们可以使用Tookit类中的函数来获取我们的机器中java所支持的字体的列表c)我们可以自己创建字体实例对象d)以上说明都正确【解析】参考答案:A BFont属于java.awt包中的一个类,专门用来设置程序中的字体实例对象。

创建Font类的对象时使用的方法:getFont(int face,int style,int size);例如:Font font = Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font. SIZE_MEDIUM);无论哪一个参数,都只能使用系统设置的数值,这些数值具体的大小在不同的手机上可能不同。

下面对于其中的三个参数的取值做详细的介绍:face参数指字体的外观;style参数指字体的样式;size参数指字体的大小。

这三个参数都是系统中定义好的一些常量。

获得系统的默认字体:Font font = Font.getDefaultFont();ToolKit类是 Abstract Window Toolkit 的所有实际实现的抽象父类。

Toolkit 用于把各种组件绑定到特定的本地工具箱实现上。

该类有个方法getFontList()用于返回该工具箱中可用字体名。

也就是可以获取机器中java所支持的字体的列表。

2)在Java语言中,在包Package1中包含包Package2,类Class_A直接隶属于包Package1,类Class_B直接隶属于包Package2。

在类Class_C要应用Class_A的方法A和Class_B 的方法B,你需要()语句。

(选择两项)a)import Package1.*;b)import Package1.Package2.*;c)import Package2.*d)import Package2.Package1.*;【解析】A BJava语言中的包机制就像Windows中的文件夹,用来归类类文件的位置。

java面向对象练习题

java面向对象练习题

java面向对象练习题# Java面向对象练习题一、选择题1. 在Java中,以下哪个关键字用于定义类的访问权限为“仅包内可见”?- A. public- B. private- C. protected- D. 默认(不写访问修饰符)2. 以下哪个是Java中的构造方法?- A. 与类名相同,没有返回类型的方法- B. 与类名不同,没有返回类型的方法- C. 与类名相同,有返回类型的方法- D. 与类名不同,有返回类型的方法3. 在Java中,哪个关键字用于实现类的继承?- A. extends- B. implements- C. override- D. abstract4. 以下哪个是Java中类的成员变量?- A. 局部变量- B. 实例变量- C. 静态变量- D. 方法参数5. 以下哪个是Java中的多态性?- A. 接口- B. 继承- C. 封装- D. 抽象类二、简答题1. 解释Java中的封装性,并给出一个封装的类的例子。

2. 描述Java中接口和抽象类的区别。

3. 什么是Java中的继承?请举例说明如何使用继承。

三、编程题1. 创建一个名为`Person`的类,包含姓名(name)、年龄(age)和性别(gender)三个属性。

为每个属性提供getter和setter方法。

2. 编写一个名为`Student`的类,它继承自`Person`类,并添加一个名为`studentID`的属性。

为`studentID`提供getter和setter方法,并重写`toString`方法以返回学生的详细信息。

3. 创建一个接口`Movable`,包含一个方法`move()`。

然后创建一个名为`Car`的类实现该接口,并提供`move`方法的具体实现。

四、综合应用题1. 设计一个简单的银行账户系统,包含以下类:- `Account`:基本账户类,包含账户ID、账户余额和存款(deposit)与取款(withdraw)方法。

2.Java面向对象知识测试 - 含答案

2.Java面向对象知识测试 - 含答案

单选题:(每道题目2分)1:下列有关类、对象和实例的叙述,正确的是哪一项?()A.类就是对象,对象就是类,实例是对象的另一个名称,三者没有差别B.对象是类的抽象,类是对象的具体化,实例是对象的另一个名称C.类是对象的抽象,对象是类的具体化,实例是类的另一个名称D.类是对象的抽象,对象是类的具体化,实例是对象的另一个名称2:类Student中成员变量声明正确的是哪一项? ()A.class Student{name;age;}B.class Student{String name = 1.0;int age = “26”;}C.class Student{String name;int age;}D.class Student{String name,int age;}3:类Student中成员方法声明正确是哪一项?()A:class Student{public show(){}}B:class Student{public void show();}C:class Student{public void show(){}}D:class Student{show(){}}4:类Student中构造方法声明正确的是哪一项? () A:class Student{public Student()}B:class Student{public Student(){}}C:class Student{public void Student(){}}D:class Student{new Student(){}}5:下列哪一项不是面向对象的三大特征之一? ()A:封装B:抽象C:继承D:多态6:下列关于封装说法不正确的是?()A:封装可以提高代码的安全性。

B:封装是指隐藏实现细节,提高公共的访问方式。

C:类或者方法也是封装的一种体现。

D:仅仅private修饰的内容才是封装的体现。

7:下列哪个方法和int sum(int a,int b)是重写方法?() A:public void sum(int a,int b)B:public int sum(int a,int b)C:int sum(int a,int b,int c)D:void sum(int c,int b)8:下列程序的运行结果是:()class Test{private static int x = 10;public void show(int x){x++;System.out.println(x);}public static void main(String[] args){int x = 20; //局部变量覆盖成员变量Test t = new Test();t.show(x);}}A:10B:21C:11D:209:在子类中调用父类中被重写的方法时需要使用哪个关键字?() A.thisB.newC.superD.以上都不是10:如果想一个类不能被子类继承的话,用下列哪个修饰符? () A:staticB:abstractC:privateD:final11:有如下两个类,在main方法中下面哪个做法是错误的?() class Animal{}class Dog extends Animal{}A:Animal a = new Animal();B:Dog d = new Dog();C: Animal a = new Dog();D:Dog d = new Animal();12:下列有关抽象类的叙述正确的是哪项?() A:抽象类中一定含有抽象方法B:抽象类既能被实例化也能被继承C:抽象类的声明必须包含abstract关键字D:抽象类中不能有构造方法13:下列有关接口的叙述错误的是哪项?() A:接口中只能包含抽象方法和常量B:一个类可以实现多个接口C:具体类实现接口时必须实现其中的方法D:接口不能被继承14:下列程序的运行结果是:()class Fu{public int num = 10;}class Zi extends Fu{public int num = 20;}class Testpublic static void main(String[] args) {Fu f = new Zi();System.out.println(f.num);Zi z = (Zi)f;System.out.println(z.num);}}A:10,10B:20,20C:10,20D:20,1015:下列程序的运行结果是:()class Fu{public void show(){System.out.println("fu show");}}class Zi extends Fu{public void show(){System.out.println("zi show");}public void method(){System.out.println("zi method");}}class Test{public static void main(String[] args){Fu f = new Zi();f.method();}}A:fu showB:zi showC:编译报错D:zi method16:关于代码块说法错误的是?()A:静态代码块在类加载的时候执行一次,在创建对象的时候不在执行了。

java面向对象试题及答案

java面向对象试题及答案

java面向对象试题及答案1. 试题一题目:什么是面向对象编程?请简要描述面向对象编程的优势和特点。

答案:面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,将程序中的数据和操作数据的方法进行了封装,使得程序更加模块化和易于理解。

面向对象编程的主要特点包括封装、继承和多态。

封装使得数据和对数据的操作集中在一个对象中,可以隐藏内部实现细节,提供公共的接口进行访问,增加了程序的安全性和灵活性。

继承允许新建的类继承已有类的属性和方法,通过扩展和重写已有类的功能,减少了代码的重复性,提高了代码的复用和可维护性。

多态允许不同的对象对相同的消息作出不同的响应,通过接口和抽象类的使用,实现了更加灵活和可扩展的程序设计。

面向对象编程的优势包括了代码的重用性、可维护性、可扩展性和灵活性。

通过封装和继承的应用,可以减少代码重复,提高开发效率,并且通过多态的应用,可以实现程序的灵活性,方便后续的扩展和修改。

2. 试题二题目:什么是类?请简要描述类的特点和组成部分。

答案:类是面向对象编程中的核心概念,是对一类具有相同属性和行为的对象进行抽象和封装的模板。

类是用来创建对象的蓝图,可以通过实例化类来创建对象。

类的特点包括了封装、继承和多态。

类通过封装将属性和方法进行了封装,提供了公共的接口与外部进行交互,隐藏了内部实现细节。

继承允许新建的类继承已有类的属性和方法,在原有基础上进行修改和扩展。

多态允许不同的对象对相同的消息作出不同的响应,实现了程序的灵活性和可扩展性。

类的组成部分包括了属性(Field)和方法(Method)。

属性(也称为成员变量)用于描述对象的状态,可以是基本类型或其他类的对象。

方法用于描述对象的行为,可以是处理属性的操作,也可以是其他业务逻辑的实现。

3. 试题三题目:请简要解释传值和传引用的区别,并用代码示例说明。

答案:传值和传引用是在方法调用时,参数传递的两种方式。

2Java面向对象知识测试(答案版).docx

2Java面向对象知识测试(答案版).docx

面向对象部分测试题考试宣言:同学们,考试考多少分不是我们的目的!排在班级多少的名次也不是我们的初衷!我们考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了,那么不用怕,考完试后,导师讲解的时候你要注意听!那时候学会了,记住了,也一样不影响你高薪就业!本套题共40道不定项选择题,其中单选30道,多选10道。

单选2 分/题,多选4分/题。

多选题不全对半分,全对满分。

1.下面描述函数重写错误的是(C)A.要有子类继承或实现B・子类方法的权限必须大于等于父类的权限C・父类中被private权限修饰的方法可以被子类重写D・了类重写接口屮的抽象方法,了类的方法权限必须是public的2.下列说法哪个正确?(a b c)A.—个程序可以包含多个源文件B.—个源文件中只能有一个公共类C.一个源文件屮可以有多个类D・一个源文件只能供一个程序使用3.下而关于类的设计思路描述错误的是(be)A.根据需求写出类所包含的字段(成员变量)B.根据面向对象的思想要求,所有的字段都必须私有化C.封装之后的字段在木类内也必须使用get/set方法D.按需求可添加若T•构造方法4・关于封装下面介绍错误的是(d )oA.封装将变化隔离B.封装提高重用性。

C.封装捉髙安全性D .只有被private修饰才叫做封装5・试图编译运行下面的代码会发生什么情况(d) public class MyClass{ static int i;public static void main(String[] args){System.out ・ printIn (i);)}A・错误,变量i没冇被初始化B.输出null.C・输出1D・输出06・下面対static的描述错误的是bA.静态修饰的成员变量和成员方法随着类的加载而加载B・静态修饰的成员方法可以访问非i挣态成员变虽C・静态修饰的成员可以被整个类对象所共享D・静态修饰的成员变量和成员方法随着类的消失而消失7.在Java中,下面对于构造函数的描述正确的是(d )。

2Java第二单元练习题-面向对象程序设计基础Word版

2面向对象程序设计基础2.1单项选择题1.下面关于类的继承性的描述中,错误的是()。

A.继承是在已有的基础上生成新类的一种方法B.Java语言要求一个子类只有一个父类C.父类中成员的访问权限在子类中将被改变D.子类继承父类的所有成员,但不包括私有的成员方法2.在成员方法的访问控制修饰符中,规定访问权限包含该类自身,同包的其他类和其他包的该类子类的修饰符是()。

A.默认B.protected C.private D.public3.在类的修饰符中,规定只能被同一包类所使用的修饰符是()。

A.public B.默认C.final D.abstract4.下列关于子类继承父类的成员描述中,错误的是()。

A.当子类中出现成员方法头与父类方法头相同的方法时,子类成员方法覆盖父类中的成员方法。

B.方法重载是编译时处理的,而方法覆盖是在运行时处理的。

C.子类中继承父类中的所有成员都可以访问。

D.子类中定义有与父类同名变量时,在子类继承父类的操作中,使用继承父类的变量;子类执行自己的操作中,使用自己定义的变量。

5.下列关于继承性的描述中,错误的是()。

A.一个类可以同时生成多个子类B.子类继承了父类中除私有的成员以外的其他成员C.Java支持单重继承和多重继承D.Java通过接口可使子类使用多个父类的成员6.下列关于抽象类的描述中,错误的是()。

A.抽象类是用修饰符abstract说明的 B.抽象类是不可以定义对象的C.抽象类是不可以有构造方法的D.抽象类通常要有它的子类7.下列关于构造方法的叙述中,错误的是()。

A.构造方法名与类名必须相同B.构造方法没有返回值,且不用void声明C.构造方法只能通过new自动调用D.构造方法不可以重载,但可以继承8.下面叙述中,错误的是()。

A.子类继承父类B.子类能替代父类C.父类包含子类D.父类不能替代子类9.下面关于接口的描述中,错误的是()。

A.一个类只允许继承一个接口B.定义接口使用的关键字是interfaceC.在继承接口的类中通常要给出接口中定义的抽象方法的具体实现D.接口实际上是由常量和抽象方法构成的特殊类10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?()A.ArrayList myList=new Object(); B.ArrayList myList=new List();C.List myList=new ArrayList(); D.List myList=new List();11.下列哪一个方法与方法public void add(int a){}为不合理的重载方法?()A.public void add(char a) B.public int add(int a)C.public void add(int a,int b) D.public void add(float a)12.MAX_LENGTH是int型public成员变量,变量值保持为常量100,其定义是()。

JAVA面向对象程序设计(期末考试试题及答案)

JAVA面向对象程序设计(期末考试试题及答案)一、选择题(每题5分,共30分)1. 下列哪个不是Java基本数据类型?A. intB. charC. StringD. boolean答案:C2. 下列哪个操作符用于取模?A. %B. /C.D. &答案:A3. 下列哪个关键字用于定义接口?A. classB. interfaceC. extendsD. implements答案:B4. Java中,下列哪个方法可以实现字符串的截取?A. substring(int start, int end)B. substring(int start, int length)C. substring(int index)D. substring(int index, int length)答案:A5. 下列哪个方法用于判断字符串是否为空?A. isEmpty()B. isBlank()C. isEmptyD. isNull()答案:B6. 下列哪个方法用于获取字符串长度?A. length()B. lengthC. size()D. getSize()答案:A二、填空题(每题5分,共30分)1. 在Java中,所有的类都是_______类的子类。

答案:Object2. Java中定义接口时,需要使用_______关键字。

答案:interface3. 在Java中,定义抽象类时需要使用_______关键字。

答案:abstract4. Java中,字符串比较可以使用_______方法。

答案:equals()5. 在Java中,若要实现字符串的翻转,可以使用_______类。

答案:StringBuilder6. 下列哪个方法用于判断字符串是否以指定的字符串开头?答案:startsWith(String prefix)三、编程题(共40分)1. 编写一个Java程序,实现一个简单的计算器功能,包括加、减、乘、除四种运算。

Java面向对象(二)习题

1、Java中用于定义接口的关键字是()A、importB、packageC、classD、interface2、以下关于abstract的说法,正确的是( )A、abstract只能修饰类B、abstract只能修饰方法C、abstract类中必须有abstract方法D、abstarct方法所在的类必须用abstract修饰3、下列哪种说法是正确的()A、私有方法不能被子类覆盖。

B、子类可以覆盖超类中的任何方法。

C、覆盖方法可以声明自己抛出的异常多于那个被覆盖的方法。

D、覆盖方法中的参数清单必须是被覆盖方法参数清单的子集。

4、关于类继承的说法,正确的是()A、Java 类允许多重继承B、Java接口允许多继承C、接口和类都允许多继承D、接口和类都不允许多继承5、关于抽象类,正确的是______。

A. 抽象类中不可以有非抽象方法B. 某个非抽象类的父类是抽象类,则这个子类必须重载父类的所有抽象方法C. 不能用抽象类去创建对象D. 接口和抽象类是同一个概念6、下列哪个类是由编译器自动生成对象的特殊类,是用于类操作?()A、Class类B、Thread类C、System类D、Object类7、下面关于继承的哪些叙述是正确的。

( )A、在java中只允许单一继承。

B、在java中一个类只能实现一个接口。

C、在java中一个类不能同时继承一个类和实现一个接口。

D、java的单一继承使代码更可靠。

8、抽象类A和抽象类B的定义如下:abstract class ex4_5_10_A {abstract int getinfo();}public class ex4_5_10 extends ex4_5_10_A {private int a = 0;public int getinfo() {return a;}public static void main(String args[]) {ex4_5_10 b = new ex4_5_10();System.out.println(b.getinfo());}}关于上述代码说明正确的是()。

Java面向对象程序设计模拟试题2及答案

Java面向对象程序设计模拟试题2一、单项选择题(本大题共15小题,每小题1分,共15分)1. JVM是指A. Java开发工具B. Java虚拟机C. Java运行环境D. Java编程接口2. Java字节码文件的扩展名是A. cB. exeC. javaD. class3. 在Java中,byte型变量所占的字节数是A. 1B. 2C. 4D. 84. 给定下面代码段,输出j的值是多少int i = 1, j = 0 ;switch(i) {case 1: j += 6;case 2: j += 1;default: j += 2;}System.out.println(j);A. 2B. 6C. 7D. 95. 给定下面代码段,程序运行结果是public class Test {static void leftshift(int i, int j){i <<= j;}public static void main(String[] args){int i = 4, j = 2;leftshift(i,j);System.out.println("i = "+ i);}}A. i = 1B. i = 2C. i = 3D. i = 46. 执行下列程序段后a和b的值为class AB{int a , b ;public void init(int x){a = x ;int b = 5 ;}public void display(){System.out.println("a = "+a+" b = "+b);}}public class ABTest{public static void main(String[] args){AB ab = new AB();ab.init(6);ab.display() ;}}A. a = 5 b = 5B. a = 0 b = 0C. a = 6 b = 5D. a = 6 b = 07. 下列程序段的运行结果为int [][]x ={{1,2},{3,4,5},{6,7,8,9}};int[][]y = x;System.out.println(y[2][1]);A. 3B. 4C. 6D. 78. 执行下列语句后输出的结果是String s = "COMPUTER";System.out.println(s.indexOf(‘M’));A. 0B. 1C. 2D. 39. 下面程序运行结果为class AA{AA(int a){System.out.print(a);}}class BB extends AA{BB(String s){super(88);System.out.print(s);}}public class ConstructorDemo{public static void main(String[] args){BB b = new BB("hello");}}A. 该程序有编译错误B. 88helloC. hello88D. hello10. 下面程序运行结果为class Super{public int i = 0;public Super(String text){i = 1;}}public class Sub extends Super{public Sub(String text){super(“”);i = 2;}public static void main(String[] args){Sub sub = new Sub("Hello");System.out.println(sub.i);}}A. 该程序有编译错误B. 编译成功输出0C. 编译成功输出1D. 编译成功输出211.下面代码在运行时会产生什么异常int m = 100;System.out.println(m / 0);A. ClassNotFoundExceptionB. MathExceptionC. ArithmeticExceptionD. NullPointerException12.有下列一段代码,执行后输出结果为。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

简答题:1 oop概念2 oop的三大特性3 描述面向对象封装和抽象4 通过什么样的代码可以创建出一个对象?5 对象怎么样调用类里面的属性和方法6 如果一个类的属性被私有化了,我们一般怎样给其属性赋值和得到其属性7 一个类的构造方法在什么时候被调用?8 说说方法的重载?9 请描述下this和static10 说说继承有什么样的作用?编码题1.写一个Rect类,要求如下:1)该类中的私有数据成员length,width存放它的长和宽,并且设置它们的默认值是0;2)通过求周长的方法计算出这个Rect周长。

2.写一个员工类,属性:员工编号、姓名、职位、基本工资,类变量员工编号最大值(或最后一个员工的编号),每次新建员工对象时,为其分配编号,编号等于编号最大值加1。

要求可以取得一个员工的完整信息,也可以求出一个员工的月薪和年薪等信息。

3.设计一个形状类,方法:求周长和求面积形状类的子类:Rect(矩形),Circle(圆形)Rect类的子类:Square(正方形)不同的子类会有不同的计算周长和面积的方法创建三个不同的形状对象,放在Shape类型的数组里,分别打印出每个对象的周长和面积4.某公司的雇员分为以下若干类:Employee:这是所有员工总的父类,属性:员工的姓名,员工的生日月份。

方法:getSalary(int month) 根据参数月份来确定工资,如果该月员工过生日,则公司会额外奖励100元。

SalariedEmployee:Employee的子类,拿固定工资的员工。

属性:月薪HourlyEmployee:Employee的子类,按小时拿工资的员工,每月工作超出160小时的部分按照1.5倍工资发放。

属性:每小时的工资、每月工作的小时数SalesEmployee:Employee的子类,销售人员,工资由月销售额和提成率决定。

属性:月销售额、提成率BasePlusSalesEmployee:SalesEmployee的子类,有固定底薪的销售人员,工资由底薪加上销售提成部分。

属性:底薪。

写一个程序,把若干各种类型的员工放在一个Employee数组里,写一个函数,打印出某月每个员工的工资数额。

注意:要求把每个类都做成完全封装,不允许非私有化属性。

5.编写一个课程类 Course,包含:3个成员变量:课程编号(cNumber)、课程(cName)和学分数(cUnit)1个方法printCourseInfo:用于输出课程的相关信息1)编写Course类的测试程序,创建课程对象:编号为112101,课程名为Java程序设计,学分为3,要求输出课程的相关信息。

2)将上题创建的Course类添加构造方法,用于初始化课程编号、课程名和学分,并修改测试程序。

6、编写一个Animal类,包含属性:private String type;动物的类型构造器:用于初始化所有属性方法:public String toString()//返回动物类型的信息编写一个FlyAble接口,包含:方法:double flySpeed();//用于返回最大的飞行速度编写Glede(老鹰)和Pigeon(鸽子)类,分别继承Animal类实现FlyAble接口编写测试类,打印输出老鹰和鸽子的叫声信息和最大飞行速度。

7.请定义一个交通工具类(Vehicle)的类,其中有:属性:速度(speed),体积(size)等等方法:移动(move()),设置速度setSpeed(int speed)),加速speedUp(),减速speedDown()等等。

最后在测试类Vehicle中的main()方法中实例化一个交通工具对象,并通过方法给它初始化speed,size的值,并且通过打印出来。

另外,调用加速,减速的方法对速度进行改变。

8.编写java程序,模拟简单的计算器定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有。

编写构造方法,赋予n1和n2初始值,再为该类定义加(add),减(sub),乘(mul),除(div)等公有成员方法,分别对两个成员变量执行加、减、乘、除的运算。

在main方法中创建Number类的对象,调用各个方法,并显示计算结果。

9.创建一个类,为该类定义三个构造函数,分别执行下列操作:1、传递两个整数值并找出其中较大的一个值2、传递三个double值并求出其乘积3、传递两个字符串值并检查其是否相同4、在main方法中测试构造函数的调用10、定义一个人类(抽象类),包括属性:姓名、性别、年龄、国籍:包括方法:吃饭、睡觉、工作。

1)根据人类,派生一个学生类,增加属性:学校、学号:重写工作方法(学生的工作是学习)2)根据人类,派生出一个工人类,增加属性:工龄:重写工作方法3)根据学生类,派生出一个学生干部类,职务:增加方法:开会4)编写主函数分别对上述3类具体人物进行测试。

11、创建一个名称为Vehicle的接口,在接口中添加两个方法start()和stop()。

在两个名称分别为Bike和Bus的类中实现Vehicle接口。

创建一个名称为interfaceDemo的类,在interfaceDemo的main()方法中创建Bike和Bus对象,并访问start()和stop()方法。

12、编写一个java程序,并满足如下要求:1)编写一个Car类,具有:属性:品牌(mark)---String类型功能:驾驶(void drive())2)定义Car类的子类SubCar,具有:属性:价格(price)、速度(speed)--int 型功能:变速(void speedChange(int newSpeed)),把新速度赋给speed定义主类E,在其main方法中创建SubCar类的两个对象:aodi和benchi对象并测试其对象和特性。

===类和对象定义一个人类,包括姓名、性别、年龄等信息。

所有的变量必须私有,其它类只能通过该类的方法获取和修改。

实例化一个人类,试着通过该类的方法修改实例化的人的信息。

添加过个构造函数,可以用姓名构造一个人,也可以用姓名、性别构造一个人创建一个汽车类(Car),为其定义两个属性:颜色和型号,为该类创造两个构造方法:第一个为无形参的构造方法,利用其中方法将颜色和型号设置为红色、轿车第二个为带参构造方法,利用构造方法将颜色和型号设置为用户输入数据再为该类创建两个方法,分别用来显示颜色和型号定义一个“点”(point)类用来表示三维空间中的点(有三个坐标)。

要求如下:1、可以生成具有特定坐标的点对象2、提供可以设置三个坐标的方法3、提供可以计算该“点”距离原点距离平方的方法4、编写程序验证上述三条(Point3D.java)构造一个日期类,包含年、月、日的属性和以下构造函数:1、不带参数2、包含年月日三个参数并提供存取日期的方法,实例化一个该类后,输入一个日期,可以计算出该日期是当你的第几天,要求计算天数的方法由日期类提供,可直接通过该类的实例去调用继承人类编写一个学生类,测试继承过来的属性和方法,并提供其它构造函数,并做如下实验:1、使用人类的构造函数参数格式去实例化一个学生2、删除人类中不带参数的构造函数,观察学生类还能不能使用,思考下如果人类只有带参的构造函数,学生类该如何继承人来3、在学生类的构造函数中调用人类的构造函数4、在学生类的构造函数中先写一行代码,再去调用人类的构造函数5、在学生类的某一个构造函数里同时去调用学生类与人类的构造函数书面:一个类中的构造函数能被该类中的其他方法调用吗?能被其它的构造函数调用吗?如果能,该如何调用?如果两个类存在继承关系,父类没有不带参数的构造函数,子类可以不写构造函数吗?为什么?写出修饰符public、protected、缺省、private的权限访问范围分析TestCircle.java的输出结果==继承编写学生类(class student)继承人类(class preson)的程序,要求父类的构造函数为(preson(string name),子类的构造函数要调用父类的构造函数.p()方法用于输出该对象的信息(如The person's name is Zhangheng),学生类有study()方法,并分别创建一个对象并调用各个方法(1)封装一个People类型,具有height和weight属性,具有speakHello、averageHeight、averageWeight功能。

(2)封装一类ChinaPeople类型是People的子类,新增chinaMartial功能,override 父类的speakHello、averageHeight、averageWeight功能。

(3)封装一类AmericanPeople类型是People的子类,新增AmericanBoxing功能,override父类的speakHello、averageHeight、averageWeight功能。

(4)封装一类BeijingPeople类型是ChinaPeople的子类,新增BeijingOpera功能,override父类的speakHello、averageHeight、averageWeight功能。

(5)用一个程序执行入口Test测试上述对象修改人类,增加一个静态的属性和两个静态方法,并作如下测试:1、在静态方法中分别访问该类的静态与非静态属性2、在静态方法中分别访问该类的静态与非静态方法3、在非静态方法分别方位该类的静态属性与方法4、在测试类的main方法直接去引用该类的属性与方法,看能使用哪些属性与方法5、实例化一个该类,看海能不能通过该类的对象对访问它的静态方法6、实例化两个该类的对象,通过一个对象将该类的静态属性改变,看另一个对象的该属性有没有改变修改人类,在其中增加一个输出该人信息的方法printInfo(),修改学生类,包含学号属性格式为:前四位代表入学日期后四位是学生的编号,覆盖人类printInfo()方法,并提供一个自己的方法getInDate(String id)能通过学号返回该生的入学日期。

并做如下测试:1、实例化一个人类,调用其printInfo()方法2、实例化一个学生类,调用其printInfo()方法3、再将学生类赋值给人类的对象(如Person p = new Student),再次调用printInfo()方法,观察其输出。

看它还能不能调用getInDate()方法,如果想使用该怎么办?编写三个系别的学生类:英语系、计算机系、文学系(要求通过继承学生类)各系都有以下成绩:英语系:演讲、期末考试、期中考试计算机系:操作能力,英语写作,期中考试、期末考试文学系:演讲、作业、期中考试、期末考试各系总分评测标准:英语系:演讲 50%期中考试 25%期末考试 25%计算机系:操作能力 40%英语写作 20%期中考试 20%期末考试 20%文学系:演讲 30%作品 35%期中考试 15%期末考试 15%定义一个可以容纳5个学生的学生类数组,使用随机数给该数组装入各系学生的对象,然后按照如下格式输出数组中的信息:学号:xxxx 姓名:xxx 性别:xx 年龄:xxx 综合成绩:xxxx。

相关文档
最新文档