当前位置: 首页 > news >正文

继承java_Java— 继承

继承

Java中的继承是单继承。

一个类只有一个父类

1、继承是类与类之间的一种关系,用来实现代码的复用;

2、子类拥有父类的所有属性和方法;但父类中属性和方法的修饰符不能是private,

子类不能继承父类private 修饰的属性和方法

3、继承的语法规则是: class 子类 extends 父类 eg. class Dog extends Animal{ } extends为继承关键字

方法的重写:

方法的重写:

1、什么是方法的重写?

如果子类对继承父类的方法不满意,是可以重写父类继承的方法的,当调用的时候会优先调用子类的方法。

2、语法规则:

a.返回值类型

b.方法名

c.参数类型及个数

都要与父类继承的方法相同,才叫方法的重写

继承的初始化顺序:

1、初始化父类 再初始化子类;

2、先执行初始化对象中属性,在执行构造方法中的初始化;

父类 属性初始化-构造方法——子类属性初始化-构造方法

final 关键字---最终

final修饰类,该类不能被继承

final修饰方法,该方法不能被重写

final修饰属性,只能在构造方法里复制或者初始化赋值,且必须赋值。

final修饰变量,即为常量

super关键字:

当在子类中需要调用夫类的属性时,可以使用super关键字;

使用方法:调用属性super.age

调用方法super.eat()

super关键字的应用:

1. 子类的构造过程中必须调用其父类的构造方法

2. 如果子类的构造方法没有显示调用父类的构造方法,则系统会默认调用父类的无参构造方法。

3. 如果显示的调用构造方法,必须在子类的构造方法的第一行,super()。

4. 如果子类的构造方法中既没有显示调用父类的构造方法,父类又没有无参的构造方法,则编译就会报错

Object 类

object类是所有类的父类。

如果一个类没有使用extends关键字明确标识继承另外一个类,则这个类默认继承object类。

object中方法适用于所有子类。

1、toString() 通过重写这个方法表示出对象属性。

2,toString()方法返回的对象是哈希code码(对象地址的字符串)

Source----Gernerate to String

equals()----返回值是布尔类型

比较的是对象的引用是否指向同一块内存地址-------对象实例化时,即给对象分配内存空间

使用方法如:dog.equals(dog2);

如果是两个对象,但想判断两个对象的属性是否相同,则重写equals()方法

1.地址是否相同----if (this == obj)

2.对象是否为空----if (obj == null)

3.getClass()可以得到类对象,判断类型是否一样-----if (getClass() != obj.getClass())

new出来的是类的对象,关注的是类的属性的具体的数据;

类对象是类的代码信息,关注的是类有什么属性和方法

4.属性值是否一样----if (age != other.ag)

Source----Gernerate hashCode and equals()

相关文章:

  • java guid_细说Java生成GUID的实现方法
  • java多租户_(九十二)java版spring cloud 多租户社交电子商务-gateway(实现限流)...
  • foxpro mysql_Foxpro数据库命令汇总
  • java generatedvalue_java – 在JPA @GeneratedValue列中手动指定主键的值
  • java io byte_JavaIO之字节流学习笔记
  • 八大排序方法java_八大排序java
  • java一个类怎么调用另一个类的变量_如何在一个类里调用到另一个类的变量的值...
  • java return后执行_java 问题 如果前一个return执行了 那么后面的一系列System.out.println 还会执行吗...
  • java持久层_java访问持久层技术的进化
  • java set encoding file_系统变量file.encoding对Java的运行影响有多大?(转)good
  • java运行一段时间变慢_tomcat 运行程序很慢 运行一段时间就报错: java.lang.OutOfMemoryError: PermGen space...
  • java的开发人员数量_Java开发人员最容易出现的几类错误
  • 字符串加减转数字java_剑指Offer解题报告(Java版)——字符串转换为数字 49
  • Java txt 下拉刷新_「小程序JAVA实战」小程序页面的上拉下拉刷新(50)
  • Java语言西安交大高起专_2018年西安交大网络学院高起专/本英语入学考试复习题...
  • 分享的文章《人生如棋》
  • (ckeditor+ckfinder用法)Jquery,js获取ckeditor值
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • 5、React组件事件详解
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • Eureka 2.0 开源流产,真的对你影响很大吗?
  • JS学习笔记——闭包
  • 前端攻城师
  • 前端之Sass/Scss实战笔记
  • 什么是Javascript函数节流?
  • 学习HTTP相关知识笔记
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • ###51单片机学习(1)-----单片机烧录软件的使用,以及如何建立一个工程项目
  • #13 yum、编译安装与sed命令的使用
  • #162 (Div. 2)
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (4) PIVOT 和 UPIVOT 的使用
  • (42)STM32——LCD显示屏实验笔记
  • (C++)八皇后问题
  • (Redis使用系列) Springboot 使用redis实现接口Api限流 十
  • (过滤器)Filter和(监听器)listener
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (译) 函数式 JS #1:简介
  • .NET 设计一套高性能的弱事件机制
  • .net对接阿里云CSB服务
  • @Repository 注解
  • @Service注解让spring找到你的Service bean
  • @Tag和@Operation标签失效问题。SpringDoc 2.2.0(OpenApi 3)和Spring Boot 3.1.1集成
  • [AIGC] 使用Curl进行网络请求的常见用法
  • [Android 13]Input系列--获取触摸窗口
  • [AX]AX2012 AIF(四):文档服务应用实例
  • [BZOJ] 2044: 三维导弹拦截
  • [CentOs7]搭建ftp服务器(2)——添加用户
  • [ERROR] Plugin 'InnoDB' init function returned error
  • [hadoop读书笔记] 第十五章 sqoop1.4.6小实验 - 将mysq数据导入HBASE
  • [IDF]啥?
  • [JS]JavaScript 简介
  • [LeetCode]-Integer to Roman 阿拉伯数字转罗马数字
  • [LeetCode系列]3元素最近和问题的O(n^2)解法