Java基础课——interface的理解

原创 2015年07月11日 10:47:19

Java基础课——interface的理解

复习了一下Java里interface的用法,又看了一遍马士兵老师的讲interface的视频,加深了一下理解。关键的几个知识点是这几个

-本质上就是特殊的抽象类,只包含常量和方法的定义,不包含变量和方法的实现
-常量只能是static final (为了避免C++中多继承带来的问题,定义成static final后这个常量就脱离于接口而存在),方法只能是public的,且一定是抽象方法
-与继承一样会有多台的存在
-可以继承其他的接口,添加新属性和新的抽象方法

最简单的接口:

public interface Singer{

    public static final int count = 1;

    public void sing();
    public void sleep();
}

接口的多态:

public class Test{
    public static void main(String args[]){

        //Student实现了singer接口,重写了其中的方法
        //singer只能看到Student里sing和sleep方法
        Singer singer = new Student("小明");

        //这里形成了多态,输出的是Student里重写的方法
        singer.sing(); //输出的是"小明"

        //Teacher实现了Singer和Painter两个接口
        singer singer2 = new Teacher("都都");

        //同上,这里输出了Teacher里重写的方法
        singer2.sing();
        singer2.sleep();

        //将singer2看做Painter来用
        Painter p1 = (Painter)singer2;
        singer2.draw();

        //依然可以形成多态
        method(Singer singer){
            singer.sing();
        }
    }
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Java基础课——File类的使用

Java基础课——File类的使用项目里需要用到File类,趁此复习了一下File的基本用法:创建、删除、复制、重命名······· 总的来说,File类既可以看做目标,也可以看做是一个文件,具体参...

java面向对象基础课(继承,方法重写),图形界面=0912号

学习报告 1、什么是重写?用什么方法可以强制检测当前方法是否重写父类方法? 解答: l  重写发生在父类与子类之间,子类的方法名和父类相同,参数列相同,返回类型也相同。当对子类对象进行方法调用时...

JAVA基础课总结八

 一、多态    A:对象在不同时刻表现出来的不同的状态      B:多态前提  a:要有继承关系。 b:要有方法重写。 c:要有父类引用指向子类对象。    在多态的...

Java基础课时1

Java 编程语言是个简单、完全面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的编程语言,Java可以撰写跨平台应用软件。 1.环境搭建 首先查看自己系统...

JAVA基础课总结九

本节重点介绍了内部类,是本人根据学习资料总结所得! 一、包                    ...

java基础课时2--项目的导入和导出

1.导出项目 eclipse中点击自己的工程,右击选择Export 点击下一步 都不要改,只需要设置导出的目录即可。 2.导入项目 工作面板中右击 点击下一步 选择目录点击下一...

08/25号JAVA基础课学习总结

学习报告 1. 程序设计方面基础知识: Ø  程序:可以被计算机连续执行的指令集合。 Ø  软件:为了实现某些特定的功能,编制成的一个到多个的程序文件的集合。 Ø  计算机语言:可以与计算机进...

JAVA语言基础课后小结

分隔符,标识符以及关键字 (1)分隔符 包括  逗号、分号(语句结束标志)、花括号、空格、圆点。 public class TestSeparated{           int a,b; ...

java基础课件

Java平台提供了一个全新的集合框架。“集合框架”主要由一组用来操作对象的接口组成。不同接口描述一组不同数据类型。 Java 2集合框架图 集合接口:6个接口(短虚线表示),表示不同集...

Servlet学习笔记(五)—— java中abstract class 与 interface 的关联

一、理解抽象类       本文 二、抽象类与接口的区别 1.相同点:       ①抽象类与接口都包含未实现的方法;     ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)