2021-05-05

面向对象的特征-------继承
继承
1.提高了代码的重用性,子类继承了父类的所有属性和方法,所以子类不再重复定义
2.提高了代码的可扩展性,子类可以写自己独特的属性和方法,在父类的基础上进行扩展
继承的语法:
[ 修饰符]  class  类名   extends  父类  impleemeents  接口{
继承的说明
1.子类继承了父类的所有属性和方法,只不过只能调用父类的非private(私有的)属性和方法
2.java中的继承只支持单继承,意思就是说一个子类只能继承一个父类,但允许多层继承
3.父类的无参构造器方法,子类也可以继承
4.利用super调用父类的有参构造器,加上super指父类的方法,不加super指的是子类的方法

//人类----父类
public class Person {
String name;
int age;
//无参构造器方法
public Person() {
System.out.println("我是人类里面的无参构造器方法!");
}
//有参构造器方法
public Person(String name) {
super();
this.name=name;
System.out.println("我是父类的有参构造器方法!");
}
public void eat() {
System.out.println("吃饭!");
        }
}


//男人类-----子类
/**
 * extends ---继承的关键字  只能写一个类名   
 * 继承的语法     public class Man extends java0420{}
 * 一个父类可以有多个子类,父类可以被多个子类继承
 * 无参构造器方法也是遗产,也可以继承
 */

public class Man extends Person{
String name;
char sex;
//无参构造器方法
public Man() {
System.out.println("我是Man里面的无参构造器方法!");
}
//有参构造器方法
public Man(char sex) {
/**
* super关键字
*     超级的
 * 利用super调用父类的有参构造器方法
 * 加上super指父类的方法,不加super指的是子类的方法
 */
//利用super调用父类的有参构造器
super("张三");
this.sex=sex;
System.out.println("我是子类的有参构造器方法!");
}
public void hair() {
System.out.println("男生一般都是短发!");
    }
}
//测试类
public class test {
public static void main(String[] args) {
    Man m=new Man();
M1.hair();
m1.age=18;
M1.eat();    
}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值