接口(抽象的抽象类)

接口(抽象的抽象类)
interface:接口
implements:实现
1、接口中的方法都是抽象方法,所以abstract可以省略不写
2、接口中的方法必须是public
3、接口中只能规定方法,不能写属性,(接口中可以写常量)
4、一个类可以实现多个接口,中间用逗号隔开
5、一个类可以先继承父类,然后再实现接口
6、接口可以继承接口,但是里面的方法都要实现

原文地址:https://www.cnblogs.com/rjbc/p/11337342.html

时间: 2024-10-13 09:08:17

接口(抽象的抽象类)的相关文章

接口是对动作的抽象,抽象类是对根源的抽象

1.抽象类是一个不完全的类,需要进一步专业化.接口只是一个行为的规范或规定;       2.接口基本上不具备继承的任何具体特点,它仅仅承诺了能够调用的方法;       3.一个类一次可以实现若干个接口,但是只能扩展一个父类       4.接口可以用于支持回调,而继承并不具备这个特点. 接口和抽象类的概念不一样.接口是对动作的抽象,抽象类是对根源的抽象. 抽象类表示的是,这个对象是什么.接口表示的是,这个对象能做什么.比如,男人,女人,这两个类(如果是类的话……),他们的抽象类是人.说明,他

jdk1.8.0_45源码解读——Set接口和AbstractSet抽象类的实现

jdk1.8.0_45源码解读——Set接口和AbstractSet抽象类的实现 一. Set架构 如上图: (01) Set 是继承于Collection的接口.它是一个不允许有重复元素的集合.(02) AbstractSet 是一个抽象类,它继承于AbstractCollection.AbstractCollection实现了Set中的绝大部分函数,为Set的实现类提供了便利.(03) HastSet 和 TreeSet 是Set的两个实现类.        HashSet依赖于HashMa

使用接口还是使用抽象类

很多人有过这样的疑问:为什么有的地方必须使用接口而不是抽象类,而在另一些地方,又必须使用抽象类而不是接口呢?或者说,在考虑Java类的一般化问题时,很多人会在接口和抽象类之间犹豫不决,甚至随便选择一种. 首先来了解一下接口和抽象类的一些具体的区别: 抽象类表示该类中可能已经有一些方法的具体定义,但是接口就仅仅只能定义各个方法的界面(方法名,参数列表,返回类型),并不关心具体细节. 类描述了一个实体,包括实体的状态,也包括实体可能发出的动作. 接口定义了一个实体可能发出的动作.但是只是定义了这些动

初识面向对象-接口类、抽象类、封装

接口类 # java : 面向对象编程# 设计模式 —— 接口# 接口类 : python原生不支持# 抽象类 : python原生支持的from abc import abstractmethod,ABCMetaclass Payment(metaclass=ABCMeta): # 元类 默认的元类 type @abstractmethod def pay(self,money):pass # 没有实现这个方法# 规范 :接口类或者抽象类都可以# 接口类 支持多继承,接口类中的所有的方法都必须

接口中包含抽象类demo

package jiechoudemo; /* * 接口中包含抽象类 */ public class jiechoudemo { public static void main(String[] args) { windows.door wd = new zhuozi().new yizi(); wd.close(); } } //写一个接口 interface windows{ public abstract void open(); //抽象类 abstract class door{ pu

委托 接口 抽象

//委托:可以引用满足它的条件的函数,类似于函数的“容器”——多头螺丝刀,可以根据需要换头用!    public delegate void qiming();    //delegate 委托类型,.下面是条件 :void没有返回值的函数,()里是空的,表示没有输入内容的函数 接口 抽象

PHP接口(interface)和抽象类(abstract)

interface 定义了一个接口类,它里面的方法其子类必须实现.接口是类的一个模板,其子类必须实现接口中定义的所有方法. interface User{ function getHeight($height); function getWeight($weight); } class my implements User{ function getHeight($username){ echo $height; } function getWeight($weight){ echo $weig

CacheManager:–个通用缓存接口抽象类库

CacheManager是–个缓存通用接口抽象类库,它支持各种高速缓存提供者,例如Memcache,Redis,并且有许多先进的功能特性.具体可以访问官方网站  http://cachemanager.net. CacheManager设计目标就是简化程序员对各种复杂缓存场景的处理,通过CacheManager只需要几行的代码就可以支持多层的缓存,从进程内缓存到分布式的缓存.通过CacheManager可以很容易在项目中更改缓存策略,它还提供一些更有价值的特性,例如高速缓存同步,并发更新,事件通

jdk1.8.0_45源码解读——Map接口和AbstractMap抽象类的实现

jdk1.8.0_45源码解读——Map接口和AbstractMap抽象类的实现 一. Map架构 如上图:(01) Map 是映射接口,Map中存储的内容是键值对(key-value).(02) AbstractMap 是继承于Map的抽象类,它实现了Map中的大部分API.其它Map的实现类可以通过继承AbstractMap来减少重复编码.(03) SortedMap 是继承于Map的接口.SortedMap中的内容是排序的键值对,排序的方法是通过比较器(Comparator).(04) N