1. 首页
  2. Java基础

024-二十四、Java的this和重载

this关键字

普通方法中,this总是指向调用该方法的对象。

构造方法中,this总是指向正要初始化的对象。

总结,其实this主要要三种用法:
1、表示对当前对象的引用!

2、表示用类的成员变量,而非函数参数,注意在函数参数和成员变量同名是进行区分!其实这是第一种用法的特例,比较常用,所以那出来强调一下。

3、用于在构造方法中引用满足指定参数类型的构造器(其实也就是构造方法)。但是这里必须非常注意:只能引用一个构造方法且必须位于开始!

还有就是注意:this不能用在static方法中!所以甚至有人给static方法的定 义就是:没有this的方法!虽然夸张,但是却充分说明this不能在static方法中使用!
24-二十四、Java的this和重载"

重载(Overload)

重载(overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。每个重载的方法(或者构造方法)都必须有一个独一无二的参数类型列表。最常用的地方就是构造器的重载。

重载规则

被重载的方法必须改变参数列表(参数个数或类型或顺序不一样);

被重载的方法可以改变返回类型;

被重载的方法可以改变访问修饰符;

被重载的方法可以声明新的或更广的检查异常;

方法能够在同一个类中或者在一个子类中被重载。

无法以返回值类型作为重载函数的区分标准。

由于上一节已经演示过构造方法的重载,在这里就只演示方法的重载了

如图:
24-二十四、Java的this和重载"

【练习题】构造方法的重载:

定义一个名为 Vehicles(交通工具)的基类,该类中应包含 String 类型的成员属性 color(颜色),还应包含成员方法 run(行驶,在控制台显示“小汽车已经开动了”),并编写2构造方法

无参构造:调用 run 方法

有参构造:调用无参构造,并且有个color参数为string类型,并且将参数赋值给成员变量,无参构造最后一句代码为System.out.println("小汽车是" + this.color + "颜色");

按照下面格式输出(请都使用this关键字调用类成员)。
24-二十四、Java的this和重载"

答案在公众号回“构造方法重载”

写完了如果写得有什么问题,希望读者能够给小编留言,也可以点击[此处扫下面二维码关注微信公众号](https://www.ycbbs.vip/?p=28 "此处扫下面二维码关注微信公众号")

JS中文网,Javascriptc中文网是中国领先的新一代开发者社区和专业的技术媒体,一个帮助开发者成长的社区,是给开发者用的 Hacker News,技术文章由为你筛选出最优质的干货,其中包括:Android、iOS、前端、后端等方面的内容。目前已经覆盖和服务了超过 300 万开发者,你每天都可以在这里找到技术世界的头条内容。

本文著作权归作者所有,如若转载,请注明出处

转载请注明:文章转载自「 Java极客技术学习 」https://www.javajike.com

标题:024-二十四、Java的this和重载

链接:https://www.javajike.com/article/1332.html

« 025-二十五、Java之继承
023-二十三、面向Java对象和类、构造方法以及调用非构造方法»

相关推荐

QR code