栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

2022.7.4 面向对象进阶(权限修饰符&抽象类&接口)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2022.7.4 面向对象进阶(权限修饰符&抽象类&接口)

2022.7.4 权限修饰符&抽象类&接口

包:分门别类的管理代码的。

**关于包注意点:**相同包下的类,可以直接访问,无需导包,访问不同包下的类,必须导包才能使用,一个类如果要使用不同包下相同的类名,默认只能导入一个类,另一个如果还想使用,必须带包名。


权限修饰符:约束成员变量,构造器,方法等的访问范围



final修饰符:

1.final修饰类:类不能被继承。工具类可以用final修饰。

2.final修饰方法:方法不能被重写。 模板方法可以用final

3.final修饰变量:总规则:有且仅能被赋值一次。

4.final修饰基本数据类型的变量,其存储的数据不能改变。final修饰引用类型的变量,其存储的地址不能改变,但是指向的对象内容可以改变。

常量: public static final 修饰的成员变量,有且仅能赋值一次,一般都是做系统的配置信息,做信息标志和分类,名称全部大写,多个单词用下划线连接,常量会出现宏替换:所以常量名的地方在编译后都是变成真实的数据。

枚举:也是做信息标志和分类,可读性好,入参约束的更严格。代码更好看些


抽象类:abstract修饰的,不能写方法体,一般都是用作被子类继承,父类知道子类一定要做这件事,但是每个子类做的不一样,父类可以声明抽象方法,交给子类重写来实现。这个类就是抽象类。

特点:

1.类有的成员(成员变量、方法、构造器)抽象类都具备

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

3.一个类继承了抽象类必须重写完抽象类的全部抽象方法,否则这个类也必须定义成抽象类。

4.不能用abstract修饰变量、代码块、构造器。

5.最重要的特征:得到了抽象方法,失去了创建对象的能力(有得有失)

说到抽象类就要引出模块方法设计模式:


接口:接口是规范:约束别人必须干什么事情,规范的基本特征是约束和公开,所以接口中的抽象方法,默认会自动加上public abstract修饰,不写也有,接口中的常量。默认加上public static final修饰,写不写也有。

实现接口的类称为实现类(子类),且接口可以被类多实现,一个类实现多个接口,必须重写完全部接口的全部抽象方法,否则这个类必须成为抽象类。

接口(类)与接口(类)之间的关系:

1.类与类:单继承,一个类只能继承一个直接父类。

2.类与接口:多实现,一个类可以实现多个接口

3.接口与接口:多继承,一个接口可以继承多个接口。这样可以合并多个接口。

接口的注意事项:

1、接口不能创建对象
2、一个类实现多个接口,多个接口的规范不能冲突
2、一个类实现多个接口,多个接口中有同样的静态方法不冲突。
3、一个类继承了父类,同时又实现了接口,父类中和接口中有同名方法,默认用父类的。
4、一个类实现了多个接口,多个接口中存在同名的默认方法,可以不冲突,这个类重写该方法即可。
5、一个接口继承多个接口,是没有问题的,如果多个接口中存在规范冲突则不能多继承。

接口从JDK 8开始新增了3个方法:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1006703.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号