zoukankan      html  css  js  c++  java
  • 关键字总结

    不可变对象

    final

    修饰的类不能被继承,修饰的方法不能被重写,private修饰的方法默认也会加final修饰,修饰基本数据类型的变量不能被重新赋值,修饰引用数据类型不能,在变量初始化之后不能指向其他引用

    Collections.unmodifiable

    返回的集合不能被重新赋值,并且集合内容也不能被修改如Collections.unmodifiableMap(map),如果此时向新map中put会直接抛异常,而final修饰的引用数据类型,虽然变量指向的对象不能被修改,但是对象的内容却可以被修改

    static

    静态代码块

    • 作用:一般用以给静态变量赋值
    • 执行顺序静态代码块->构造代码块->构造方法
    • 静态代码块只在第一次new执行一次,之后不再执行,用以初始化类

    构造代码块和构造函数的区别

    非静态代码块与构造函数的区别是: 非静态代码块是给所有对象进行统一初始化,而构造函数是给对应的对象初始化,因为构造函数是可以多个的,运行哪个构造函数就会建立什么样的对象,但无论建立哪个对象,都会先执行相同的构造代码块。也就是说,构造代码块中定义的是不同对象共性的初始化内容。

    非静态代码块的作用

    限定变量的作用范围

    判断字符串内容是不是相等、和判断Integer值是否相等要用equels

    • 在没有改写equels方法的情况下,equels判断和==具有相同的作用,都是判断两个对象的地址是不是相同
    • String类型和Integer类型重写了equels方法,所以可以直接用equels判断对象内容是否相等
    • 判断对象是不是某个类型用object isinstansof object,注意左右都必须为对象;基本数据类型可以转换为object对象

    枚举类型Demo

    public class EnumTest01 {
    
        //使用枚举存放四季
        public enum Season{
            Spring,Summer,Autumn,Winter
        }
    
        public static void main(String[] args) {
            //调用枚举
            System.out.println(Season.Summer);
    
        }
    
    }
    

    生成随机数的两种方法

    ```

    Random r = new Random();
    int i = r.nextInt(100)// 生成0-100的随机数

    #```
    int i = (int)(Math.random()*100)//生成0-100随机数
    

    前者需要导包,后者不需要

  • 相关阅读:
    php composer 相关及版本约束等小技巧
    Jquery 获取表单值如input,select等方法
    Apache benchmark 压力测试工具
    Linux中的随机数文件 /dev/random /dev/urandom
    redis持久化
    Python---装饰器
    高仿拉手网底部菜单实现FragmentActivity+Fragment+RadioGroup
    python实现二叉树和它的七种遍历
    Spring AOP应用实例demo
    二维数组的列排序
  • 原文地址:https://www.cnblogs.com/zhz-8919/p/10693037.html
Copyright © 2011-2022 走看看