文档章节

java 中this和super关键字

涂涂tutu
 涂涂tutu
发布于 2017/07/25 15:06
字数 575
阅读 2
收藏 0

java中参数分为隐式参数和显式参数。

显式参数分为形参和实参

方法demo中的String类型参数str就是形参,代表着我调用demo方法,需要传入一个String类型的参数。

实际调用demo方法是,传入的String类型的参数“aa”就是一个实参。

如果传入的参数不是String类型的,就会出现异常。提示这个demo方法的参数是String类型的,传入int类型的参数就会报异常。

隐式参数:this和super:

在java中,每一个方法都会有两个隐式参数,分别是this和super,

this在普通方法中代表的是当前对象,this.name就是当前对象中的name属性。

如果在构造方法中,this表示正准备构建的对象,在Demo构造方法中,this代表正准备构建的对象Demo,this.name代表Demo中的name属性。构造方法中的name属性只是一个参数,this.name=name表示当我实例化Demo对象时,把传入的参数赋值给当前Demo对象的name属性。

注意:this不可用于静态方法。

super:超级的意思,在程序中super代表着父类的意思,在java中如果类与类之间没有继承关系,那么所有类都继承的是Object类,Object在java中代表超类的意思。

Demo没有显式 的继承任何类,其实他默认的继承了Object类,Demo类已经继承了Object中所有非私有的方法和属性,toString()方法就是Object中的方法,在Demo中进行重写,super.toString()就是调用Demo的父类Object类中的toString()方法。

实例化Demo1对象后,能调用demo()方法,说明Demo1把Demo的demo()方法继承过来了,可以直接调用并且赋值为李四,所以输出的第一条数据是“李四”,调用demo1的时候

第一句话是super.demo("zhangsan"),表示在子类的方法中使用super关键字调用父类的demo()方法,并且赋值为"zhangsan“,所以第二行输出为zhangsan,当父类的demo 方法执行完后,最后执行的当前方法输出demo1.

最后的输出结果:

 

© 著作权归作者所有

共有 人打赏支持
涂涂tutu
粉丝 0
博文 8
码字总数 2060
作品 0
程序员
Java编程学习:继承的概念及方法

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互...

Java小辰
05/30
0
0
Java学习资料-标识符、关键字

1、标识符 (1)Java对各种变量、方法和类等要素命名时使用的字符序列称为标识符。凡是自己可以起名字的地方都叫标识符,都遵守标识符的规则。 (2)Java标识符命名规则: 标识符由字母、下划...

晓阳
2015/01/05
0
0
Java基础笔记 -------------面向对象上(三大特性)

面向对象三个特性:继承(Inheritence)、封装(Encapsulation)、多态(Polymorphism). 1、封装(Encapsulation): 类包含了数据与方法,将数据与方法放在一个类中就构成了封装(一般来说,...

查封炉台
2014/04/21
0
0
Java关键字(六)——super

  在 Java关键字(五)——this 中我们说 this 关键字是表示当前对象的引用。而 Java 中的 super 关键字则是表示 父类对象的引用。   我们分析这句话“父类对象的引用”,那说明我们使用的...

ysocean
06/25
0
0
JavaScript 中的继承:ES3、ES5 和 ES6

选择一种继承方式 JavaScript 是一门动态语言,动态意味着高灵活性,而这尤其可以体现在继承上面。JavaScript 中的继承有很多种实现方式,可以分成下面四类: Mixin 模式,即属性混入,从一个...

天方夜
07/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

VSCode 搭建Vue开发环境之Vue CLI

一、简介说明 1.关于VS Code开发工具,安装和配置,更多可以参考以前文章 2.关于Vue.js,Vue是一个优秀的渐进式前端框架,不仅易于上手,还便于与第三方库或既有项目整合。 3.关于Vue是使用方...

tianma3798
32分钟前
2
0
MySQL 相关博客整理

1. 《深入理解 MySQL 底层实现》 简评:文章从硬盘底层存储原理讲解到MySQL存储原理,其中涉及InnoDB 和 Myisam 中 B+Tree 的应用,以及常见数据库优化思路,算是一片很不错的讲解MySQL原理的...

科陆李明
42分钟前
2
0
pada rabbitmq server mangage

查看配置文件 ubuntu@node4:/etc/rabbitmq$ lltotal 28drwxr-xr-x 2 rabbitmq rabbitmq 4096 Jun 6 13:52 ./drwxr-xr-x 104 root root 12288 Sep 26 11:39 ../-rw-r--r-- ......

qwfys
50分钟前
0
0
SpringBoot进阶

慕课网链接 表单数据的验证 在pojo类属性的上面添加注解 @Entitypublic class Girl { @Id @GeneratedValue private Integer id; @NotBlank(message = "这个字段...

踏破铁鞋无觅处
57分钟前
1
0
【SylixOS】QT-QWS流程介绍

QWS简介 QWS(QT Windows System)是QT自行开发的窗口系统,体系结构类似X Windows的C/S结构。QWS Server在物理设备上显示,QWS Client实现界面,两者通过socket进行彼此的通讯。在很多嵌入式系...

suokin
57分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部