第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

JAVA優(yōu)化建議(4)

標簽:
Java

1.不要随意设置随机数种子
如果不设置随机种子,则同一个台机器,每次打印都不一样
但是如果设置,同一台机器,每次打印都一样

Random r = new Random();
        for (int i = 0; i <3 ; k++) {
            System.out.println("第"+i+"次随机数"+r.nextInt());

        }
Random r = new Random(100);
        for (int k = 0; k <3 ; k++) {
            System.out.println("第"+k+"次随机数"+r.nextInt());

        }

原因是:
如果不设置种子,每次都初始化;如果设置,则取种子初始化的随机数,所以不变。
源码如下:

public Random() {
        this(seedUniquifier() ^ System.nanoTime());
    }
    
    
public Random(long seed) {
     if (getClass() == Random.class)
         this.seed = new AtomicLong(initialScramble(seed));
     else {
         // subclass might have overriden setSeed
         this.seed = new AtomicLong();
         setSeed(seed);
     }
 }

2.静态方法不能重写只能隐藏

public class Base {
    public static void staticMethond(){
        System.out.println("父类静态方法");
    }
    public void noStaticMethond(){
        System.out.println("父类非静态方法");
    }
}


public class Sub extends Base {
    @Override
    public void noStaticMethond() {
        System.out.println("子类非静态方法");
    }
	//不能@Override
    public static void staticMethond() {
        System.out.println("父类静态方法");
    }
}

public class Main {
    public static void main(String[] args){
        Base base = new Sub();
        base.noStaticMethond();
        base.staticMethond();
    }
}

打印结果:
子类非静态方法
父类静态方法

3.利用构造代码块精简代码
构造代码块在调用构造函数之前会被执行(不论有参构造,无参构造)遇到this不插入
可以使用场景:
1).初始化实例变量
如果每个构造函数都需要初始化变量,可以通过构造代码块来实现。
2).初始化实例环境
如果实例初始化必须在某个场景下,可以在构造代码块中判断

點擊查看更多內(nèi)容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優(yōu)惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消