java学习笔记(2)多态与接口

您所在的位置:网站首页 创维e900s参数 java学习笔记(2)多态与接口

java学习笔记(2)多态与接口

2023-03-23 01:06| 来源: 网络整理| 查看: 265

1.什么是is-a关系?什么是has-a关系? 他就是一种继承关系举例 比如 一个猫是一个动物,一个狗是一个动物;一个动物可以有很多种;就好比 一个爸爸可以有很多儿子,但是一个儿子不可以有两个爸爸。 这种关系就是is-a. has-a( 有 “a” 汽车有轮胎) 表示组合,包含关系。比如兔子包含有腿,头等组件;就不能说兔子腿是属于一种兔子(不能说是继承关系) 2.什么是多态? 同一个引用类型,引用不同的对象调用方法时可以执行不同的操作。简单来说就是一个姿态可以有多种动作就称之为多态。 注意:多态的前提是要有继承。 3.向上转型 父类引用子类对象时,他们之间存在一种类型转换问题,称之为向上转型。一般在向上转型时,父类无法引用子类独有的方法, 4.向下转型 把父类强行转换为子类 dog[子类] d=(dog)p1[父类]; 通过向下转型 父类就可访问到子类独有的方法了,但是强转的子类只能用这个强转子类的独立方法,其他子类的还是不可以引用。会报错。 5.抽象 关键字 abstract 在将一个类变成抽象类的时候,以及他的方法也变成抽象方法时,(抽象方法没有方法体)这时如果有其他类继承这个抽象类,必须要重写他的方法,否则会报错。 抽象类不可通过new来调用,抽象类里面的构造方法这时只可以通过super来调用。 abstract不可以和static一起使用,abstract不可使用在构造方法上 6.接口 关键字 interface 语法 public interface 接口名称{} 接口里面的方法全部都没有方法体,可以理解为都是抽象的。 接口的优势在于不同类之间定义相同的行为;这些类之间不必有继承关系。接口的更大优势在于系统的设计,也就是面向接口编程。 7.实现接口 关键字 implements 语法 public class 类名称 implements 接口1,接口2…{ } 创建好接口以后,通过implements可以来实现这些接口里面的方法 一个类可以实现多个接口,但只能继承一个父类;这就像一个儿子只有一个父亲,但是可以有多个老师一样 8.接口的特征 接口作为一种约定、规范或标准具有以下显著特征: 1.接口不可以被实例化,不能有构造方法。 2.接口中的所有成员都是public static final。 3.接口中的方法都是抽象方法,接口中的方法会自动使用public abstract来修饰。 4.一个类可以同时实现多个接口 5.实现类必须实现接口中的所有办法。 6.接口可以继承接口,例如:显卡一般是通过PCI-E的方式连接到主板上的,我们可以编写一个PCI-E的接口来继承PCI接口,再让DisCard实现PCI-E接口。 9.抽象类和接口的区别: (1)抽象类可以有构造方法,接口中不能有构造方法。 (2)抽象类中可以有普通成员变量,接口中没有普通成员变量(接口中的方法定义默认为public abstract类型,接口中的成员变量类型默认为public static final) (3)抽象类中可以包含静态方法,接口中不能包含静态方法 (4) 一个类可以实现多个接口,但只能继承一个抽象类。 (5)接口可以被多重实现,抽象类只能被单一继承 (6)如果抽象类实现接口,则可以把接口中方法映射到抽象类中作为抽象方法而不必实现,而在抽象类的子类中实现接口中方法 (7) 接口定义的关键字interface;抽象类定义的关键字abstract (8)抽象类继承的关键字extends,接口的实现关键字implements (9) 抽象类可以提供成员方法的实现细节,可以用public 、protected、default这些修饰符;接口只能是public abstract方法



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3