11.接口

1.概念

  定义了接口就是定义了调用对象的标准。

1、接口有无比的适用性,使用接口可以继承超过一个以上的来源,类可以extends某个父类,并且实现其他接口。

2、可以解决多重继承却又不会产生致命方块。

3、当你用接口来作为多态类型时,对象就可以来自任何的地方了。

4、类可以实现多个接口,中间“,”隔开。extend只能有一个,implement可以有好多个。

2.基本语法

1.使用interface定义,使用implements关键字;

2.接口中的方法都是抽象方法,不能生成对象,用类继承接口(implements),支持向上转型;

implements是一种特殊的继承,接口的子类负责复写接口中的抽象方法。

3.接口中的方法都是public权限;

4.要实现一个接口必须要复写接口里的抽象方法;

5.一个类可以实现多个接口——class Phone implements USB,Wifi

一个接口可以继承(extends)多个接口,没用“implements”,因为没复写;

interface C extends A,B  C里面就有AB加上C的抽象方法,如果实现C,全部的抽象方法都要实现。

3.用法

工厂方法模式

使用new来构造函数的方法封装在工厂类里面。这样就不需要具体new具体的类,只需要修改工厂类。

来自为知笔记(Wiz)

时间: 2024-10-30 01:47:20

11.接口的相关文章

1-1 接口自动化测试框架从设计到开发

很多人不明白测试怎么到 “”设计“”, 测试 ,开发 了呢,因为有一种职位叫做测试开发工程师,但是想成为测试开发工程师必须会一种接口自动化框架.必须从设计框架,开发框架,重构框架做起.要做到这些内容我们必须从以后这几个路线开始: 1.接口基础 (HTTP接口熟悉,常见接口介绍,接口测试工具的使用,常见接口基础面试) 2.接口开发  (用Django 开发get请求 和post请求) 3.unittest与接口测试结合 (unittest的使用 requests的引入使用,断言,case管理,HT

java基础(11):接口、多态

1. 接口 1.1 接口概念 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的”类”. 接口只描述所应该具备的方法,并没有具体实现,具体的实现由接口的实现类(相当于接口的子类)来完成.这样将功能的定义与实现分离,优化了程序设计. 请记住:一切事物均有功能,即一切事物均有接口. 1.2 接口的定义 与定义类的class不同,接口定义时需要使用interface关键字. 定义接口所在的仍为.java文件,虽然声明时使用的为interface关键字的编译后仍然会产生.class文件.这

接口2014年6月11日01:11:37

1 [1]C#中的接口和类有什么异同. 2 3 不同点: 4 不能直接实例化接口. 5 接口不包含方法的实现. 6 接口可以多继承,类只能单继承. 7 类定义可在不同的源文件之间进行拆分(partial). 8 9 相同点: 10 接口.类和结构都可以从多个接口继承. 11 接口类似于抽象基类:继承接口的任何非抽象类型都必须实现接口的所有成员. 12 接口和类都可以包含事件.索引器.方法和属性(属性本质上是两个方法). 13 14 基础知识:接口只能定义方法(只能定义行为,不能定义实现也就是字段

11_Java面向对象_第11天(接口、多态)

今日内容介绍1.接口2.多态 01接口的概念 * A:接口的概念 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的”类”. 接口只描述所应该具备的方法,并没有具体实现,具体的实现由接口的 实现类(相当于接口的子类)来完成.这样将功能的定义与实现分离,优化了程序设计. 请记住:一切事物均有功能,即一切事物均有接口. 02接口的定义 A: 接口的定义 与定义类的class不同,接口定义时需要使用interface关键字. 定义接口所在的仍为.java文件,虽然声明时使用的为inter

设计模式六大原则(4):接口隔离原则

接口隔离原则 定义:客户端不应该依赖它不需要的接口:一个类对另一个类的依赖应该建立在最小的接口上. 问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法. 解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系.也就是采用接口隔离原则. 接口隔离原则(Interface  Segregation Principle, ISP):使用多个专门的接口,而不使用单一的总接口,即客户端

接口、索引器、Foreach的本质(学习笔记)

接口 什么是接口? 接口代表一种能力,和抽象类类似但比抽象类的抽象程度更高! 接口的定义: 1 public interface IEat//定义一个接口 2 { 3 void Eat(string food);//为该接口定义一种能力 4 } 接口的定义 从上边的例子中我们可以看到,接口中的方法是没有方法体的甚至连访问修饰符都没有.而且在接口中只能有方法.属性.索引器及事件! 接口的使用: 1 public class Dog:IEat //Dog类实现IEat接口 2 { 3 //Dog类实

面向对象,封装,构造方法,this关键字,main,继承,接口,多态阶段性小结

一.局部变量和成员变量 成员变量:  定义在类中变量 局部变量:  定义在方法中变量 1成员变量与局部变量的区别: 应用范围 成员变量在整个类内都有效 局部变量只在其声明的方法内有效 生命周期   成员变量: 它属于对象,它随着对象的创建而创建,随着对象的消失而消失 局部变量: 使用完马上释放空间. 存储位置  成员变量属于对象,它存储在堆内,堆内的实体,当没有引用指向其时,才垃圾回收清理 局部变量存在栈内存中,当不在使用时,马上就会被释放. 初始值 成员变量它存储在堆中,如果没有赋初值,它有默

基于 libevent 开发的 C++ 11 高性能网络服务器 evpp

evpp是一个基于libevent开发的现代化C++11高性能网络服务器,自带TCP/UDP/HTTP等协议的异步非阻塞式的服务器和客户端库. 特性: 现代版的C++11接口 非阻塞异步接口都是C++11的functional/bind形式的回调仿函数(不是libevent中的C风格的函数指针) 非阻塞纯异步多线程TCP服务器/客户端 非阻塞纯异步多线程HTTP服务器/客户端 非阻塞纯异步多线程UDP服务器 支持多进程模式 优秀的跨平台特性和高性能(继承自libevent的优点) 除此之外,基于

初学java之接口基础

1 /* 2 长城牌电视机 3 联想奔月5008PC机 4 */ 5 6 7 package st; 8 //接口回调实例 9 interface ShowMessage 10 { 11 void 显示商标 (String s); 12 } 13 class TV implements ShowMessage 14 { 15 public void 显示商标(String s) 16 { 17 System.out.println(s); 18 } 19 } 20 class PC implem