关于static关键字的属性,大数据培训学习分享

由于在学校有一定基础,学起来要比零基础的同学轻松一些,但是也没有十分乐观,学校的课程安排的十分紧密,稍微一松懈就会落下,来自天南海北的战友也不乏各种技能加持的大神,压力也是必然存在的,却也给了我不少的动力.大家平时相互讨论,相互帮助着学习,为着同一个高薪梦想奋斗,也让这份辛苦的日子变得格外的不凡!我融洽的氛围,一同成长,希望我们几个月后都可以是实现自己心中的期望。下面我分享一些自己在千锋这一阶段学到的知识。

  关于static关键字的属性

  一、成员变量与局部变量的区别:

  作用域:局部是从定义的变量,到当前作用范围,而成员是整个类。

  默认值:局部必须先赋值,无默认值。成员会赋初值。

  释放机制:局部使用完立即释放。成员放置于对象,对象在堆区,随对象的释放而释放。

  存放位置:局部存放在栈区,成员在堆区。

  成员变量:可以在创建对象的时候被附成默认值,还可在类中直接赋值。

  二、成员方法分类

  1:非静态的成员方法(不带static关键字的)

  2:静态的成员方法(带static关键字的)

  值得注意的是,在调用的时候非静态的成员方法要引用调用,静态的成员方法既可以使用引用调用,也可以用类名直接调用。当成员被static修饰后,就变成了静态的,会被放在静态方法区区分,而静态方法区,正如大家所知,是专门用static修饰的成员。它的特点就在于成员可以长久的保存,存活时间跟整个程序保持一致。如this的关键字,表示当前对象的引用,this里存储的当前对象的地址,在静态的方法中,不能使用非静态的成员变量,在非静态的的方法中,既可以使用静态的,也可以使用非静态的成员变量。总而言之,只要在方法中没有使用非静态的成员变量,就使用静态的方法。而比较二者,区分就在于静态与非静态成员方法的比较。静态的成员方法,比非静态的效率高,速度快,节省内存。

  三、static作用

  static作用大致可以总结为修饰成员变量和成员方法。保值-使成员的存活时间(生命周期)与程序一致。而被static修饰的成员变量的特点也可简单归纳为以下三点:

  1.被当前类的所有对象共享。

  2.随着类的加载而加载,变量被放在静态方法区,执行顺序优先于非静态的成员变量

  3.以使用类名或引用调用。

  此时,便可小结静态和非静态的区别:

  1.存储的数据的使用:非静态只能供当前的对象使用,静态供所有对象共享。

  2.生命周期:非静态跟对象一致,静态跟程序一致。

  3.存储的位置:非静态在对象中,静态在方法区中。

  4.访问方式:非静态引用,静态的引用或类名

  至于被static修饰的成员方法的特点,我们也可得知静态的成员方法只能使用静态的成员变量,非静态的内部既可以使用静态的,也可以使用非静态的。

  以上是近来对所学知识点的一个小结,如有错误,请大家指出,会仔细修改。既然选择程序员并开始自己的职业生涯,就要做好心理准备,高薪的同时就意味着高付出,现在,脚下的路崎岖且漫长,希望自己和各位同行都够坚定自我,走到最后,笑到最后。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值