public class final_static {
public static void main(String[] args) {
myclass a1=new myclass();
myclass a2=new myclass();
/**
* static 修饰的成员变量的值可以被改变,而final修饰的成员变量的值不能被修改
* final修饰的引用变量一旦初始化后就不能指向其他的对象,但是该引用对象的内容可以被改变
* 用final修饰的类不能被继承。(final是最终的,不可以更更改的,static是静态的)
* 经常的用于 -------->final修饰的基本类型变量被称为常量
* final不能用于修饰构造方法
* final有无法改变的和终态的意思
*/
//double a,b,c,d;
//a1.i=4.0;
// a1.j=4.0;
System.out.println(a1.i);
System.out.println(a1.j);
System.out.println(a2.i);
System.out.println(a2.j);
}
}
class myclass{
public final double i=Math.random(); //每一个对象访问都会生成不同的i(对于每个对象来说都会有对应的i),但是i的值是不能改变的
public static double j=Math.random(); //每次都访问的是静态的(也就说对于各个对象是共享的),但是他的值可以被改变的
}
java中final和static的简单的区别
最新推荐文章于 2021-12-12 15:42:29 发布