首页 > 代码库 > java4android (继承中的子类实例化过程)
java4android (继承中的子类实例化过程)
生成子类的过程
见代码:
class Person { String name; int age; Person(){ System.out.print("Person的无参数构造函数"); } Person(String name,int age){ this.name = name; this.age = age; System.out.print("Person的有2个参数的构造函数"); } void eat(){ System.out.print("吃饭"); } }
class Student extends Person{ int grade; Student(){ //在子类的构造函数当中,必须调用父类的构造函数 //如果没有写父类的构造函数,那么编译器会自动加上 super(); //super(根据参数调用父类中相应的构造函数); System.out.print("Student的无参数构造函数"); } Student(String name,int age,int grade){ //this.name = name; //this.age = age; super(name,age);//减少重复代码 this.grade = grade; } }
class Text{ public static void main(String args[]){ Student s = new Student("zhansan",18,90); System.out.print(s.name); System.out.print(s.age); System.out.print(s.grade); } }
使用super调用父类构造函数的方法
由于子类继承了父类的成员变量和成员函数,但无法继承父类的构造函数,所以在为成员变量赋值的时候会出现代码重复。为解决这个问题,用super调用父类的构造函数。。
注意:super在构造函数中要在第一行。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。