理解

super 用法:
1. 访问父类构造函数,super()无参构造为默认,super(参数)有参构造,必须出现在子类构造方法的首行
2. 访问父类成员变量,super.父类变量名
3. 访问父类方法,super.父类方法名()
this 意义:当局部变量和成员变量发生冲突,用this区分
1. 调用构造方法,this(),this(参数)
2. 调用成员变量,this.对象属性名
3. 调用成员方法,this.对象方法名

区分

  1. super是当前对象的父对象的引用,本质上是一个Java关键字,也可以理解指向自己父类对象的一个指针
    this指的是当前对象的引用,本质上是个对象本身的指针,在同一个类中调用其他方法

注意

  1. super和this不能同时出现在一个构造方法里
    因为this必然调用其他构造方法,其他的构造方法中肯定有super存在,所以在同一个构造方法里有相同的语句,会失去语句的意义,编译器也不会通过
  2. super和this都不能在static环境中适用(static变量、方法、语句块)
    因为它们都指的是对象

看影响的例子

package com.aaa.p060302;
class Animal{protected String name;protected int age;public Animal(){}public Animal(String name,int age){this.name = name;this.age = age;}public void show(){System.out.println("父类"+name+"年龄"+age);}
}
class Dog extends  Animal{String color;int age = 10;String name = "哈哈";public Dog(String xm,int xage,String xc){super.name = xm;super.age = xage;color = xc;}@Overridepublic void show(){System.out.println("子类age"+age);super.show();System.out.println("子类color"+color);}
}
public class Demo0604 {public static void main(String[] args) {Dog d = new Dog("旺财",100,"黄色");d.show();}
}

看下debug时候,实例d的参数情况:

运行结果:

继承/理解 super和this关键字相关推荐

  1. Java学习(静态static关键字,数组工具类Arrays,数学相关工具类(绝对值,向上取整,向下取整),继承,super和this关键字,抽象)

    2022/1/2 (1/6)Java学习 1.静态Static关键字概述 一旦用了static关键字,那么这样的内容不再属于对象自己,而是属于类的,所以凡是本类的对象,都共享同一份. 2.静态stat ...

  2. Java类的继承关键字_Java的第八天(类的继承、super关键字的使用、方法的重写)...

    39.类的继承java 描述类的时候,咱们若是发现有几个类有重复的属性和方法,咱们就能够采用继承的方法来设计ide 使用extends关键字来继承this 语法:设计 class 子类 extends ...

  3. 1.4 面向对象编程中级 对象的继承与super关键字-跟着韩老师学JavaSE

    大佬给推荐的韩顺平老师的课程 2021年刚刚录的船新版本! [零基础 快速学Java]韩顺平 零基础30天学会Java 硬把从另一个讲师那里看了300多集的我拽过来 几十节课一下子爱上这个节奏了!安利 ...

  4. (兔C残篇)Java 面向对象的三个基本特征:继承,Super关键字的使用,this关键字的使用,super和this的区别,方法重写

    如文章标题,今天兔C残篇阐述的话题如下: 文章目录 1.什么是继承 1.1 democode 1.2 关于继承的理论知识概念 2. Super 关键字 3.this 关键字 4.this 和 supe ...

  5. Java:继承之super关键字,继承之私有权限,继承之方法重写,继承之object类,继承之简单工厂模式

    一.继承的概念及用法       继承背后的思想就是        基于已存在的类来构建新类         当从已存在类继承时,就重用了它的方法和属性,还可以添加新的方法和属性来定制新类以应对需求 ...

  6. 【继承、super、this、抽象类】

    一 继承 1.1 概述 多个类可以称为子类,单独那一个类称为父类.超类(superclass)或者基类. 继承描述的是事物之间的所属关系,这种关系是:is-a 的关系. 定义 继承:就是子类继承父类的 ...

  7. python 重写抽象类编译错误_从零开始的Java之旅5.0继承、super、this、抽象类

    前言 昨天我们对Java的类与对象.封装.构造方法进行了充分讲解,今日我们学习继承.super.this.抽象类 今日内容: 三大特性--继承 方法重写 super关键字 this关键字 抽象类 继承 ...

  8. 继承、super、this、抽象类

    [继承.super.this.抽象类] 今日内容 三大特性--继承 方法重写 super关键字 this关键字 抽象类 教学目标 能够解释类名作为参数和返回值类型 能够写出类的继承格式 能够说出继承的 ...

  9. java 继承、super、this、抽象类

    java 继承.super.this.抽象类 三大特性--继承 方法重写 super关键字 this关键字 抽象类 第一章 继承 1.1 概述 由来 多个类中存在相同属性和行为时,将这些内容抽取到单独 ...

最新文章

  1. linux shell ls 时间排序显示
  2. [vue] 说说你对provide和inject的理解
  3. 国家部委对4G调研:未定给中电信联通发放牌照
  4. HTML+CSS+JS实现 ❤️3D悬浮粒子翻转动效❤️
  5. PG13用pg_rman进行备份恢复
  6. linux手动注入网络数据_Linux网络 - 数据包的接收过程【转】
  7. 给UILabel中的文字加删除线
  8. java list 时间排序吗_java collection.sort()根据时间排序list | 学步园
  9. Jupyter Notebooks学习分享
  10. Linux服务器程序规范化
  11. 医疗管理系统-检查组管理
  12. 多御浏览器新出的手机版本有什么功能?
  13. python人工智能应用实例_90后博士说,从Python到人工智能只差这35个趣味案例,越学越有趣...
  14. Ubuntu/Deepin下Python3.8出现SSL错误的解决方案
  15. 学习Ansible自动化
  16. 采用html 的a标签,href连接为文件时无法下载解决方案
  17. 租房信息采集并做数据分析
  18. 51单片机学习笔记之KEIL5的安装与破解
  19. centOS官网下载教程
  20. 综述 | 358 篇论文, 最新知识图谱KG综述

热门文章

  1. SpringCloud OpenFeign 服务调用传递 token
  2. springboot websocket 传递 头信息 协议头 token 的前后端解决方案
  3. 北京通州规划图全面汇总
  4. 第二次作业--分析微博
  5. 雾霾环保主题动态网站设计作业
  6. form表单中的 action=./? 是什么意思
  7. eNSP配置PC路由
  8. 为什么学习Python?数据给你八大理由
  9. 庞贝中文离线地图App上线
  10. 大数据——Flume安装配置和使用