Java中super关键字和this关键字的使用

news2024/10/6 2:50:19

一.两者基本对比:(java老杜视频)

1.super和this都是能出现在实例方法和构造方法中;

2.super和this的使用分别是super. super() this.  this();

3.super和this不可以使用在静态方法中;

4.super.和this.大部分时候是可以省略的;

this.不能省略的情况为区分局部变量和成员变量的时候,例如:

private int age;
public void setAge(int age){
this.age=age;
}

super.不能省略的情况为在子类中访问父类中同名的属性变量的时候,例如:

public class A{
private int age;
}

public class B extends A{
private int age;
//super.age 表示父类的同名属性
//this.age 表示子类的同名属性
//age 表示子类的同名属性
}

5.super()和this()都只能出现在构造函数的第一行,通过当前的构造函数去调用父类或者本类的其它构造函数;

this()作用:代码复用;

super()作用:创建子类对象的时候,先初始化父类的特征;

6.当一个构造函数第一行既没有super()也没有this(),那么默认是会有一个super(),表示通过当前的构造方法去调用父类的无参构造函数,所以必须保证父类的无参构造函数存在。一个类没有任何构造函数的时候,实际上是有一个默认的无参构造函数,但是你要是写了一个有参构造函数,那这个默认的无参构造就没有了。

7.super()和this()不能共存;

8.无论如何,一个类的父类的构造函数是一定会执行的;

9.与this不同的是:super不是引用,也不保存内存地址,也不指向任何对象,super只是代表当前对象内部的那一块父类型特征。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1904001.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

动手学深度学习(Pytorch版)代码实践 -循环神经网络-54循环神经网络概述

54循环神经网络概述 1.潜变量自回归模型 使用潜变量h_t总结过去信息 2.循环神经网络概述 ​ 循环神经网络(recurrent neural network,简称RNN)源自于1982年由Saratha Sathasivam 提出的霍普菲尔德网络。循环神经网络,是指在全…

批量爬取B站网络视频信息

使用XPath爬取B站视频链接等相关信息 分析B站html框架获取内容完整代码 对于B站,目前网上的爬虫大多都是使用通过解析服务器的响应来爬取想要的内容,下面我们通过使用XPath来爬取B站上一些想要的信息 此次任务我们需要对B站搜索到的关键字,并…

Linux系统安装软件包的方法rpm和yum详解

起因: 本篇文章是记录学习Centos7的历程 关于rpm 常见命令 1)查看已经安装的软件包 rpm -q 软件包名 2)查看文件的相关信息 rpm -qi 软件包名 3)查看软件包的依赖关系 就是说要想安装这个软件包,就必须把一些前…

记录一次ffmpeg手动编译出现的问题

前言部分 使用环境: ubuntu 22.04 最近手动编译了一次的ffmpeg(参考博客ffmpeg学习:ubuntu下编译ffmpeg(全网最懒的编译脚本)),但是过程出现了一些问题,因此在此记录一下,若有疑问,欢迎讨论~。 …

15集终于编译成功了-了个球!编译TFLite Micro语音识别工程-《MCU嵌入式AI开发笔记》

15集终于编译成功了-个球!编译TFLite Micro语音识别工程-《MCU嵌入式AI开发笔记》 还是参考这个官方文档: https://codelabs.developers.google.cn/codelabs/sparkfun-tensorflow#2 全是干货! 这里面提到的这个Micro工程已经移开了&#xff1…

Overleaf :LaTeX协作神器!【送源码】

Overleaf 是一个广受欢迎的在线 LaTeX 编辑器,专为学术写作和文档排版设计。它以其协作功能和用户友好的界面而闻名,使得 LaTeX 编辑变得更加容易和直观。 软件介绍 Overleaf 提供了一个基于云的 LaTeX 编辑环境,支持实时协作,使得…

哲讯SAP知识分享:SAP资产模块常用事务代码清单

在当今日益复杂的商业环境中,企业对于资产管理的需求日益增强。SAP作为全球领先的企业管理软件提供商,其资产模块(AM)以其高效、灵活的特性,为企业提供了全面的资产管理解决方案。本文将对SAP资产事务类型进行详细介绍…

算法的空间复杂度(C语言)

1.空间复杂度的定义 算法在临时占用储存空间大小的量度(就是完成这个算法所额外开辟的空间),空间复杂度也使用大O渐进表示法来表示 注: 函数在运行时所需要的栈空间(储存参数,局部变量,一些寄存器信息等)…

MySQL第三天作业

一、在数据库中创建一个表student,用于存储学生信息 CREATE TABLE student( id INT PRIMARY KEY, name VARCHAR(20) NOT NULL, grade FLOAT ); 1、向student表中添加一条新记录 记录中id字段的值为1,name字段的值为"monkey"…

STM32第十六课:WiFi模块的配置及应用

文章目录 需求一、WiFi模块概要二、配置流程1.配置通信串口,引脚和中断2.AT指令3.发送逻辑编写 三、需求实现代码总结 需求 完成WiFi模块的配置,使其最终能和服务器相互发送消息。 一、WiFi模块概要 本次使用的WiFi模块为ESP-12F模块(安信可&#xf…

字符串——string类的常用接口

一、string类对象的常见构造 二、string类对象的容量操作 三、string类对象的访问及遍历操作 四、string类对象的修改操作 一、string类对象的常见构造 1.string() ——构造空的string类对象,也就是空字符串 2.string(const char* s) ——用字符串来初始化stri…

Win10如何设置远程桌面?

远程桌面介绍 远程桌面是一款Windows提供的远程工具,旨在连接同一局域网内的两台计算机。如果您掌握被控端电脑的IP地址,便可直接连接到这台已启用远程桌面的计算机,通过远程桌面进行文件传输或提供远程技术支持。 在同一家公司内&#xff0…

JVM专题之垃圾收集器

JVM参数 3.1.1 标准参数 -version -help -server -cp 3.1.2 -X参数 非标准参数,也就是在JDK各个版本中可能会变动 ``` -Xint 解释执行 -Xcomp 第一次使用就编译成本地代码 -Xmixed 混合模式,JVM自己来决定 3.1.3 -XX参数 > 使用得最多的参数类型 > > 非…

十一、作业

1.从大到小输出 写代码将三个整数数按从大到小输出。 void Swap(int* px, int* py) {int tmp *px;*px *py;*py tmp;} int main() {int a 0;int b 0;int c 0;scanf("%d %d %d", &a, &b, &c);int n 0;if (a<b){Swap(&a, &b);}if (a &l…

vscode配置latex环境制作beamer ppt

vscode配置latex环境制作beamer ppt 文章目录 vscode配置latex环境制作beamer ppt1. 安装Tex Live2. 安装vscode插件3. 测试Reference 写在前面&#xff0c;笔者之前一直使用overleaf来制作beamerppt&#xff0c;但是免费版本会限制编译时间上限&#xff0c;故在本地配置了late…

高级计算机体系结构--期末真题及题型总结

2024 年春季学期期末考题回顾一、名词解释二、简答题2007 年简答题2008 年简答题简答题答案 三、分析题1. MESI 和 Dragon 协议计算给定内存存取序列所需的时钟周期2007年第一题及参考答案例题及解答 2. 顺序一致性存储模型&#xff0c;判断进程的合法输出2007年第二题及参考答…

苍穹外卖 ...待更新

苍穹外卖 1、 阿里云OSS2、菜品分类查询 1、 阿里云OSS 工具类 package com.sky.utils;import com.aliyun.oss.ClientException; import com.aliyun.oss.OSS; import com.aliyun.oss.OSSClientBuilder; import com.aliyun.oss.OSSException; import lombok.AllArgsConstructor…

【每日一练】python三目运算符的用法

""" 三目运算符与基础运算的对比 """ a 1 b 2#1.基础if运算判断写法&#xff1a; if a > b:print("基础判断输出&#xff1a;a大于b") else:print("基础判断输出&#xff1a; a不大于b")#2.三目运算法判断&#xff1a;…

【云原生】Prometheus监控Docker指标并接入Grafana

目录 一、前言 二、docker监控概述 2.1 docker常用监控指标 2.2 docker常用监控工具 三、CAdvisor概述 3.1 CAdvisor是什么 3.2 CAdvisor功能特点 3.3 CAdvisor使用场景 四、CAdvisor对接Prometheus与Grafana 4.1 环境准备 4.2 docker部署CAdvisor 4.2.2 docker部署…

flask使用定时任务flask_apscheduler(APScheduler)

Flask-APScheduler描述: Flask-APScheduler 是一个 Flask 扩展&#xff0c;增加了对 APScheduler 的支持。 APScheduler 有三个内置的调度系统可供您使用&#xff1a; Cron 式调度&#xff08;可选开始/结束时间&#xff09; 基于间隔的执行&#xff08;以偶数间隔运行作业…