抽象类与接口练习
【练习题】1.抽象类与继承
设计一个能细分为矩形、三角形、圆形和椭圆形的“图形”类。使用继承将这些图形分类,找出能作为基类部分的共同特征(如校准点)和方法(如画法、初始化),并看看这些图形是否能进一步划分为子类。
本题只考虑实现思想,不考虑具体实现的细节,实现方式可自由发挥。
【练习题】2.抽象类:
创建一个Vehicle类并将它声明为抽象类。在Vehicle类中声明一个NoOfWheels方法,使它返回一个字符串值。创建两个类Car和Motorbike从Vehicle类继承,并在这两个类中实现NoOfWheels方法。在Car类中,应当显示“四轮车”信息;而在Motorbike类中,应当显示“双轮车”信息。创建另一个带main方法的类,在该类中创建Car和Motorbike的实例,并在控制台中显示消息。
【练习题】3.接口:
创建一个名称为Vehicle的接口,在接口中添加两个带有一个参数的方法start()和stop()。在两个名称分别为Bike和Bus的类中实现Vehicle接口。创建一个名称为interfaceDemo的类,在interfaceDemo的main()方法中创建Bike和Bus对象,并访问start()和stop()方法。
【练习题】4.接口:
创建一个名称为Vehicle的接口,在接口中添加两个带有一个参数的方法start()和stop()。在两个名称分别为Bike和Bus的类中实现Vehicle接口。创建一个名称为interfaceDemo的类,在interfaceDemo的main()方法中创建Bike和Bus对象,并访问start()和stop()方法。
【练习题】5.抽象类、继承、接口综合
设计一个系统:
XXX门的实现过程:
流程:
设计一张抽象的门Door,那么对于这张门来说,就应该拥有所有门的共性,开门openDoor()和关门closeDoor();然后对门进行另外的功能设计,防盗
--theftproof()、防水--waterproof()、防弹--bulletproof()、防火、防锈…… 要求:利用继承、抽象类、接口的知识设计该门
【练习题】6.抽象类、继承、接口综合
设计一个系统:
xxx纯净水生产线
目前流程是:从某个地方把水取出来,然后经过缓冲,过滤,加热和放糖的步骤 abstract 水{
public void 水();
}
interface 过滤{}
interface 缓冲{}
interface 加热{}
interface 放糖{}
class 纯净水1 extends 水 imps 过滤,缓冲{}
class 纯净水2 extends 水 imps 缓冲{}
class 纯净水2 extends 水 imps 过滤{}
。。。。
1.
package 接口与抽象类;
abstract class tuxing
{
abstract void area();
}
class juxing extends tuxing
{
void area()
{
}
}
class sanjiaoxing extends tuxing
{
@Override
void area() {
// TODO Auto-generated method stub
}
}
class yuanxing extends tuxing
{
@Override
void area() {
// TODO Auto-generated method stub
}
}
class tuoyuan extends tuxing
{
@Override
void area() {
// TODO Auto-generated method stub
}
}
public class class01 {
public static void main(String[] args) {
tuxing a=new juxing();
a.area();
tuxing b=new sanjiaoxing();
b.area();
tuxing c=new tuoyuan();
c.area();
tuxing d=new yuanxing();
c.area();
}
}
2.
package 接口与抽象类;
abstract class Vehicle
{
abstract String NoOfWheels();
}
class Car extends Vehicle
{
@Override
String NoOfWheels() {
// TODO Auto-generated method stub
return "四轮车";
}
}
class Motorbike extends Vehicle
{
@Override
String NoOfWheels() {
// TODO Auto-generated method stub
return "双轮车";
}
}
public class class02 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Vehicle vehicle=new Car();
System.out.println(vehicle.NoOfWheels());
Vehicle vehicle1=new Motorbike();
System.out.println( vehicle1.NoOfWheels());
}
}
3.
package 接口与抽象类;
interface Vehicle
{
void start(int a);
void stop(int a);
}
class Bike implements Vehicle
{
@Override
public void start(int a) {
// TODO Auto-generated method stub
System.out.println("我是一个自行车,正在启动!!!");
}
@Override
public void stop(int a) {
// TODO Auto-generated method stub
System.out.println("我是一个自行车,正在停止!!!");
}
}
class Bus implements Vehicle
{
@Override
public void start(int a) {
// TODO Auto-generated method stub
System.out.println("我是一个公共汽车,正在启动!!!");
}
@Override
public void stop(int a) {
// TODO Auto-generated method stub
System.out.println("我是一个公共汽车,正在停止!!!");
}
}
class interfaceDemo
{
void shixian(Vehicle a)
{
a.start(0);
a.stop(0);
}
}
public class class03 {
public static void main(String[] args) {
// TODO Auto-generated method stub
interfaceDemo a=new interfaceDemo();
a.shixian(new Bike());
a.shixian(new Bus());
}
}
5.
package 接口与抽象类;
abstract class Door
{
void openDoor()
{
System.out.println("我正在开门!!!");
}
void closeDoor()
{
System.out.println("我正在关门!!!");
}
}
interface theftproof
{
void fangshui();
}
interface waterproof
{
void fangfdan();
}
interface bulletproof
{
void fanghuo();
}
class theDoor extends Door implements theftproof,waterproof,bulletproof
{
@Override
public void fanghuo() {
// TODO Auto-generated method stub
System.out.println("我可以防火!!!");
}
@Override
public void fangfdan() {
// TODO Auto-generated method stub
System.out.println("我可以防弹!!!");
}
@Override
public void fangshui() {
// TODO Auto-generated method stub
System.out.println("我可以防水!!!");
}
}
public class class05 {
public static void main(String[] args) {
// TODO Auto-generated method stub
theDoor a=new theDoor();
a.openDoor();
a.closeDoor();
a.fangshui();
a.fanghuo();
a.fangfdan();
}
}
6.
package 接口与抽象类;
abstract class water
{
public void water1()
{
System.out.println("我是一捧水!!!");
}
}
interface guolv
{
void guolv1();
}
interface huanchong
{
void huanchong1();
}
interface jiare
{
void jiare();
}
interface fangtang
{
void fangtang();
}
class chunjingshui1 extends water implements guolv,huanchong,jiare,fangtang
{
@Override
public void fangtang() {
// TODO Auto-generated method stub
System.out.println("向水里放了一勺糖!!!");
}
@Override
public void jiare() {
// TODO Auto-generated method stub
System.out.println("对水进行加热!!!");
}
@Override
public void huanchong1() {
// TODO Auto-generated method stub
System.out.println("对水进行缓冲!!!");
}
@Override
public void guolv1() {
// TODO Auto-generated method stub
System.out.println("对水进行过滤!!!");
}
}
public class class06 {
public static void main(String[] args) {
// TODO Auto-generated method stub
chunjingshui1 a=new chunjingshui1();
a.water1();
a.fangtang();
a.jiare();
a.huanchong1();
a.guolv1();
}
}
---------------------
作者:1天真无邪1
来源:CSDN
原文:https://blog.csdn.net/qq_37997523/article/details/81459684
版权声明:本文为博主原创文章,转载请附上博文链接!