> 技术文档 > Java-抽象类和接口

Java-抽象类和接口

目录

🌿抽象类

🧊抽象类中的抽象方法不能被private所修饰

🧊抽象类中的抽象方法不能被static所修饰

🧊抽象类中的抽象方法不能被final所修饰

🧊抽象类不能被实例化

🧊抽象类的属性字段和普通类没啥区别

🧊抽象类可以有构造方法

🧊抽象类被继承后,子类要么重写抽象方法,要么也是个抽象类

🧊抽象类只可以被单个类继承,,不支持多继承

🧊抽象类可以有普通方法

🌿接口

🧊接口里不能有构造方法

🧊接口里的属性字段默认是public static final所修饰且必须初始化且不能有构造方法

🧊接口里的方法默认是public abstract所修饰的

🧊接口可以被普通类多继承,用关键字implements实现接口

🧊接口中只能有抽象方法,但静态方法除外

🌿浅拷贝和深拷贝

🧊浅拷贝

🧊深拷贝

🌿内部类

🧊静态内部类

🍋‍🟩静态内部类的定义形式

🍋‍🟩静态内部类的实例化

🍋‍🟩静态内部类的注意事项

🧊实例内部类

🍋‍🟩实例内部类的定义形式

🍋‍🟩实例内部类的实例化

🍋‍🟩实例内部类的注意事项

🌿equals方法和hashcode方法

🧊equals的使用

🧊hashcode的使用

🧊注意:


 

 

 

🌿抽象类

🧊抽象类中的抽象方法不能被private所修饰

Java-抽象类和接口

🧊抽象类中的抽象方法不能被static所修饰

Java-抽象类和接口

🧊抽象类中的抽象方法不能被final所修饰

Java-抽象类和接口

🧊抽象类不能被实例化

Java-抽象类和接口

🧊抽象类的属性字段和普通类没啥区别

Java-抽象类和接口

🧊抽象类可以有构造方法

Java-抽象类和接口

🧊抽象类被继承后,子类要么重写抽象方法,要么也是个抽象类

Java-抽象类和接口

🧊抽象类只可以被单个类继承,,不支持多继承

Java-抽象类和接口

🧊抽象类可以有普通方法

Java-抽象类和接口


🌿接口

🧊接口里不能有构造方法

Java-抽象类和接口

🧊接口里的属性字段默认是public static final所修饰且必须初始化且不能有构造方法

Java-抽象类和接口

🧊接口里的方法默认是public abstract所修饰的

Java-抽象类和接口

🧊接口可以被普通类多继承,用关键字implements实现接口

Java-抽象类和接口

🧊接口中只能有抽象方法,但静态方法除外

Java-抽象类和接口


🌿浅拷贝和深拷贝

我们要拷贝对象,需要实现Cloneable接口且重写clone方法

🧊浅拷贝

Java-抽象类和接口

Java-抽象类和接口


🧊深拷贝

Java-抽象类和接口

Java-抽象类和接口

我们看到这样还只是简单的浅拷贝,没有在Person里的QQ类实现Cloneable接口并重写clone方法,所以我们需要在QQ里面改动下

Java-抽象类和接口

Java-抽象类和接口

Java-抽象类和接口

注意:在谁的方法里使用super.clone()方法,就克隆谁,而clone方法不是Java代码实现的,可能是C或C++代码实现的

Java-抽象类和接口

🌿内部类

     内部类有:静态内部类,实例内部类,匿名内部类,局部内部类

     而其中静态内部类和实例内部类常用

🧊静态内部类

🍋‍🟩静态内部类的定义形式

Java-抽象类和接口

🍋‍🟩静态内部类的实例化

Java-抽象类和接口

🍋‍🟩静态内部类的注意事项

      🍎只能访问外部类的静态成员和静态方法

      🍎不能访问外部类的非静态成员和非静态方法

      🍎可以在静态内部类里面定义非静态成员和非静态方法

🧊实例内部类

🍋‍🟩实例内部类的定义形式

Java-抽象类和接口

🍋‍🟩实例内部类的实例化

Java-抽象类和接口

🍋‍🟩实例内部类的注意事项

      🍎最好不要在实例内部类里面定义静态成员变量,要的话加上final

      🍎不能在实例内部类里面定义静态方法


🌿equals方法和hashcode方法

🧊equals的使用

public boolean equals(Object obj){ 要比较的属性字段的规则}

        🍎equals方法常用于对象指定属性的比较,需要重写,因为object的equals方法是默认比

             俩个对象的地址值的

🧊hashcode的使用

Java-抽象类和接口

🧊注意:

如果不重写hashcode方法,Object类的hashcode方法估计默认的是按对象地址值的异同来计算的

重写的话就需要大概像上面一样


🧊🧊写的匆忙,如有不足或错误,还请多多指点!!🍋‍🟩🍉🧊🍎