static和filal 有代码

来源:互联网 发布:新网域名实名认证 编辑:程序博客网 时间:2024/04/28 15:53
 

一个永不改变的编译时常量
一个在运行时被初始化的值,而不不希望他被改变 
如果同时用到static和filal的时候 那么这个便是只占据一段不能改变的存储空间

下面是代码

 

package finals;

import java.util.Random;

 

public class FinalShuJu {
 private static Random rand = new Random(47);
 private String id;

 public FinalShuJu(String id) {
  this.id = id;
 }

 private final int valueOne = 9;
 private static final int value_Two = 99;
 private static final int value_three = 39;
 private final int i4 = rand.nextInt(20);
 static final int int_s = rand.nextInt(20);
 private Value v1 = new Value(11);
 private final Value v2 = new Value(22);
 private static final Value v3 = new Value(33);
 private final int[] a = { 1, 2, 3, 4, 5, 6 };

 public String toString() {
  return id + ";" + "i4=" + i4 + "int_s=" + int_s;
 }

 public static void main(String[] args) {
  FinalShuJu finalShuJu = new FinalShuJu("finalShuJu");// 传过去的是一个字符串
  finalShuJu.v2.i++;
  finalShuJu.v1 = new Value(9);
  for (int i = 0; i < finalShuJu.a.length; i++) {
   finalShuJu.a[i]++;
  }
  System.out.println(finalShuJu);
  System.out.println("created new finalShuJu");
  FinalShuJu finalShuJu2 = new FinalShuJu("finalShuJu2");
  System.out.println(finalShuJu);
  System.out.println(finalShuJu2);
 }
}

class Value {
 int i;

 public Value(int i) {
  // TODO Auto-generated constructor stub
  this.i = i;
 }

}

原创粉丝点击