Java刷题错题笔记-day03-Java基础

1.Void是用来干嘛的?

1.void的包装类
2.用于一直返回null的方法
3.用于一直返回null的泛型

不能实例化(因为构造器私有吧)

2.Java类初始化顺序是怎样的?

静态变量>静态初始块>成员变量>非静态初始块>构造器

父类>子类
静态>非静态
变量>初始块>构造器
完全体:
父类静态变量>父类静态初始块>子类静态变量>子类静态初始块>父类成员变量>父类非静态初始化>父类构造器>子类成员变量>子类非静态初始块>子类构造器
tips:从上往下,从左往右组合就可以得到上面的式子。(父类非静态变量=成员变量,父类非静态构造器=父类构造器,类非静态构造器不存在)

3.Java如何判断两个类或者接口之间的派生关系?

使用isAssignableFrom方法。

例如:

class Animal { }

class Dog extends Animal { }

public class Main {
   public static void main(String[] args) {
       if (Animal.class.isAssignableFrom(Dog.class)) {
           System.out.println("Dog 是 Animal 类或其子类");
       }

       // 或者
       if (Dog.class.isAssignableFrom(Animal.class)) {
          System.out.println("Animal 是 Dog 类或其子类");
      }
   }
}

这将输出 “Dog 是 Animal 类或其子类”,因为Dog继承自AnimalisAssignableFrom方法用于检查类或接口之间的继承关系。
注意:不是instanceof,那是对象之间关系判断

你可能感兴趣的:(Java刷题笔记,java,面试)