java中类的继承

本节内容我们讲类的继承 ,首先,我们对java语言各区域以及修饰以说明。

下面是示例:

public class A{                       static静态修饰符只能修饰成员级别
1.属性/静态属性                       访问修饰符 public/default/package-private
2.方法/静态方法                       顶级和成员级别
3.构造方法                            proteced/private  成员级别
4.内部类
成员级别(member-level)
public static void main(String[]args){
方法级别(method-level)
}
}
顶级(top-level)

执行代码则是方法级别

下面我们谈谈引用和对象的生命周期;

引用:一种数据类型,背后含义指向一个对象。在我们的java语言中,98%无法直接看到对象,而是看到的引用。

对象的生命周期:

1.new分配空间

2.初始化时期

3.活跃时期

4.被判定死亡的时期

类的加载

运行时候

1.发生在运行期间。

2.把磁盘上的*.class文件(类字节码文件)载入到内存中的过程。

类加载器(ClassLoader)

3.类被加载到什么区域?  方法区

4.加载的是类的那些信息?   主要是方法语句数据   静态属性 元信息

5.类的加载时间是什么? 懒加载(延迟加载)需要的时候加载

6.那些时候类将会被用到?  1.new对象 2.访问静态属性/方法 3.反射

7.静态属性的初始化顺序  按照书写顺序执行(定义是初始化 静态代码块) 

编译期间

做的是将源文件(*.java)转化(编译Compile)为类字节码文件(*.class)

编译时期运行的不是我们的源代码,而是javac的程序,我们的程序只是别人的程序的一个输入。

运行时期 

运行的是java....,运行的是我们的程序 java会启动JVM虚拟机

有了前面的铺垫,下面我们进入正题  继承

面向对象的三大特征

1.封装  访问限定符

2.继承

3.多态

继承

目的 :代码的复用性,懒得写代码

继承表达的是一种有关系的类

Class Animal(void speak () {} )

Class brid{}

Class dog{}

继承的语法                                         类的定义

Class Animal{}                         夫类(Parent 类)   基类(Base 类) 超类(Super 类)

Class Bird extends Animal{}                子类(child 类)   派生类(Dervied class)

父类中有属性,与子类有什么关系?

方法的覆写  Override    继承

子类重写父类的一个方法

  方法名称相同,形参列表相同,返回类型相同(备注)

特列  允许返回值类型是父类方法类型的子类

List method();

ArrayList method();

访问限定符:不能比父类更加封闭

方法的重载 Overload   方法名称相同 形参列表不同

方法的签名   方法名称+形参列表

覆写/重写(Override)

一定发生在子类上,必须实现和父类

1.方法名称相同+形参列表相同+返回值类型相同的方法

2.目的:针对同一行为,表现出和父类的不同方式

3.访问限定符不能比父类更加封闭

4.一般建议用 @Override注解修饰

5.IDEA 可以用generate code 来自动生成

6.和重载做好区分(Overload)

super关键字 可以对照this看

1.super访问父类的构造方法

2.不是代表父类对象,可以抽象的理解,执行属性属于父类的那部分。

super不是引用          明确调用父类的方法

1.java中类继承,值允许单继承

父类和子类的关系 (涉及到super关键字)

类加载的关系

1)子类的加载必须触发父类

2)父类的加载一定在主类之前

2.对象实例化/构造的关系

子类的对象构造的过程会出发父类中属性的初始化过程。

父类的属性初始化过程一定发生在子类属性初始化之前。

  属性的初始化 

1)定义时初始化+构造代码块按书写顺序

2)构造方法

和super调用父类的构造方法无关。

 

 

 

 

 

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值