java的三大特性之一继承概述
0.继承-----注意事项
00.子类最多只能继承一个父类(指直接继承)
01.java所有的类都是Object的子类
02.JPK6.0中有202个包3777个类,接口,异常,枚举,注释和错误
03.在做开发的时候强烈建议多查jdk帮助文档
04.在使用类是,实在不知道怎么办。多问google大神。
05.super()默认调用父类的无参数构造,必须是子类构造方法中的第一条语句。
06.实例化子类对象,默认会先执行父类的无参数构造时,使用spuer(参数)重复调用父类中的有参数构造,会默认直接调用父类中的有参数构造,不会调用父类中的无参数构造。
Object类的重写
Object类是所有类的父类。在java中,所有的java类都直接或者间接的继承了java.lang.Object类。Object类是所有java类的祖先。在定义一个类时,没有使用extends关键字,也就是没有显示地继承某个类,那么这个类直接继承Object类。所有对象都继承这个类的方法。
Object类定义了大量的可被其他类继承的方法,下表:
| 方法 | 说明 |
| toString() | 返回当前 本身的有关信息,按字符串对象返回 |
| equals() | 比较两个对象是否是同一个对象,若是,返回true |
| clone() | 生成当前对象的一个副本,并返回 |
| hashCode() | 返回该对象的哈希代码值 |
| getClass() | 获取当前对象所属的类信息,返回Class对象 |
instanceof
instanceof操作符由于判断一个 引用类型所引用的对象是否是一个类的实例
方法重载的概念
简单的说;方法重载就是类的同一种功能的多种实现方式,到底采用哪种方式,取决于调用者给出的参数。
注意事项:
00.方法名相同
01.方法的参数类型,个数,顺序至少有一项不同
方法的覆盖:
00.子类的方法返回值类型,参数,方法名称,要和父类方法的返回类型,参数,方法名称完全一样,否则编译出错。
01.子类方法不能缩小父类方法的访问权限。
抽象类和抽象方法
00.抽象类不能被实例化
01.可以有0~多个抽象方法
02.非抽象类必须重写父类的所有抽象方法
final修饰符
00.修饰的类,不能再被继承
01.修饰的方法,不能被子类重写
02.修饰的变量将变成常量,只能在初始化时进行赋值。
abstract也可以用于方法--------抽象方法
00.抽象方法没有方法体
01.抽象方法必须在抽象类里
02.抽象方法必须在子类中被实现。除非子类是抽象类。
03.抽象方法只有方法声明,没有方法实现。有抽象方法的类必须声明为抽象类。子类必须重写所有的抽象方法才能实例化,否则子类还是一个抽象类。
java的三大特性之一继承概述的更多相关文章
- 【转】java提高篇(二)-----理解java的三大特性之继承
[转]java提高篇(二)-----理解java的三大特性之继承 原文地址:http://www.cnblogs.com/chenssy/p/3354884.html 在<Think in ja ...
- Java 浅析三大特性之一继承
上文Java 浅析三大特性之一封装我们说到Java是一个注重编写类,注重于代码和功能复用的语言.Java实现代码复用的方式有很多,这里介绍一个重要的复用方式--继承. 在介绍继承之前,我们要明确一点, ...
- java提高篇(二)-----理解java的三大特性之继承
在<Think in java>中有这样一句话:复用代码是Java众多引人注目的功能之一.但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情.在这句 ...
- java提高篇(二)-----理解java的三大特性之继承
在<Think in java>中有这样一句话:复用代码是Java众多引人注目的功能之一.但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情.在这句 ...
- (转)java提高篇(二)-----理解java的三大特性之继承
在<Think in java>中有这样一句话:复用代码是Java众多引人注目的功能之一.但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情.在这句 ...
- java基础(二)-----java的三大特性之继承
在<Think in java>中有这样一句话:复用代码是Java众多引人注目的功能之一.但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情.在这句 ...
- Java的三大特性之继承
此处我会分为这几个部分来理解继承是怎么样的: 1.区分封装.继承和多态 2.区分限定词的范围 3.区分隐藏.覆盖.重载 4.继承的理解 5.一道面试题的原型 --------------------- ...
- java面向对象三大特性之继承
通过重用已经测试并验证通过的代码,怎样才减少开发工作,所有开发团队都在为一问题而努力.一个久经考验的方法是通过有效地使用Java继承优化应用程序开发. 继承的从某种意义上讲,继承的短暂美就如同宇宙中所 ...
- 深入理解Java面向对象三大特性 封装 继承 多态
1.封装 封装的定义: 首先是抽象,把事物抽象成一个类,其次才是封装,将事物拥有的属性和动作隐藏起来,只保留特定的方法与外界联系 为什么需要封装: 封装符合面向对象设计原则的第一条:单一性原则,一个类 ...
随机推荐
- POJ1986(LCA应用:求两结点之间距离)
Distance Queries Time Limit: 2000MS Memory Limit: 30000K Total Submissions: 11304 Accepted: 3985 ...
- CUDA 9.1/9.2 与 Visual Studio 2017 (VS2017 15.6.4) 的不兼容问题
2018年7月9日更新: CUDA已推出9.2版本,最高支持MSVC++ 14.13 _MSC_VER == 1913 (Visual Studio 2017 version 15.6). 然而最新版 ...
- 同时安装Python2与Python3,安装第三方包,老是报错
同时安装Python2与Python3,安装第三方包,老是报错提示Fatal error in launcher: Unable to create process using '"',那可 ...
- [Forward]Improving Web App Performance With the Chrome DevTools Timeline and Profiles
Improving Web App Performance With the Chrome DevTools Timeline and Profiles We all want to create h ...
- SendMail发送回执及读取收件箱
一.SendMail发送有回执提示 1.邮件发送配置 Properties props = new Properties(); String smtp = "smtp.qq.com" ...
- C# Andriod AES 加密算法
android端: package com.kingmed.http; import java.io.UnsupportedEncodingException; import javax.crypto ...
- 30.构建单机多容器环境-故障&31.构建单机多容器环境
主要的命令是docker run .主要是用它来构建容器 关机打开序列化 31.构建单机多容器环境 构建自己单机的多容器 加入我们做一个应用程序 -d是在后台运行,不会阻塞你的命令行 之前有一个空的a ...
- 如何使用jmeter连接数据库并提取数据库中的值作为参数,与响应信息中提取的值进行比较
思路: 连接数据库 获取数据库返回的数据 获取接口返回的数据 两者返回数据进行对比验证 连接数据库 1.jmeter要链接mysql数据库,首先得下载mysql jdbc驱动包(注:驱动包的版本一定要 ...
- Keras输出每一层网络大小
示例代码: model = Model(inputs=self.inpt, outputs=self.net) model.compile(loss='categorical_crossentropy ...
- 前端面试题整理---JS基础
为了督促自己学习,整理了一下前端的面试题 JavaScript: JavaScript 中如何监测一个变量是String类型? typeof(obj)==="string"; ty ...