面向对象的特征:封装(private)继承(extends) 多态

继承:子类扩展父类的功能并将父类的操作都继承下来。允许多层继承,

  • 子类只允许继承父类的公有方法和公有成员
  • 父类的私有方法和成员需要间接才能访问

如用直接用name则不行 需用getName

 say()
    {
        System.out.println(getName()) ;
    }
};
  • 子类对象实例化时,先默认调用父类的无参构造函数(默认隐含了一个super()方法);子类对象实例化-----父类的无参构造函数-----子类的无参构造函数
 B() ;
    }
};
  • 方法的覆写:子类覆写父类方法时不能拥有比父类更严格的方法,方法名都一样,参数也一样,子类调用的永远是覆写后的方法
 B() ;
        b.fun1() ;
    }
};

权限:

  1. public
  2. default
  3. private只能在一个类中
  • 重载与覆写的区别:

重载:方法名称相同,参数的类型或个数不同,是发生在同一个类中 覆写:方法名称相同,访问权限最好相同参数的类型或个数一样,在子类中实现

  • 可以通过super(),根据参数来来调用父类的构造方法。默认是无参的。
  • 通过super().方法可以调用被子类覆写的方法。
 B().say()) ;
    }
};

this与super的概念:

 

};

 

可以看到在super()的构造方法必须在首行,因为子类构造函数初试化之前先调用父类的构造函数。

看下完整的继承:

 

) ;
        System.out.println(s.say()) ;
    }
};

例子:

 

 

e.mgr.say()) ;
        }
    }
};

 

 

相关文章:

  • 2021-07-18
  • 2022-12-23
  • 2021-07-09
  • 2021-12-28
  • 2021-08-07
  • 2022-12-23
  • 2021-07-26
  • 2021-10-19
猜你喜欢
  • 2021-12-18
  • 2022-02-09
  • 2022-02-14
  • 2021-07-27
  • 2021-12-11
  • 2021-06-15
  • 2022-12-23
相关资源
相似解决方案