二十二、接口

上课视频:

链接:https://pan.baidu.com/s/1TgwazoJS8K2clRe9kxJ5Fw 密码:cbj9

链接:https://pan.baidu.com/s/1fTmD9opbYD9jpoXDdjK9gw 密码:ejje

作业视频:

链接:https://pan.baidu.com/s/1XryMJzLASySL1GmyPL9J6A 密码:slan
链接:https://pan.baidu.com/s/1cEU2MuO9i6nQWSv_jM7O2w 密码:3jf2

一、接口关键字

interface
案例:

public interface Skill {
}

二、接口中的特点。

1.接口当中所有的函数都不能有方法体
2.接中函数默认是public
3.接口中定义成员变量。默认是public static final (公共,静态的,常量)
4.接口可以继承接口,就会有父接口中定义的函数。
5.接口不能被实例化(不能被直接的new出对象)

三、实现类的特点。

1.实接接口的关键字是implements

public class LibaiHero extends People implements SkillInterface{
}

2.类实现了一个接口,就必需去实现接中当中所有定义的函数。
3.实现类可以去实现多个接口,实现多个接口用","号隔开

3.可以用接口对象去赋值子类的对象

四、继承和接口的关系

继承是继承的类。
接口是要被类去实现的。

作业:

定义一个车类,四个轮子,一个发动机,速度,颜色,时速(km/h),车有一个跑的功能打印以多少时速在跑。
再写一个宝马车,重写上面的所有属性,有一个特殊功能,(GPS定位)
再写一个特斯拉,GPS功能,自动驾驶。
再写一个奔驰,GPS,自动驾驶,无人机导航。
跟据需求定义出上面的类和接口,并继承或实现它。

作业2:

按要求编写一个Java应用程序程序:
(1)定义一个接口CanFly,描述会飞的方法public void fly();
(2)分别定义类飞机和鸟,实现CanFly接口。
(3)定义一个测试类,测试飞机和鸟,在main方法中创建飞机对象和鸟对象,
再定义一个makeFly()方法,其中让会飞的事物飞。并在main方法中调用该方法,
让飞机和鸟起飞

作业3

建立一个工程,该工程中包含如下内容:(具体的工程名、包名、java文件名、接口文件名自定)
1.定义一个接口Ishape,该接口中包含两个成员:周长和面积;
2.分别定义四个类,矩形类:rectangle,三角形类:Triangle,平行四边形类:parallelogram,梯形类Echelon,这四个类都实现接口Ishape,同时各类拥有自己的私有属性,比如说矩形的属性长和宽,平行四边形的属性边长和高,三角形的属性三个边长和高,梯形的属性上底、下底、腰长和高等,给每个类添加相应的构造方法,使各私有属性都能获得相应的值。
3.定义一个测试类TestShape,在该类中定义一个方法,只要调用该方法就能获得对应类型的周长和面积,然后在该类中进行相关测试。
注:类中描述的成员除上述内容外,可通过自己的想法自行添加,也可不添加。

作业4:

1.说出下面程序的执行结果:
interface InterfaceA {
String S = "good ";
void f();
}

abstract class ClassA {
abstract void g();
}

class ClassB extends ClassA implements InterfaceA {
void g() {
System.out.print(S);
}

public void f() {
System.out.print(" "+ S);
}
}
public class Test {
public static void main(String[] args) {
ClassA a = new ClassB();
InterfaceA b = new ClassB();
a.g();
b.f();
}
}
结果:________

作业5:

2、按要求编写Java程序:

(1)编写一个接口:InterfaceA,只含有一个方法int method(int n);

(2)编写一个类:ClassA来实现接口InterfaceA,实现int method(int n)接口方法时,要求计算1到n的和;

(3)编写另一个类:ClassB来实现接口InterfaceA,实现int method(int n)接口方法时,要求计算n的阶乘(n!);

(4)编写测试类E,在测试类E的main方法中使用接口回调的形式来测试实现接口的类。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • java继承 继承的概念 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。 继承就是子类继...
    863cda997e42阅读 709评论 0 1
  • 毕业就有一份稳定的工作,工作的城市又离家近,按道理来说我应该知足了,实际上我也满足于现状,可是我这个人就是很懒,工...
  • 此时的爱 就像往大海里扔巨石一样,表明波澜不惊,内心早已惊涛骇浪,随之而来的却是自碑,很低很低,低到尘埃里。丢了自...
    湛敏阅读 135评论 1 2
  • 1. 前情提要 2016年9月,向简书各位语言大神供奉过膝盖以后,我觉得,作为一枚野生英语翻译,也该到考场上检验一...
    进击的刘安娜阅读 5,389评论 23 24