继承,接口,多态的综合练习

本文通过一个示例介绍了Java中继承、接口和多态的概念,包括奥迪车和智能奥迪车的类设计。在测试类中展示了如何创建对象并调用各自方法,以及向上转型和向下转型的使用,帮助初学者理解这些概念。

"世界万物皆有接口",今天看到这句话瞬间感觉在没接触IT之前的世界观有问题,哈哈大笑

今天介绍一个用到了继承,接口,多态的综合例题,思路不难,综合性比较强,适合新手练习用.

考核知识点

    继承

    接口

    类实现接口

    多态(向上转型)

    向下转型

    例题描述

请使用代码描述:   

奥迪车(Audi)都具有跑的功能,但是智能奥迪车(SmartAudi)除了具有跑的功能外,还具有自动泊车(automaticParking)和无人驾驶(automaticDrive)的功能!

要求:在测试类中创建Audi车对象和智能奥迪车对象,分别调用各自方法; 然后测试向上转型(转换为父类类型和实现的接口类型)和向下转型.

    代码描述

请使用代码描述:   

奥迪车(Audi)都具有跑的功能,但是智能奥迪车(SmartAudi)除了具有跑的功能外,还具有自动泊车(automaticParking)和无人驾驶(automaticDrive)的功能!

要求:在测试类中创建Audi车对象和智能奥迪车对象,分别调用各自方法; 然后测试向上转型(转换为父类类型和实现的接口类型)和向下转型.

    操作步骤描述

定义奥迪车类(Audi)

成员方法: 跑(run())

输出格式: 奥迪车在跑

定义智能接口(Smart)

抽象方法: 自动泊车(automaticParking)和无人驾驶(automaticDrive)

定义智能奥迪车类(SmartAudi) 继承Audi实现Smart接口

成员方法

实现automaticParking方法

输出:智能奥迪车在自动泊车

实现automaticDrive方法

输出:智能奥迪车在无人驾驶

定义测试类Test

提供main方法

在main方法中

创建Audi车对象 a,调用跑方法

创建SmartAudi车对象 sa,调用跑,自动泊车,自动驾驶方法

定义Audi类型的变量 aa 把sa赋值aa; 测试aa只能调用run方法,不能调用其他方法

判断如果aa是SmartAudi的实例对象, 把aa强制转换为saa;使用saa调用自动泊车和自动驾驶方法

定义Smart类型的变量 s,把sa赋值给s,测试只能调用自动泊车和自动驾驶方法,不能调用run方法.

/*

 定义奥迪车类(Audi)

      成员方法: 跑(run())

           输出格式: 奥迪车在跑

 */

publicclass Audi {

//&n

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值