java类的继承

面向对象:

类的继承:指在一个现有的类的基础上去构建一个新的类,构建出来的类被称为子类,现有的类被称为父类,子类会自动拥有父类所有可继承的属性和方法,

class 子类 extends 父类{}

注意:

1 在java中,类只支持单继承,不允许多重继承,也就是说一个类只能有一个直接父类,

   class A{}     class b{}     class   C  extends  A,b{};是不允许的。

2 多个类可以继承同一个父类,

 class A{} 

 class   B  extends  A{}

 class   C  extends  A{}

3 可以多重继承,即一个类的父类可以再继承另外的父类,

class A{} 

 class   B  extends  A{}

 class   C  extends  B{}

4 子类和父类是一种相对概念,也就是说一个类是某个类的父类的同时,也可以是另一个类的子类,








class
Person extends Object {
//类中定义的 全局变量,如果有赋值。
//第一次类调用时被执行


//编译原理


//正确代码-->编译通过-->所有代码.java 编译成了.class
// java虚拟机执行的是 .class
//.class执行方式,第一次调用.class时,内部代码从上到下执行一边。 全局变量附上值,方法放到内存里
String name="李光";// 姓名
public Person() {
// super();//写不写该语句,效果一样
System.out.println("execute Person()");
}
public Person(String name) {
this.name = name;
System.out.println("execute Person(name)");
}
}


class Student extends Person {
String school="北大";// 学校
public Student() {
// super();//写不写该语句,效果一样
System.out.println("execute Student() ");
}
public Student(String name, String school) {
super(name); // 显示调用了父类有参构造方法,将不执行无参构造方法
this.school = school;
System.out.println("execute Student(name,school)");
}
}


class PostGraduate extends Student {
String guide;// 导师
public PostGraduate() {
//隐式调用
// super();//写不写该语句,效果一样
System.out.println("execute PostGraduate()");
}
public PostGraduate(String name, String school, String guide) {
super(name, school);
this.guide = guide;
System.out.println("execute PostGraduate(name, school, guide)");
}
}


class TestInherit {
public static void main(String[] args) {
PostGraduate pgdt=null;
pgdt = new PostGraduate();
System.out.println();
pgdt=new PostGraduate("刘致同","北京大学","王老师");
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值