Java基础知识

概述

本篇主要是对java基础的使用场景的总结

常见使用场景

  1. 静态内部类和非静态内部类的使用场景

    • 静态内部类可以有静态成员(方法和属性),而非静态内部类则不能有静态成员(成员或属性)
    • 静态内部类只能够访问外部类的静态成员和静态方法,而非静态内部类则可以访问外部类的所有成员(方法和属性)
  2. 静态代码块和代码块的使用场景

    • 静态代码块,在虚拟机加载类的时候就会加载执行,而且只执行一次;
    • 非静态代码块,在创建对象的时候(即new一个对象的时候)执行,每次创建对象都会执行一次
  3. LinkHashmap使用场景

    • 如果需要输出的顺序和输入的相同,那么用LinkedHashMap 可以实现,它还可以按读取顺序来排列
    • 如果您要按自然顺序或自定义顺序遍历键,那么TreeMap会更好
  4. 接口里定义的成员变量为什么是 public static final

    接口提供的统一的抽象, 所以接口中的属性必然是常量,只能读不能改,这样才能为实现接口的对象提供一个统一的属性

  5. 项目中日志如何使用

    假设我们有些日志是debug级别, 那么应该如下

    1
    2
    3
    if (logger.isDebugEnabled()) {
    logger.debug("Initializing filter '" + filterConfig.getFilterName() + "'");
    }
  6. 用户自定义系统属性

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    @Slf4j
    public class TestController {

    public static void main(String[] args) {
    System.setProperty("blog.host", "http://idea360.cn");
    String property = System.getProperty("blog.host");
    if (log.isInfoEnabled()) {
    log.info(property);
    }

    }
    }
  7. 获取系统环境变量

    1
    Map<String, String> getenv = System.getenv();

最后

本文到此结束,感谢阅读。如果您觉得不错,请关注公众号【当我遇上你】,您的支持是我写作的最大动力。