八,JAVA面向对象,封装

  • alt+insert:自动生成get,set方法

  • 封装,继承,多态

  • @Nullable:这是一个注解,@开头的都是注解:传参时允许为null

    • public static int getNum(@Nullable String info, int start, int end) {};

构造器

  • this();代表调用空参构造器

    • 必须位于构造器的第一条语句中

    • public Person(String name) {
         this();  
         this.name = name;
      }
      public Person(String name, int age) {
         this(name);  
         this.age = age;
      }
  • 当有n个构造器时this()最多有n-1个

    • 可能会出现递归

  • 构造代码块:为所有对象初始化,在每次使用new关键字创建对象时,先于构造器执行一次

    • {   
         System.out.println("我是构造代码块!");
         cry();
      }
  • private:封装的一种表现形式

static

  • 表示静态的,是一个修饰符

  • static修饰的成员是随字节码文件一起加载的,也就是静态成员,先于对象存在

  • static修饰是共享数据,被所有对象共享

  • 给函数加上 static,这样就可以通过 类名.成员名 的方式访问成员

  • 静态成员子能访问静态成员,不能访问动态成员。非静态成员可以访问静态成员

  • 生命周期过长

  • 禁止创建工具类的对象

  • 又称为类变量

  • 什么时候修饰变量:当变量是共享数据时

  • 静态代码块的作用:为静态成员初始化

    • 只在加载字节码文件时加载一次

    • static {  
         System.out.println("我是静态代码块!");
      }

A a = new A();

  • 加载A.class 文件到内存中,所有静态成员随之一起加载

  • 在 堆内存中开辟空间

  • 成员变量默认初始化

  • 成员变量显示初始化

  • 构造代码块初始化

  • 构造器初始化

  • 堆内存分配地址

  • 将堆内存分配的地址存入栈内存,初始化结束

posted on 2023-12-12 16:55  とんぽ  阅读(14)  评论(0)    收藏  举报

导航