Java语言基础:final和static

发布时间:2011-3-29 20:11    发布者:1770309616
关键词: final , Java语言基础 , static
Java语言基础.pdf (205.39 KB)


1. final
final可以修饰类,成员方法,成员变量;表示最终的,不能修改,不能继承的:
•final类不能被继承,类中的方法默认是final方法,但类中的成员变量不是。
•final方法不能被子类覆盖,可以这样理解:JAVA中的普通方法等于C++的虚方法,JAVA中的final方法等于C++中的普通方法。
•final成员表示常量,只能在声明时赋值一次,以后不能再被赋值。
public class Test {
    private final String S="final实例变量";
    private final int A=10;
}
•final函数参数表示该参数为常量,不能在函数中改变:
public void f1(final int i){
    i++; //错误:i是final类型的,值不允许改变
    System.out.print(i);
}
2. static
static表示全局静态,用来修饰成员方法,成员变量,可以形成static代码块:
•static方法与c++的静态方法类似,不必创建类实例即可使用,不能使用this和super关键字,且只能访问类中的static成员或static方法。
•static成员变量与C++的静态成员类似,为所有类实例共用,注意JAVA没有局部静态变量。
public class Main {   
    static int i = 100;
}
•static静态代码块,是在JVM加载类时就执行的代码块,只执行一次,可以用来初始化静态变量:
public class Main {   
    static int i = 100;
    static {
        i = 30;
    }
    public static void main(String[] args) {
        // 此处i应该是30
        System.out.println(i);
    }
}
3. final和static一起使用
类似于C++的全局常量:
static final int j = 200
本文地址:https://www.eechina.com/thread-60393-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
youyou_zh 发表于 2011-4-5 13:59:15
fafa
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表