java先继承再接口_java的继承、接口方面的语法及知识

本文详细介绍了Java中的继承概念,包括单继承、构造方法的调用规则、super关键字的使用、this关键字的作用以及初始化顺序。同时,讲解了方法覆盖(override)与重载(overload)的区别,抽象类(abstract class)和final关键字的功能,以及接口(interface)的使用。此外,还探讨了类的加载过程和对象构造的细节。
摘要由CSDN通过智能技术生成

继承(inheritance):一个类只能继承一个类

代码复用

继承的语法:

class ChildClass extends ParentsClass{

}

父类的属性子类中都存在,只是有没有权限访问的问题

根据名字找谁是谁?

1.变量-> 类型 (类、接口)->接口

2.已经确定是变量

局部变量、形参->类的属性-> 外部类的属性

就近原则

构造方法:

注意默认的那个无参构造方法

优先调用父类的构造方法

如果没有明确指出,java会插入一条调用父类的构造方法(无参的)

利用super关键字:

1.调用父类的构造方法

2.去访问被隐藏的父类的属性

3.去调用被覆写的父类的方法

调用父类的构造方法一定出现在本类构造方法的第一行

this关键字的作用:

1.访问对象的属性或方法(当前对象)

2.调用其他构造方法

3.代表本对象

调用构造方法:先父类后子类

加载构造方法:先父类后子类

***必须在父类的所有初始化完再去执行子类的初始化

执行顺序:

static属性初始化是在类的加载时按顺序执行

定义时初始化、代码块初始化

普通属性初始化是在对象的构造时执行

1.定义时初始化和构造代码块按书写顺序执行

2.构造方法初始化

类的加载:

1.什么是类的加载(Node类的加载)?

从硬盘上找到Node.class,解析该文件内容,生成Node类,把Node类的信息存放在内存的方法区

2.什么情况下会触发类的加载,并且该类不在内存中

按需加载(懒加载过程)

1.实例化该类的一个对象 new Node(1);

2.使用类的静态属性或者静态方法 Main.merge(...)

3.用到子类必须先要有父类 new CNode

对象的构造、实例化 new Node

规则:

1.优先初始化父类的属性

2.按照下面的顺序执行初始化

按照代码书写顺序,执行定义时和构造代码块

再去执行构造方法

覆盖(override)(方法不是静态方法)

方法名一致,参数列表一致

方法签名:方法名称+形参·列表

方法重载:方法名称+参数列表不同

构造对象的语法:

Node node=new Node(1);

new的作用:

1)为对象计算所需内存的大小

2)申请空间

3)初始化0x0

static只能出现在成员级别

static 和对象进行解绑

abstract 关键字有什么作用?

1.修饰类·,该类是抽象类,无法被实例化的类

abstract class A{} new A是错误的

2.修饰方法,该方法是抽象方法,没有被实现的方法

abstract void method();

包含抽象方法的一定是抽象类。

抽象类不一定包含抽象方法。

fina关键字有什么作用:

1.修饰类:表示该类无法被继承

2.修饰方法:该方法无法被覆写(方法名和形参)

3.修饰变量:该变量的值只能被初始化一次,无法再次修改

final类中不可以有abstract方法

final类和final方法基本没关系

重载overload和覆写override:

1.方法签名:方法名+形参列表

重载:方法名相同,形参列表不同

2.覆写,发生在子类继承父类或者类实现接口

1).方法名和形参列表相同

2).方法的返回类型要比父类的返回类型相等或者小

3).访问限定符:访问限定符只能和父类的相同或者大

4).@Override 注解

接口:一个类可以有多个接口

interface 接口名

引用=对象;

1.引用只能指向对象,或者什么都不指向

2.数组引用、类类型引用、接口类型的引用

3.对象:数组对象、非抽象类类型的对象

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值