关键字

final static
final意思是最后的,最终的,顾名思义,最后的东西就是不能被更改了,一个结尾的感觉。
我们经常可以看到final用到一下的地方:
public final class Student{}
public final String name="zhang";
public final void Study(){}


我们也可能常常想这样:

public class UNStudent extend Student{} //继承Student类

Student stu=new Student(); //修改名字
stu.name="li";

public void Study(){} //方法重写


这时的我们可以尽情的去尝试!

结果发现,全都报错!说明了什么?最开始的时候我们就说过了,final是最后的意思。最后的东西
是不允许被修改的,所以,用final修饰的类,属性,方法:类不能被继承;属性不能被修改;方法不能被重写.


static 静态的
static有什么特点呢?
用static修饰的类,方法,属性都会有一块独立的静态内存空间,仅有一份,就好比说:


public static class Student{}
public static String name="zhang";
public static void Study(){}


Student stu=new Student();
stu.neme="张三";
Student stu1=new Student();
stu1.neme="李四";
Student stu2=new Student();
stu2.neme="王五";

System.out.println(stu.name);
System.out.println(stu1.name);
System.out.println(stu2.name);

究竟会输出什么呢?
你觉得呢?
答案是全部是 王五 !!!

为什么呢?因为 用static修饰之后,有一块单独的内存空间来存储,不会去开辟新的内存空间,就好比穿袜子一样,每次只能穿一双袜子,几天前穿的和现在穿的自然不一样,丹文尼穿的什么袜子,肯定是现在正在穿的这双。(比喻可能有点不恰当)。所以,搞懂这些东西是甚有必要的,我们在写程序的时候很容易会用到,有时候也是很有必要的,比如,我写了一个方法,但是我不想被改动,那么我就可以用final加以限制,但心理上说,我还不会主动的,会心的取用这两个关键字,随着以后写的程序的增多,我定会领略其中的风采。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值