Java第八课

这节课重点学习了继承,关键词 extends,相比前两节课,感觉轻松一点。 父类也叫基类,子类也叫派生类

复用类
1.	定义:重复使用的类
2.	表现形式:
   ①	组合:新建的类包含其它现有的类
      1)	汽车(SedanCar、Truck)
        a.	车窗(Window)
        b.	车门(Door)
        c.	车轮(Wheel)
        d.	车身(Body)
   ②	继承:新建的类承自于旧的类
      1)	语法:
        java中所有的类都直接或间接继承Object
            i.	直接		Obejct->Test
            ii.	间接		Obejct->Test->AA

      2)	格式:访问修饰词 class类名extends父类(基类)
      3)	特点:
        a)	父类的public属性可以直接给子类使用
        b)	子类与父类拥有同名属性,使用的是子类的属性(就近原则/隐藏)
        c)	子类与父类拥有相同方法,使用的是子类的方法(就近原则/覆盖)
        d)	子类与父类拥有相同方法,但子类的方法参数与父类不同(重载)
        e)	同名方法,子类方法的修饰词必须大于父类
3.	继承时
                    protected				不写
    同包下的子类		可用				可用
    跨包下的子类		可用				不可用
4.	super关键词
       ①	调用构造器
        1)	构造器不被继承
        2)	默认调用父类缺省构造器
        3)	调用构造器要写在代码首行
       ②	调用属性
       ③	调用方法
5.	继承时初始化顺序
    ①	无继承:静态---非静态--构造器
    ②	继承:父类静态-子类静态-父类非静态-父类构造器-子类非静态-子类构造器
6.	final关键词
    ①	属性
        1)	被final修饰过的属性称为常量
        2)	被final修饰过的属性一定要赋初值
        3)	被final修饰过的属性不能修改值
        4)	被final修饰过的对象属性不能被重新实例化,但对象属性中的值可以被修改
        5)	final属性可以用构造器赋初值,但是必须所有的构造器都给它赋初值;
        6)	静态空白final属性不能再构造器赋初值
    ②	方法
        1)	被final修饰过的方法不能被子类重写
    ③	类
        1)	被final修饰过的类不可以被继承

复制代码

作业:编写一个基类Person类,子类Student类,使用带参数的构造器Student(int id)对域id初始化,并把参数id通过构造器传给基类构造器Person(int id)

public class Person {
    int id;
    int age;
    double weght;
    public Person(int id){
        this.id=id;
    }
}
复制代码
public class Student extends Person {
    public Student(int id){
        super(id);
    }
    public static void main(String[] args) {
        Student stu=new Student(1);
    }
}
复制代码

转载于:https://juejin.im/post/5b630d89e51d4519873f8971

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值