《Java基础入门》_课后习题答案大一计算机专业4

《Java基础入门》_课后习题答案大一计算机专业4


2024年1月13日发(作者:)

《Java基础入门》课后习题答案

第4章面向对象(下)

一、填空题

1、一个类如果实现一个接口,那么它就需要实现接口中定义的全部 方法,否则该类就必须定义成 抽象类。

2、一个类可以从其他的类派生出来。派生出来的类称为 子类、用于派生的类称为 父类 或者 基类。

3、定义一个 Java 类时。如果前面加使用final 关键词修饰,那么该类不可以被继承。

4、在Java语言中,所有的类都直接或间接继承自Object 类

5、一个 Lambda 表达式由三个部分组成,分别为 参数列表、“->”、表达式主体

二、判断题

1、错 2、对 3、错 4、对 5、错

1.抽象方法必须定义在抽象类中,所以抽象类中的方法都是抽象方法。(×)

2. Java 中被 final 关键字修饰的变量,不能被重新赋值。(√)

3.不存在继承关系的情况下,也可以实现方法重写。(×)

4.函数式接口在Java中是指有且仅有一个抽象方法的接口。(√)

5.接口中只能定义常量和抽象方法。(×)

三、选择题

1、B 2、ABC 3、C 4、C 5、A

1.在类的继承关系中,需要遵循以下哪个继承原则?(B)

A.多重 B.单一 C.双重 D.不能继承

2.关于super关键字以下说法哪些是正确的?(多选)(ABC)

A. super 关键字可以调用父类的构造方法

关键字可以调用父类的普通方法

C. super 与 this 不能同时存在于同一个构造方法中

D. super 与 this 可以同时存在于同一个构造方法中

3.类中的一个成员方法被下面哪个修饰符修饰,该方法只能在本类被访问?(C)

A. public B. protected C. private D. default

4.在Java中,要想让一个类继承另一个类,可以使用以下哪个关键字?(C)

A. inherits B. implements s D. modifies

5.已知类的继承关系如下:

class Employee;

class Manager extends Employeer class Director extends Employee;则以下语句能通过编译的有哪些?(A)

A. Employee e=new Manager(); B. Direetor d=new Manager();

B. C. Director d=new Employee(); D. Manager menew Director();

四、简答题

1.简述什么是方法重写

2.简述什么是多态。

3.简述抽象类和接口的区别。

1、在继承关系中,子类的方法与父类的某一方法具有相同的方法名、返回类型和参数列表,则称子

类的该方法重写(覆盖)父类的方法。

2、多态意味着一个对象有着多种形态,可以在特定的情况下,表现不同的状态,从而对应着不同的属性和方法。简单的说,多态就是使用父类类型的变量引用子类对象,根据被引用子类对象的特性,程序会得到不同的运行效果。

3、在Java中,使用abstract关键字修饰的类称之为抽象类。抽象类是不能被实例化的,通常需要写一个子类来继承抽象类,同时实例化子类来获得该类的对象。抽象类通常用于表示一种抽象的概念。

接口可以说是一种特殊的抽象类,接口中只能定义常量、抽象方法、静态方法和默认方法。由于接口的特殊性,在定义时需要使用interface关键字。

五、编程题

1.设计一个学生类Student和它的一个子类 Undergraduate。要求如下:

(1) Student 类有 name 和 age 属性,一个包含两个参数的构造方法,用于给name和 age 属性赋值,一个 show()方法打印 Student 的属性信息。

(2)本科生类 Undergraduate 增加一个 degre(学位)属性。有一个包含三个参数的构造方法,前两个参数用于给继承的 name和 age 属性赋值,第三个参数给 degree 专业赋值,一个 show()方法用于打印

Undergraduate 的属性信息。

(3)在测试类中分别创建 Student 对象和 Undergraduate 对象,调用它们的show()。

2. 设计一个 Shape 接口和它的两个实现类 Square 和 Circle。要求如下:

(1)Shape接口中有一个抽象方法area(),方法接收有一个 double类型的参数,返回一个 double 类型的结果。

(2)Square 和 Circle 中实现了 Shape 接口的 area()抽象方法,分别求正方形和圆形的面积并返回。

在测试类中创建 Square和 Circle 对象,计算边长为2的正方形面积和半径为3的圆形面积。

1、参考答案

class Student {

}

class UnderGraduate extends Student{

}

public class Test01{

public String degree;

public UnderGraduate(String name,int age,String degree){

}

public void show(){

}

n("name: "+name+" age: "+age+" degree: "+degree);

super(name, age);

=degree;

public String name;

public int age;

public Student(String name,int age){

}

public void show(){

}

n("name: "+name+" age: "+age);

=name;

=age;

}

public static void main(String[] args) {

}

Student student = new Student("zhangsan", 16);

();

UnderGraduate underGraduate = new UnderGraduate("lisi", 20, "bechalor");

();

2、参考答案

interface Shape {

}

class Square implements Shape{

}

class Circle implements Shape{

}

public class Test02 {

}

public static void main(String[] args) {

}

Shape square = new Square();

Shape circle = new Circle();

n((2));

n((3));

public double area(double r) {

}

return *r*r;

public double area(double sideLength) {

}

return sideLength*sideLength;

double area(double givenValue);


发布者:admin,转转请注明出处:http://www.yc00.com/news/1705144345a1395738.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信