关于继承
继承是java语言中的三大特征之一
继承可以实现代码的复用,但是继承最重要的作用是有了继承后才有了“方法的覆盖”和“多态机制”
继承的语法格式
[修饰符列表] class 类名 extends 父类名 {
类体 = 属性 + 方法
}
java语言中只支持单继承,一个类只能继承一个类,不可以继承多个类
虽然java不支持多继承,但是可以间接继承其他类
D extends C{} C extends B{} B extends A{}
D类直接继承了C类 D类间接继承了A B C类
术语:B类继承A类中 称A类为父类、超类、基类、superclass 称B类为子类、派生类、subclass
java中子类继承父类都哪些数据呢?
私有的不支持继承 构造方法不支持继承 其他的数据都支持继承
银行卡类
package com.bjpowernode.jave.Test04;
//银行卡类中有名字以及余额属性
public class BankCard {
private String name;
private double balence;
public BankCard() {
super();
}
public BankCard(String name, double balence) {
super();
this.name = name;
this.balence = balence;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getBalence() {
return balence;
}
public void setBalence(double balence) {
this.balence = balence;
}
}
、信用卡类
package com.bjpowernode.jave.Test04;
//信用卡类独有的信誉度属性 名字以及余额属性继承银行卡类
public class CreditCard extends BankCard{
private int credibility ;
public CreditCard() {
}
public int getCredibility() {
return credibility;
}
public void setCredibility(int credibility) {
this.credibility = credibility;
}
}
主方法
package com.bjpowernode.jave.Test04;
public class CardTest {
public static void main(String[] args) {
CreditCard c = new CreditCard();
//信用卡类可以调用银行卡类中的set以及get方法
c.setName("lele");
c.setBalence(500.25);
c.setCredibility(562);
System.out.print(c.getName()+"的余额是"+c.getBalence()+"元"+" ");
System.out.println("信誉度为"+c.getCredibility());
}
}