前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java | Static 与 final

Java | Static 与 final

作者头像
凌川江雪
发布2019-03-15 14:31:29
3390
发布2019-03-15 14:31:29
举报

Static

#Static 定义的变量
  • 其调用:
类名.变量名
  • 所有同一个类的类成员共享,共用一个;
  • 其值可以修改
  • 不能将方法体内的局部变量声明为static
#Static 定义的方法
  • 其调用:
类名.方法
如 Math.pow
  • 所有同一个类的类成员共享,共用一个;
  • 其值可以修改
  • 静态方法不能向对象实施操作,静态方法中不可以使用this关键字;
  • 不能访问类中实例域(非static域 / 变量 / 方法),可访问类的静态域 / 变量(而且无需类名.变量名的普通调用格式):
//demo
class Employee
{
  private static int nextId = 1;
  public static int getNextId()
  {
   return nextId;
  }
}

被static定义的静态域独立于Java 的堆栈,独占一个存储空间; static的方法在装载class得时候往往首先完成,比构造方法早,此时非static得属性和方法还没有完成初始化。 所以不能调用。

#Static 定义的类中程序块
public class example{
    static{
        //some
   }
}

在该段代码被执行时,首先执行static中的程序,并且只会执行一次。


final

#final定义的类
  • 不能被继承;不允许其他人对这个类进行任何改动;
  • 类中所有方法都被隐式设置为final;
  • 类中的成员变量可以被定义为final或非final;
#final定义的方法
  • 不能被重写
#final定义的变量
  • 只能赋值一次,赋值后不能再修改;
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.03.10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Static
    • #Static 定义的变量
      • #Static 定义的方法
        • #Static 定义的类中程序块
        • final
          • #final定义的类
            • #final定义的方法
              • #final定义的变量
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档