Java面向对象

1、子类实例化时会默认调用父类无参构造函数,如果父类没有无参构造函数,则需要子类构造函数显示调用父类有参构造函数

2、关于模板方法

 public class Father {

    public void run() {
        before();
        say();
        after();
    }

    private void before() {
        System.out.println("before");
    }

    private void after() {
        System.out.println("after");
    }

    public void say() {
        System.out.println("father");
    }
}

//继承father并重写say方法
public class Children extends Father {

    @Override
    public void say() {
        System.out.println("hello children");
    }

    public static void main(String[] args) {
        Children children = new Children();
        children.run();
    }
}
当执行children.run()方法时,debug调试显示调用过程是这样的:
1、调用father.run()方法
2、调用father.before()方法
3、调用children.say()方法
4、调用father.after()方法
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • java继承 继承的概念 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。 继承就是子类继...
    863cda997e42阅读 701评论 0 1
  • 标签(空格分隔): Java面向对象 1. 面向对象的特征有哪些方面? 抽象:抽象就是找出一些事物的相似和共性之处...
    outSiderYN阅读 6,406评论 0 6
  • 学习Java的进阶过程,是理解面向对象的思想,掌握面向对象的基本原则以及Java面向对象基本实现原理,熟练使用封装...
    Yumi__扶醉入香闺阅读 1,316评论 0 4
  • Communications error:{ count = 1, contents ="XPCErrorDesc...
    whereandhere阅读 510评论 1 0
  • 我有二个女儿,一个快三岁,一个快一岁。二个女儿都很漂亮,而且聪明可人(估计所有的爸爸都会这样认为自己的女儿,呵呵)...
    4ccd352c5b0e阅读 614评论 3 3