前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >构造器、static、this 关键字讲解

构造器、static、this 关键字讲解

作者头像
帅飞
发布2019-01-22 17:27:21
3480
发布2019-01-22 17:27:21
举报
文章被收录于专栏:Java知其所以然Java知其所以然

构造器

构造器作用:

构造器用于构造该类的实例。

构造器调用:

Java 通过 new 关键字来调用构造器,从而返回该类的实例。

构造器定义的格式:

[修饰符] 类名(形参列表){

//n条语句

} 构造器使用要点

1、通过 new 关键字调用!!!

2、构造器虽然有返回值(返回该类的对象),但是不能定义返回类型 (返回值的类型肯定是本类),不能在构造器里调用 return。

3、如果我们没有定义构造器,则系统会自动定义一个无参的构造函数。如果已定义则编译器不会添加!

4、构造器的方法名必须和类名一致!

5、构造器一般的作用就是初始化一些数据。

static关键字

在类中,用 static 声明的成员变量为静态成员变量.

1、它为该类的公用变量,属于类,被该类的所有实例共享,在类被载入时被显式初始化,

2、对于该类的所有对象来说,static 成员变量只有一份。被该类的所有对象共享!!

3、可以使用”对象.类属性”来调用。不过,一般都是用“类名.类属性”。

4、用static声明的方法为静态方法

5、不需要对象,就可以调用(类名.方法名)

6、在调用该方法时,不会将对象的引用传递给它,所以在 static 方法中不可访问非 static 的成员。

7、可以通过对象引用或类名(不需要实例化)访问静态成员。

this关键字

为什么需要 this

我们知道类中的方法代码是在方法区中,而且只有一份,每次创建对象时,只是将对应的方法的引用赋值给所创建的对象。那么当有多个对象创建时,有个问题就出现了,系统怎么去判辩是哪个对象调用了这个方法呢?this 就由此产生了,通过将 this (其实还有 super)隐式的传入到每个普通方法上系统就可以分辨出是谁在调用这个方法,这样就可以达到一个方法多个对象使用。

this 的定义

普通方法中,this 总是指向调用该方法的对象。(不管方法里是否又调用了其他的方法,所有方法里的 this 仍然指向最初调用该方法的对象)

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

this 的用法:

  1. 让类中的一个方法,访问该类的另一个方法或属性。
  2. 使用 this 关键字调用重载构造方法。避免相同的初始化代码,只能在构造方法中用,并且必须位于构造方法的第一句。

this 使用时的注意事项:

this 不能用于 static 方法!(this 指向当前对象,static 方法跟对象没有一毛钱的关系)

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-07-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java知其所以然 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 构造器调用:
  • 构造器定义的格式:
  • this 的定义
  • this 的用法:
  • this 使用时的注意事项:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档