浅析Java的继承与动态绑定
什么叫承继?
承继都是面向过程的关键特点之首。说白了,承继仅指从现有的类中派生推新类的姿势。新的类能吸附现有类的数剧特性和形为,能够拓展新的潜质。视頻-解析域名及其关联域名.
而浅显一些的而言,仅指Java中能够根据承继的方法,从目前的类派生推新的类。该目前类被称为超类(父类),而派长出的新类就被称为子类(派生类)。
最先,子类浏览承继超类之中的全部非私有的方式和成员函数;次之,还要在父类原来的组员的基本上加上某些新的方式和域,或是对父类的方式开展覆写(override)。
全部一般也那样讲:父类是子类的一般化表达形式;而子类是父类的独有化表达形式。
Java中应用关键词“extends”用以申明1个类承继自另外类。弟二讲 eclipse的应用和Java語言基本.
承继的反映
最先,假设人们修改了1个聘员类“Employee”:
[java] view plaincopyprint?
package com.tsr.j2seoverstudy.extends_demo;
public class Employee {
private String name; // 名字
private int salary; // 收益
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
}
1个单位中,聘员一般分成主管和一般聘员。二者之间绝大多数的形为差不多,但将会在收益上略有不同。第五讲java简述及坏境构建
假定一般聘员的固定收入为薪水,而主管的收益构造则是由薪水 + 绩效奖金构的。因此这一当时,原来的聘员类就未尝叙述主管了。
因此,应用承继从原来的聘员类中派长出1个新的主管类“Manager”:
[java] view plaincopyprint?
package com.tsr.j2seoverstudy.extends_demo;
public class Manager extends Employee {
// 子类新的独有案例域:绩效奖金
private int bonus;
public int getBonus() {
return bonus;
}
public void setBonus(int bonus) {
this.bonus = bonus;
}
}
承继的特点
1、子类会承继超类之中的方式以和案例域
[java] view plaincopyprint?
package com.tsr.j2seoverstudy.extends_demo;
public class JavaExtendsDemo {
public static void main(String[] args) {
Manager m = new Manager();
m.setName("张主管");
System.out.println(m.getName());
m.setBonus(20000);
System.out.println(m.getBonus());
}
}
这儿可以看到的是,人们在派生类“Manager”之中并沒有界定成员函数“name”,都没有界定其有关的set/get方式。
可是人们依然能够根据“Manager”类对这种组员开展浏览,更是由于承继的体制产生的。
“Manager”承继自“Employee”类,因此“Emoloyee”类之中的全部非私有化的组员都被隐式的承继来到子类“Manager”之中。
2、方式覆写(override)
前边人们早已说已过,主管的收益构造为:薪水 + 奖励金。因此“Employee”类之中获得聘员收益的方式“getSalary”就不舒服用以叙述主管的收益了。
针对“Manager”类中,“getSalary”方式回到的值理应是:salary + bonus。此刻就牵涉到承继中1个关键的知识结构图:方式覆写(override)
覆写指得:除方式体之外,方式的全部申明都当与父类中同样,而方式的浏览修饰符只有比父类更为小西装女外套。
必须要谨记覆写的标准,才不容易再应用时错误。下边根据一条网站看到的huawei的面试题,来更形像的了解一会儿覆写的定义:
[java] view plaincopyprint?
package
相关文章
- 3条评论
- 竹祭雾夕2022-05-31 02:53:22
- 构的。因此这一当时,原来的聘员类就未尝叙述主管了。因此,应用承继从原来的聘员类中派长出1个新的主管类“Manager”:[java] view plaincopyprint?package
- 北槐辞慾2022-05-31 01:19:23
- 装女外套。 必须要谨记覆写的标准,才不容易再应用时错误。下边根据一条网站看到的huawei的面试题,来更形像的了解一会儿覆写的定义:[java] view plaincopyprint?pa
- 瑰颈咽渡2022-05-31 04:30:20
- 设人们修改了1个聘员类“Employee”:[java] view plaincopyprint?package com.tsr.j2seoverstudy.extends_demo