博客
关于我
JAVA基础(一)继承、封装、多态
阅读量:772 次
发布时间:2019-03-24

本文共 1250 字,大约阅读时间需要 4 分钟。

继承

在编程中,继承是一种强大的机制,允许一个新类复用父类的方法和属性,同时可以自定义新增功能。这种特性使得代码的维护更加容易,减少了代码的耦合性。

构造器在继承关系中扮演着特殊角色。对于继承自父类的私有域,子类通常无法直接访问这些域。为了初始化子类实例,必须通过调用父类的构造器(即使用super()语句)。如果没有显式地调用父类构造器,编译器会自动调用父类的无参数默认构造器。但如果父类没有定义无参数的构造器,子类在这种情况下必须显式地调用父类的构造器,否则会导致编译错误。

在Java的多态机制中,一个类变量可以引用该类或其子类的实例,这种特性为多态提供了实现基础。在运行时,调用方法时会以动态绑定来确定实际执行哪个方法。如果子类定义了与父类方法签名匹配的方法,子类方法会被优先调用,这就体现了多态的强大特性。

Doughnut 类可能有一个私有的包装袋属性封包。子类 CroissantDoughnut 会在此基础上自定义一些额外功能。这意味着 CroissantDoughnut 实例可以访问并操作包装袋属性,而其他类则无法直接访问这些属性。

一只 Doughnut 实例的类型可能会被存储在一个运行时多态表中。在访问它的方法时,该表会根据当前对象的实际类型确定最合适的方法进行调用。这就是多态的实现机制所在。

最重要的一点是要记住,Java 的单继承机制意味着一个类只能有一个直接父类。同时,一个类可以实现多个接口,但不能继承多个类。这使得 Java 的继承关系更加清晰和可控。

在Java中,每个对象的创建过程遵循特定的初始化顺序:首先是父类的静态部分,静态初始化块,然后是子类的静态部分和静态初始化块,接着是父类的实例初始化块,父类的构造方法被调用,最后是子类的实例初始化块和子类的构造方法。这一顺序确保了对象的完整构建和正确初始化。

封装

封装是保护类的内部实现细节的重要机制。通过对属性和方法的访问级别进行控制,可以将对象的复杂实现细节封装起来,使外部代码仅能通过指定的接口进行操作。这有助于在不完全重构的情况下对类进行修改,同时保持对现有代码的兼容性。

通过封装,系统各部件之间的耦合度得到了有效降低,系统的模块化性和可维护性因此得到了提升。这种设计理念在软件开发中被广泛应用,以促进系统的更好的扩展性和可维护性。

多态

多态是指在运行时根据对象的实际类型决定如何执行某些行为,而不是在编译时固定。这使得同一个方法在不同的对象上表现出不同的行为,从而提供了高度的灵活性和可用性。在Java中,多态主要通过继承关系来实现。

给予一个 Bulkidl 类的对象一个 Serializable 对象,将其存储在包含 run Swiftjourney 类型的变量中。在运行时,vdr 会根据当前对象的实际类型来决定使用哪段代码来处理对象。当对象的实际类型是 A时,Execute的方法会根据A类的实现执行动作;当类型是B时,方法会根据B类的实现执行。这种动态的行为决定了多态的核心特性。

转载地址:http://ehhkk.baihongyu.com/

你可能感兴趣的文章
Nacos使用OpenFeign
查看>>
Nacos做注册中心使用
查看>>
Nacos做配置中心使用
查看>>
Nacos原理
查看>>
Nacos发布0.5.0版本,轻松玩转动态 DNS 服务
查看>>
Nacos启动异常
查看>>
Nacos和Zookeeper对比
查看>>
Nacos在双击startup.cmd启动时提示:Unable to start embedded Tomcat
查看>>
Nacos如何实现Raft算法与Raft协议原理详解
查看>>
Nacos安装教程(非常详细)从零基础入门到精通,看完这一篇就够了
查看>>
Nacos实战攻略:从入门到精通,全面掌握服务治理与配置管理!(下)
查看>>
Nacos心跳机制实现快速上下线
查看>>
Nacos服务注册与发现demo
查看>>
Nacos服务注册总流程(源码分析)
查看>>
nacos服务注册流程
查看>>
Nacos服务部署安装
查看>>
nacos本地可以,上服务器报错
查看>>
Nacos注册中心有几种调用方式?
查看>>
nacos注册失败,Feign调用失败,feign无法注入成我们的bean对象
查看>>
nacos源码 nacos注册中心1.4.x 源码 nacos源码如何下载 nacos 客户端源码下载地址 nacos discovery下载地址(一)
查看>>