首页 对象 多态
文章
取消

对象 多态

对象 多态1

Object类

1 Object

  1. Object是所有类的父类
  2. 一个类没有使用 extends 显性的继承另外一个类,那么这个类就继承 Object

    示例

    1
    2
    3
    4
    
    public class Demo1 {}
    // 等同
    public class Demo1 extends Object {
    }
    
  3. java.lang.Object.java

    • Object();// 构造
    • getClass();// 获取 class
    • hashCode();// hash值
    • equals();// 比较地址是否相同

      • ==equals() 比较

        ==

        基本类型比较变量的值是否相等

        引用类型比较内存地址是否相等

        equals()

        Object.equals() 默认比较地址是否相等

        重新后 一般 比较对象的属性是否相等 或者 自定义比较策略

    • clone();// 克隆对象
    • toString();// return getClass().getName() + “@” + Integer.toHexString(hashCode());
    • finalize();

      Object finalize() 方法用于实例被垃圾回收器回收的时触发的操作。

      当 GC (垃圾回收器) 确定不存在对该对象的有更多引用时,对象的垃圾回收器就会调用这个方法。

  4. 抽象类

    • abstract 方法无方法体,正常至少要有一个 abstract 方法
    • 不能实例化
    • 可以有构造,给子类调用
    • 继承该类的 非 abstract 子类 必须实现其 abstract 方法
  5. 接口

    • 不能实例化
    • 成员变量 隐式 static final
    • 方法无具体实现且为隐式 punilc
    • 实现接口的类要 实现接口所有方法
    • 一个类可以实现多个接口 单只能继承一个类
  6. 多态

    • 必要条件

      继承

      重新

      父类引用指向子类对象

      img

    • instanceof

    二元操作符

    判断其 左侧对象是否是右侧类的实例

    1
    
    s2 instanceof String
    

2 native

  1. 使用 native 说明这个方法是原始函数,也就是方法用 c/c++ 来实现的,并被编译成DLL,由java调用
本文由作者按照 CC BY 4.0 进行授权

马士兵课程结构

MySQL概述