JAVA笔记 -- this关键字
2019-12-07 16:01:52来源:博客园 阅读 ()
JAVA笔记 -- this关键字
this关键字
一、 基本作用
在当前方法内部,获得当前对象的引用。在引用中,调用方法不必使用
this.method()
这样的形式来说明,因为编译器会自动的添加。
必要情况:
- 为了将对象本身返回
java public class Leaf{ int i = 0; Leaf increment(){ i++; return this; //明确指出当前对象引用,返回当前对象 } }
引用外部工具传递方法时,为了将自身传递到外部方法
class Peeler{ static Apple peel(Apple apple){ //remove pell return apple; } } class Apple{ Apple getPeeled(){ return Peeler.peel(this); //这里的this是必要的,将自身传递给外部方法 } }
二、 在构造器中调用构造器
一个类可能有很多个构造器(重载构造器),如果在一个构造器中调用另一个构造器,避免重复代码,就可以调用其他构造器。这时,就需要
this
关键字。
调用构造器的时候,必须放在起始处
class CallConstructor(){ CallConstructor(int i){ System.out.println(i); } CallConstructor(String str){ this(6); //一定要放在起始处 System.out.println(str); //! this(6); //放在这里,编译器会报错 } }
调用构造器的时候,只能调用一次
class CallConstructor(){ CallConstructor(int i){ System.out.println(i); } CallConstructor(double n){ System.out.println(n); } CallConstructor(String str){ this(6); //一定要放在起始处 //! this(1.0); //放在这里编译器会报错,不可以调用两次 //其实说白了也是调用构造器的时候,一定要放在开头 System.out.println(str); } }
除了构造器之外,其他方法禁止调用构造器
class CallConstructor(){ CallConstructor(int i){ System.out.println(i); } CallConstructor(double n){ System.out.println(n); } void CommMethod(){ //! this(6); //这是错误的!一定不可以这么写 System.out.println("Common Method"); } }
三、 static的含义
static
顾名思义,就是静态的意思。这个关键字还会在后续继续探究。static方法
static方法
就是没有this的方法。static方法
不能调用非静态方法,反过来是可以的。static方法具有全局函数的语义
原文链接:https://www.cnblogs.com/klenkiven/p/12000893.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-12
- 2020年深圳中国平安各部门Java中级面试真题合集(附答案) 2020-06-11
- 2020年java就业前景 2020-06-11
- 04.Java基础语法 2020-06-11
- Java--反射(框架设计的灵魂)案例 2020-06-11
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash