• 学习记录-01


      开始学习了,今天看了视频:https://www.bilibili.com/video/BV1p4411P7V3

      有一下几个问题,一下答案来自百度或者其他博客:

      1、重写与重载的区别(主要是模糊了):

    面试时,问:重载(Overload)和重写(Override)的区别?(参考:https://www.cnblogs.com/wei-hang/p/12921196.html)
      答:方法的重载和重写都是实现多态的方式,区别在于前者实现的是编译时的多态性,而后者实现的是运行时的多态性。重载发生在一个类中,同名的方法如果有不同的参数列表(参数类型不同、参数个数不同或者二者都不同)则视为重载;重写发生在子类与父类之间,重写要求子类被重写方法与父类被重写方法有相同的参数列表,有兼容的返回类型,比父类被重写方法更好访问,不能比父类被重写方法声明更多的异常(里氏代换原则)。重载对返回类型没有特殊的要求,不能根据返回类型进行区分。

      2、函数式接口

    之前就学习过,但是忘了,看了这个博客:https://www.cnblogs.com/jianwei-dai/p/5819479.html 发现只是捡回来一点点 还是有很多不会。

      3、内部类,匿名内部类

      参考:https://www.cnblogs.com/libinhong/p/10990602.html

      4、静态代码块 静态变量 等执行顺序

    这个在学习Java初就练习过,以背过,只是现在忘记了,参考:https://www.cnblogs.com/leiqiannian/p/7922824.html

    如果类还没有被加载: 
    1、先执行父类的静态代码块和静态变量初始化,并且静态代码块和静态变量的执行顺序只跟代码中出现的顺序有关。 
    2、执行子类的静态代码块和静态变量初始化。 
    3、执行父类的实例变量初始化 
    4、执行父类的构造函数 
    5、执行子类的实例变量初始化 
    6、执行子类的构造函数 

    如果类已经被加载: 
    则静态代码块和静态变量就不用重复执行,再创建类对象时,只执行与实例相关的变量初始化和构造方法。

    5、反射暴力破解单例

    新知识,以及更深入了。

    参考:https://www.cnblogs.com/blogofcookie/p/5793886.html

     建议再次看下这个视频:https://www.bilibili.com/video/BV1K54y197iS

    对单例,以及破解,以及为什么枚举不能反射,更有意思。

      

      

  • 相关阅读:
    UVA.12096 The SetStack Computer ( 好题 栈 STL混合应用)
    HDOJ(HDU).1412 {A} + {B} (STL SET)
    UVA.10474 Where is the Marble ( 排序 二分查找 )
    HDOJ(HDU).1754 I Hate It (ST 单点替换 区间最大值)
    HDOJ(HDU).1166 敌兵布阵 (ST 单点更新 区间求和)
    17 西安
    17 沈阳
    13 南京
    10/11 作战会议
    2019牛客国庆集训派对day5
  • 原文地址:https://www.cnblogs.com/timeout/p/14403100.html
Copyright © 2020-2023  润新知