您的位置:首页 > 运维架构 > Linux

Linux学习-09-学习正则表达式-1

2015-07-13 16:17 549 查看


晚上在自习室里阅读张孝祥的就业培训教程,调试书中关于继承的一个案例如下:

class Person
{
public String name;
public int age;
public Person(String name,int age)//构造1
{
this.name = name;
this.age = age;
}
/* public Person()
{
//父类的构造方法2
}
*/

public void getInfo()
{
System.out.println(name);
System.out.println(age);
}

}

class Student extends Person
{
public Student(String name,int age)
{
super(name,age);//用super语句调用父类指定的构造方法。
}
public void study()
{
System.out.println("studding");
}

public static void main(String [] args)
{
Person person = new Person("王珊珊",24);//既然是要用构造函数初始化,那就在这里把要传的参数传过去好了。

/*person.name = "王珊珊";//构造方法是用作对象初始化的。那么new一个新对象的时候,这样传递参数应该不行。
person.age = 24;*/
person.getInfo();

Student student = new Student("徐花",23);
/* student.name = "徐花";
student.age = 23;*/
student.getInfo();
student.study();
}
}

最终通过网上查资料调试通过了。对于类的继承总结如下:
1.Java不允许多重继承,只能单继承。一个子类只能有一个父类,一个类可以被多个子类继承。“一父多子”,不可“多父一子”。
2.Java可以有多层继承,一个类可以继承某个类的子类。B类是A类的子类,而C类又是B类的子类,那么C类也是A类的间接子类。
3.子类继承父类所有的成员变量和成员方法,但不继承父类的构造方法。处理这个情况可有两种方法:a.父类中只有自定义的构造方法时,在子类的构造方法中需用super语句手动的调用父类中的构造方法;b.在父类中激活其默认的构造方法(可与自定义的构造方法重载),系统可以默认调用父类无参数的构造方法,不必使用super语句。
注意:如果子类构造方法中没有显式地调用父类构造方法,而父类中又没有无参数的构造方法(如果父类没有显示地定义任何构造方法,系统将自动提供一个默认的没有参数的构造方法,这还是等于父类中有无参数的构造方法的),则编译出错。所以,只要定义了有参数的构造方法,通常都还需要定义一个无参数的构造方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: