• 修饰符和内部类


    修饰符(static)

    static可以修饰修饰属性、修饰方法、修饰初始化块。

    有static方法不能操作非static的方法和属性原因是:从设计来说static是类级别的与对象无关;从实现上来说static修饰符是是首先加载的,非static的还没有被加载到内存中所以无法访问;(静态方法不能访问非静态的方法;非静态的可以访问静态的方法和属性)

    什么时候使用static修饰符 --工具类的工具方法。

    static是不能修饰构造方法的,因为构造方法是用来构造对象的 而static的都是与对象无关的。

    初始化块

    {}实例初始化块--在产生对象的时候自动执行,执行顺序是在父类构造方法之后在本来构造方法之前。

    static{}静态初始化块--在类加载时候自动执行,只执行一次。执行顺序为最先(使用量很高,通常会把程序运行前工作放在这里,让其加载完成准备工作)。

    内部类

    内部类分为:成员内部类、局部内部类、匿名内部类。

    成员内部类:1 可以有访问修饰符 2.成员内部类class文件名:外部类类名$内部类类名.class。3其就是一个独立的类。4 在本类非static任意方法中都可以new出来,但是在第三方类必须用 对象.new方式产生内部对象

    局部内部类:不能有访问修饰符,class文件名是: 外部类类名$+序号内部类类名.class。

    静态内部类:本类中任意方法都可以new出来,在第三方类中要new出来需产业外部类对象, 只需外部类类名.的方式就可以了。

    匿名内部类:(局部内部类的特例)由于没有类名,所以在产生对象是时候用语句告诉虚拟机它的结构,而且只能用一次。外部类类名.

  • 相关阅读:
    Android Studio 编译报错 AAPT2 error: check logsfor details
    pytest01--生成测试报告及allure的介绍
    三号坑——自动化测试用例前置conftest.py文件
    【pycharm】如何设置以pytest方式去运行用例!!!
    二号坑 —— 导出、安装依赖包
    一号坑 —— 数据比对时碰到的问题
    十六——reflect反射机制
    十五—— 装饰器
    十三 —— 文件读写
    十二 —— python的内置函数
  • 原文地址:https://www.cnblogs.com/daiwei-/p/5225617.html
Copyright © 2020-2023  润新知