前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java SE | 基础语法day11

Java SE | 基础语法day11

作者头像
剑走天涯
发布2019-08-23 15:40:17
2880
发布2019-08-23 15:40:17
举报
文章被收录于专栏:Java LifeJava Life

Java Life · 与你同在

January 2019

锲而舍之,朽木不折;锲而不舍,金石可镂 。

----荀 子

NO1.多态

(1)多态的概述

1)什么是多态

同一个对象,在不同时刻表现出来的不同形态。

2)多态的前提

①要有继承或实现关系;

②要有方法的重写;

③要有父类引用指向子类对象。

(2)多态中的成员访问特点

1)成员访问特点

①成员变量

编译看父类,运行看父类。

②成员方法

编译看父类,运行看子类。

(3)多态的好处和弊端

1)好处

提高程序的扩展性。定义方法时候,使用父类型作为参数,在使用的时候,使用具体的子类型参与操作。

2)弊端

不能使用子类的特有成员。

(4)多态中的转型

1)向上转型

父类引用指向子类对象就是向上转型。

2)向下转型

格式:子类型 对象名 = (子类型)父类引用;

NO2.抽象类

(1)抽象类的概述

当我们在做子类共性功能抽取时,有些方法在父类中并没有具体的体现,这个时候就需要抽象类了!

在Java中,一个没有方法体的方法应该定义为抽象方法,而类中如果有抽象方法,该类必须定义为抽象类!

(2)抽象类的特点

1)抽象类和抽象方法必须使用 abstract 关键字修饰。

2)抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类

3)抽象类不能实例化。

抽象类如何实例化呢?参照多态的方式,通过子类对象实例化,这叫抽象类多态。

4)抽象类的子类

①要么重写抽象类中的所有抽象方法;

②要么是抽象类。

(3)抽象类的成员特点

成员的特点

1)成员变量

①既可以是变量

②也可以是常量

2)构造方法

①空参构造

②有参构造

3)成员方法

①抽象方法

②普通方法

NO3.接口

(1)接口的概述

接口就是一种公共的规范标准,只要符合规范标准,大家都可以通用。

Java中的接口更多的体现在对行为的抽象!

(2)接口的特点

1)接口用关键字interface修饰

public interface 接口名 {}

2)类实现接口用implements表示

public class 类名 implements 接口名 {}

3)接口不能实例化

接口如何实例化呢?参照多态的方式,通过实现类对象实例化,这叫接口多态。

多态的形式:具体类多态抽象类多态接口多态

4)接口的子类

①要么重写接口中的所有抽象方法;

②要么子类也是抽象类。

(3)接口的成员特点

成员特点

1)成员变量

①只能是常量;

②默认修饰符:public static final。

2)构造方法

没有,因为接口主要是扩展功能的,而没有具体存在。

3)成员方法

①只能是抽象方法;

②默认修饰符:public abstract;

③关于接口中的方法,JDK8和JDK9中有一些新特性,后面再讲解。

(4)类和接口的关系

1)类与类的关系

继承关系,只能单继承,但是可以多层继承。

2)类与接口的关系

实现关系,可以单实现,也可以多实现,还可以在继承一个类的同时实现多个接口。

3)接口与接口的关系

继承关系,可以单继承,也可以多继承。

(5)抽象类和接口的区别

1)成员区别

①抽象类

变量,常量;有构造方法;有抽象方法,也有非抽象方法。

②接口

常量;抽象方法。

2)关系区别

①类与类

继承,单继承。

②类与接口

实现,可以单实现,也可以多实现。

③接口与接口

继承,单继承,多继承。

3)设计理念区别

①抽象类

对类抽象,包括属性、行为。

②接口

对行为抽象,主要是行为。

End

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java Life 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档