手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

老黑讲Java之面向对象继承

时间:2024-10-13 03:37:03

上一篇介绍了Java最核心知识点——面向对象编程,今天介绍Java的第二大核心技术点——继承,要想深入了解Java,必须搞懂继承的概念。

工具/原料

JDK

eclipse

继承

1、泛化的意义 泛化是继承的源头,理解了泛化,就不难搞懂继承。泛化是提炼出每个类中的公共部分作为父类,子类继承父类后,子类就拥有了父类的特性。

老黑讲Java之面向对象继承

2、extend衡痕贤伎s关键字 1、只用写上extends关键字才可以实现继承; 2、子类继承父类后,子类可以使用成员变量及成员方法,同时子类可以定义自己的成员变量和成员方法; 3、Java不支持多重继承,一个类只能继承一个父类,一个父类可以有多个子类,示例代码如下: //父类 public class People { String name; int age; String gender; public People() { } public People(String name, int age, String gender) { super(); this.name = name; this.age = age; this.gender = gender; } } //子类 public class Programmer extends People { public void ProgrammingCode(String language) { } }

老黑讲Java之面向对象继承
老黑讲Java之面向对象继承

3、子亿姣灵秀类继承父类,父类必须有一个无参的构造方法 1、子类的构造方法必须通过super关键字调用父类的构造方法,这样可以初始化继承父类的成员变量; 2、子类的构造方法没有调用父类的构造方刮茕栓双法,Java编译器会自动的加入对父类无参构造方法的调用,如果父类没有无参构造方法,则会出现编译错误。 public class Programmer extends People { public Programmer(){ super();//编译器自动添加,调用父类无参的构造方法,父类没有无参构造方法则会出现编译错误 } public void ProgrammingCode(String language) { } } 或者可以这么写构造方法: public class Programmer extends People { double salary; public Programmer(String name, int age, String gender, double salary){ super(name, age, gender); } public void ProgrammingCode(String language) { } }

老黑讲Java之面向对象继承
老黑讲Java之面向对象继承

4、父类的引用可以指向子类的对象 1、父类类型的引用可以指向子类的对象,即,一个子类的对象可以向上造型为父类的类型,代码如下: People people = newProgrammer (); 或者 People people = new Programmer("老黑",18,"男",3000);

5、父类的引用只能访问父类的成员,不能访问子类自定义的成员 People people = new Programmer("老黑",18,"男",3000); System.out.println(people.name); System.out.println(people.salary);//编译错误

老黑讲Java之面向对象继承
© 手抄报圈