一、基础
引入类的继承的作用:代码重用
语法:
[修饰符列表] class 子类名 extends 父类名{
类体;
}
举个栗子:
父类:
public class Student{
public void m3() {
System.out.println("m3...");
}
}
子类:
public class people extends Student{
public void m1() {
System.out.println("m1...");
}
public void m2() {
System.out.println("m2...");
}
}
调用:
public class p{
public static void main(String [] args) {
people p = new people();
p.m2();
p.m3();
p.m1();
}
}
二、java语言中,类和类之间只支持但继承(一个类继承另一个类后就不能继承别的
类了)一个类如果没有显示的继承其他类,则该类默认继承object,object是SUN提
供的java中的根类
再举个栗子
父类:
public class Time {
}
子类:
public class MyDate extends Time{
}
注意:MyDate除了继承Time之外,还间接 继承了Object
调用:
public class p{
public static void main(String [] args) {
MyDate md = new MyDate();
String s = md.toString();
System.out.println(s);
}
}
输出:tranc.MyDate@7d6f77cc
注释:Object是根类,toString()是Object中的方法
三、
1、java语言中一个子类继承父类,会将父类中的所有数据都继承,包括私有的
2、子类中无法直接访问父类中的所有私有数据,但是可以间接访问(父亲给了儿子
一吨金子,放在了仓库里,儿子只能用要是才能得到金子,即setter、getter)
3、构造方法无法被继承
再举个栗子
父类、超类:
// 账户类
public class Account {
//账号
private String actno;
//余额
double balance;
//Constructor
/*Account(){}
Account(String actno,double balance){
this.actno = actno;
this.balance = balance;
}*/
// setter and getter
public void setActno(String actno) {
this.actno = actno;
}
public String getActno() {
return actno;
}
}
子类:
public class DebitAccount extends Account{
// 信誉度
double debit;
}
调用:
public class p{
public static void main(String [] args) {
// 创建信用卡对象
DebitAccount da = new DebitAccount();
//给信用卡号赋值
da.setActno("007");
System.out.println(da.getActno()); // 读取
}
}
输出:007
网友评论