Java中怎么实例化子类对象,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
一 点睛
子类对象在实例化时,子类对象会默认先调用父类中的无参构造函数,然后再调用子类构造构造方法。
二 实战
1 代码
class Person { String name ; int age ; public Person() // 父类的构造方法 { System.out.println("***** 父类构造:1. publicPerson()") ; } } class Student extends Person { String school ; public Student() // 子类的构造方法 { //super() ; //实际上程序在这里隐含了这样一条语句 System.out.println("##### 子类构造:2. public Student()"); } } public class SubInstantProcess { public static void main(String[] args) { Student s = new Student() ; } }
2 运行
***** 父类构造:1. publicPerson()
##### 子类构造:2. public Student()
3 说明
运行结果可以证明:子类对象在实例化时,会默认先去调用父类中的无参构造方法,之后再调用子类本身的相应构造方法。
实际上,在子类构造方法的首行相对于默认隐含了一个“super()”语句。上面的Student类如果改写成下面形式,也是合法的。运行结果也是一样的。
class Student extends Person { String school ; public Student() // 子类的构造方法 { super() ; //隐含了这样一条语句,它负责调用父类无参构造方法 System.out.println("##### 子类构造:2. public Student()"); } }
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。