`
donald3003a
  • 浏览: 64162 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论
  • 淼淼E馒头: 这举列有点不恰当啊。。电影人和不同类型的电影。是两个不同概念 ...
    合成模式

final static 之间的区别

 
阅读更多
虽然从入门的时候就知道
final字段是不可能变字段
static字段是静态字段所有实例都共享这一个字段的值
但是有一个事情一直没搞清,就是既然 final的值不可变,那所有的实例对final字段的获取都是一样,那为什么还有必要用static final 这样重复的关键字
直到后面看见以下定义
public final double d = Math.random();

这样的定义类在加载的时候会初始化d字段,但是由于使用随机数,我们可以很清楚的看见生成的2个实现中每一个d的值都不一样。
所以这时候使用
public final static double fs = Math.random();

就可以使所有实现中fs值相同。
分享到:
评论

相关推荐

    final修饰符与类型转化

    final修饰符与类型转化 类型转换是java编程中比较常见的一种操作,特别是基本数据类型之间的转换,如long型转化为int型,int转化为long等等。 类型的转化可以分成两类:强制转化与自动转化,例如long i=1;这个就叫...

    Java学习笔记---15.面向对象编程10-Java中final关键字,抽象类与接口

    public static final String NAME = "newsainton"; //print()方法有方法体,所以不是抽象方法 public void print() { System.out.println("非抽象方法中,Name = "+NAME); } //fun()方法不含方法体,为...

    深入理解Java final变量的内存模型

     在构造函数内对一个 final 域的写,与随后把这个构造对象的引用赋值给一个变量,这两个操作之间不能重排序  初次读一个包含 final 域的对象的引用,与随后初次读这个 final 域,这两个操作之间不能重排序  举...

    基于JAVA的网络通信系统的毕业设计,该系统将实现客户端和服务器之间的通信,并支持多用户同时在线

    private static final int PORT = 8888; // 服务器端口号 private static ServerSocket serverSocket; private static Map, Socket> socketMap = new HashMap(); // 存储在线用户 public static void main(Str

    Java并发学习-AtomicIntegerFieldUpdater字段原子更新类.docx

    只能是可修改变量,不能使final变量,因为final的语义就是不可修改。 对于AtomicIntegerFieldUpdater和AtomicLongFieldUpdater只能修改int/long类型的字段,不能修改其包装类型(Integer/Long)。如果要修改包装...

    java 常用设计模式chm

    public static final int SYSTEM_ADMIN = 1; /** * Permission to administer a particular forum. */ public static final int FORUM_ADMIN = 2; /** * Permission to administer a particular user. */ public ...

    Translate-Language_Translator:一个允许您在90多种语言之间翻译文本和短语的Android应用。 它支持语音输入和语音输出功能

    private static final String TRANSLATE_API_KEY = < YOUR> ; private static final String GET_TRANSLATION_URL = " https://translate.yandex.net/api/v1.5/tr.json/translate " ; private static final String...

    动物招领所源码

    static属性,static方法,static块 final属性,final方法,final类 三.面向对象的思考方式 将世界看成一个个对象,对象之间可以分类(包),可以相互有继承。面向对象推荐面向接口进行编程,面向接口的核心思想是抽象(只...

    WorkFlow:简化您在android中的方法耦合

    轻松替换相互嵌套的方法之间的调用顺序增删改方便,提高代码简洁性和可读性、降低维护成本Installation:dependencies { implementation 'com.qw:workflow:0.0.4'}Usage:场景示例1依次顺序的展示Toast,Dialog,...

    最全java考试简答题

    protected,final,throw,super,synchronized,static,finally,abstract,transient,instanceof 答:protected`: `protected` 是 Java 中的一种访问修饰符,它用于指定一个成员变量或方法 可以被同一包内的类和所有子类...

    ACTION3.0语言组件参考

    Accessibility — Final class in package flash.accessibility Accessibility 类管理与屏幕阅读器之间的通信。 accessibilityProperties — Property in class flash.display.DisplayObject 此显示对象的当前...

    Java性能优化

    控制数据共享,在不建立直接关联的条件下,让多个不相关的进程或线程之间实现通信。 2.尽量避免随意使用静态变量 要知道,当某个对象被定义为stataic的变量所引用,那么GC通常是不会回收这个对象所占有的内存,如 ...

    PHP程序设计:面向对象 - 类与对象.ppt

    一、定义类 类中的函数被称为成员方法,其语法格式如下: 其中,关键字可以为public、private、protected、static、final中的任意一个(默认为publilc)。 注意函数与成员方法的区别:函数实现某个独立的功能,而...

    VP8_H264_HW_ENC_Q_COMPARE:比较 Android 设备上的 VP8 和 H.264 硬件编码器质量

    private static final String VP8_MIME = "video/avc"; private static final String VPX_SW_DECODER_NAME = "OMX.google.h264.decoder"; private static final String VPX_SW_ENCODER_NAME = "OMX.google.h264....

    AdvancedRecyclerView:Android中带有Google Admob的Advance Recycler视图的一个小示例

    AdvancedRecyclerView 此存储库包含一个适用于android的高级recyclerview示例的示例应用程序。 其中包含一些惊人的功能,例如recyclerview项目之间的广告,搜索该项目,从... private static final String AD_UNIT_ID

    Android中两个Activity之间数据传递及返回问题

    下面通过一个例子来详细... private final static int REQUEST_CODE=1; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(sav

    java三大特性说明

     对于由final static共同修饰的变量,赋值的机会有两个,一是在声明的时候,二是在静态代码块中,两次机会有且只能有一次被选择.   继承:  允许存在父子类的关系,一个子类有且只有一个直接的父类(Java中的继承...

    Java问题宝典2012版

    二者之间有什么区别? 25 34、String 和StringBuffer的区别 25 35、如何把一段逗号分割的字符串转换成一个数组? 26 36、数组有没有length()这个方法? String有没有length()这个方法? 26 37、下面这条语句一共创建...

    动物招领所系统

    将世界看成一个个对象,对象之间可以分类(包),可以相互有继承。面向对象推荐面向接口进行编程,面向接口的核心思想是抽象(只依赖于接口不依赖于具体的实现)这样来构造灵活的系统。 四.系统概述: 流浪动物招领所是...

    Java面试宝典2011版

    一. Java基础部分 1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 2、Java有没有goto? 3、说说&和&&的区别。... 二者之间有什么区别? 23 34、String 和StringBuffer的区别 23

Global site tag (gtag.js) - Google Analytics