• java--static与代码块


    static与代码块:

    static

    class Student{
    	
    	static String school;  // 随着类的加载而执行 可以由类进行调用
    	
    	static {
    		// 静态代码块 加载类时需要进行的初始化操作,比如说加载驱动
    	}	
    
    	public static void study(){
    		// 静态方法 ,可以调用其他的静态方法。
    		// 可以调用其他 静态变量
    		// 但是不可以调用非静态的变量 ,加载时间不同
    	}
    }
    
    //应用场景实例: java中的工具类,如Math。
    Math.floor(1.6)  // 1.0 (向下取整)
    Math.ceil(1.2)  // 2.0 (向上取整)
    Math.round(1.6) // 2.0
    Math.round(1.2) // 1(四舍五入 返回long型)
    Math.abs(-10)  // 10 (取绝对值)
    Math.PI  //3.141592
    Math.Max(3.0, 2.0)  // 3.0
    Math.pow(2.0, 3.0)  //8.0  (次幂)
    Math.random()  // double类型的随机数(0~1)
    

    构造代码块

    // 随着对象的实例而执行   (实例化一个对象就执行一次)
    {
    	//构造对象时的公共部分
    }
    

    面试题

    public class BlockTest {
    	static {
    		System.out.println("BlockTest静态代码块执行");     //1
    	}
    	
    	{
    		System.out.println("BlockTest构造代码块执行");
    	}
    	
    
    	public BlockTest(){
    		System.out.println("BlockTest无参构造执行了");
    	}
    	
    	public static void main(String[] args) {
    		System.out.println("BlockTest的主函数执行了");   //2
    		Coder c = new Coder();
    		Coder c2 = new Coder();
    	}
    }
    
    class Coder {
    	
    	static {
    		System.out.println("Coder静态代码块执行");    //3
    	}
    	
    	{
    		System.out.println("Coder构造代码块执行");	//4   6
    	}
    	
    	public Coder() {
    		System.out.println("Coder无参空构造执行");	//5   7
    	}	
    	
    }
    
    
  • 相关阅读:
    《 动态规划_ 货币系统 》
    《动态规划_入门 LIS 问题 》
    数据库中左连接、右连接、全连接的区别
    http和https的区别与联系
    【复习周之流水账记录】
    web前端整套面试题(三)--网易的面试题
    微信小程序相关三、css写小黄人
    CSS选择器的匹配规则
    web前端整套面试题(二)--今日头条面试题
    有趣的逻辑题
  • 原文地址:https://www.cnblogs.com/selfdef/p/11063956.html
Copyright © 2020-2023  润新知