class Father { Father(){print ('father');}; } class Son { Son(){print ('son')}; } 如果只是这样,那么构造Son之前会在后台调用一下super()函数, 调用过程你看不到,但是确实执行了,结果是先father后son 但是这种时候你显示的写个super就没有意义了,那么他在什么时候用呢,再举个例子 给你举个例子 class Father { Father(){print ('father');}; Father(int age){print ('father is'+age);}; } class Son { Son(){super(36);print ('son')}; } 这种情况下输出的就不是father 和 son了,而是father is 36 和 son 就是说在你父类不止一个构造函数时,显示的调用super才有意义 进行初始化是一个方面,像我这个例子里就是输出了一些信息 其实就是按照程序运行顺序先做什么后做什么,网络视频说的意思对,但没解释清楚
java 构造方法中super()的作用
最新推荐文章于 2024-05-28 09:54:55 发布