惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

C
Check Point Blog
IT之家
IT之家
V
Visual Studio Blog
The Cloudflare Blog
博客园 - 司徒正美
Jina AI
Jina AI
博客园_首页
阮一峰的网络日志
阮一峰的网络日志
美团技术团队
S
SegmentFault 最新的问题
博客园 - 聂微东
人人都是产品经理
人人都是产品经理
T
Tailwind CSS Blog
罗磊的独立博客
酷 壳 – CoolShell
酷 壳 – CoolShell
量子位
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Hugging Face - Blog
Hugging Face - Blog
博客园 - 【当耐特】
博客园 - 三生石上(FineUI控件)
爱范儿
爱范儿
博客园 - Franky
Last Week in AI
Last Week in AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知

博客园 - 震

关于反射中方法指针中我遇到的问题 一些关于数据库的问题 使用ORACLE和MYSQL的简单心得 出来混总有一天要还的 Java中的访问修饰符 xslt学习简单笔记 XML schema学习笔记 DOM中对象的方法(转贴) 学习JavaScript的开源好东东 关于CSS中的一些问题 - 震 - 博客园 web标准的悄然袭来 替换字符性能测试 在JAVA中调用外部可执行程序 - 震 - 博客园 一小练习 - 震 - 博客园 Java中的String类和StringBuffer类 将Java对象转为String的几种方法剖析(转贴) java 中的随机数用法 两种特殊的Java容器类List和Set分析[转贴] java.util.list初体验
Java中的static、final、this、super
· 2006-07-05 · via 博客园 - 震

一.static

静态方法:
        我们在写System.in的时候并没有用new去创建它,这是因为它是一个静态的方法,这个意味着告诉Java编译器,我这个方法不需要创建一个此类的对象即可使用。一般说来,静态方法常常为应用程序中的其他类提供一些实用工具所用,Java的类库中大量的静态方法也是出于这个目的的。

静态变量:
        静态变量也叫类变量,所有的此类实例共享此静态变量,也就是说在类装载时,只分配一块存储空间,所有此类的对象都可以操控此块存储空间(final不讨论)。在虚拟机加载的时候,类变量会优于其他非static变量。在继承时候,会先加载化父类的static变量,然后是子类的。

二.final
final成员:
        在定义类中变量的时候加上了final,表示一旦被初始化便不可改变,这里不可改变的意思对基本类型来说是其值不可变,而对于对象变量来说其引用不可再变。我们也经常称为常量(常量命名规范为大写)。

final方法:
        将方法声明为final,那就说明你已经知道这个方法提供的功能已经满足你要求,不需要进行扩展,并且也不允许任何从此类继承的类来覆写这个方法,但是继承仍然可以继承这个方法,也就是说可以直接使用。

final类:
        当你将final用于类身上时,表示类是无法被任何人继承的,那也就意味此类的设计已被认为很完美而不需要进行修改或扩展。

三.this和super
        Java中this通常指当前对象,super则指父类的。当你想要引用当前对象的某个方法或某个成员,可以利用this来实现这个目的。this的另一个用途是调用当前对象的另一个构造函数。而如果引用父类的某个东西,则是super。在继承的过程中,如果子类的方法覆盖了父类的方法,想调用父类被覆盖的方法,就得用到super。其中比较特殊的是在构造函数中,this和super不是用“.”连接一个方法或成员,而是用super后加参数的是用来调用父类中具有相同形式的构造函数(例:super()),this后加参数则调用的是当前具有相同参数的构造函数(例:this())。在很多地方,有this更能使程序读的更流畅些。