JAVA面对对象——3.关键字

本文深入解析了Java中的关键概念,包括this、super、static、final、extends、implements和instanceof等关键字的用法与应用场景,帮助读者理解这些核心概念在类、对象、属性和方法中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

this关键字

this强调是本类中的
1.什么是this
this是对象在方法中对自身的引用
2.用法
this.<属性>
区分成员变量和局部变量

this.<方法>()
不常用
this()
调用当前类的构造
必须编写在构造方法中
必须编写在方法中的第一行
this无法调用static修饰的构造方法
this在调用构造方法时最好留一个构造方法作为出口,即程序中至少存在一个构造方法不是使用this调用其他构造方法的。

重点:
this表示当前对象:
当前对象就是指当前正在调用类中方法的对象

static关键字

static只能修饰成员,英文含义是静态
1)修饰属性
1.1)被static修饰的属性
所有对象共享同一个值
1.2)被static修饰的属性值
会被保存在内存的方法区中
1.3)当该类的所有对象共享同一个
资源时,将这个资源设置为静态
能够节省内存
1.4)官方建议静态属性使用类名调用
1.5)静态属性也成为类属性

2)修饰方法
2.1)使用static修饰方法
该方法称之为静态方法,类方法
2.2)静态方法可以直接使用类名调用
无需实例化对象
2.3)静态方法中无法调用
普通(实例)属性和方法
因为静态方法中没有this
(静态方法只能访问静态属性)
2.4)如果一个方法不需要
访问当前类中的实例成员
就可以定义成静态的
2.5)静态方法不能被重写

3)修饰初始化块
3.1)什么是初始化块
在代码中直接编写{}
{}中的内容就是初始化块
初始化块中的内容
会在构造方法运行前运行
3.2)被static修饰的初始化块
只会运行一次
3.3)运行时机是JVM使用这个类之前
JVM加载类时运行静态块
加载类的情况
1.实例化对象
2.使用类名调用静态成员
3.反射相关技术
在这里插入图片描述
方法区:被共享

super

1)super
是对象在方法中
对父类对象的引用
2)super.<属性>
super.<方法>();
super调用父类的属性和方法
主要用于需要区分同名成员时
super();调用父类构造
必须编写在
构造方法中的第一行
在这里插入图片描述
super可以从父类中调用它的属性、构造方法、普通方法,强调的是父类中的

在这里插入图片描述

final关键字(最终)

1)final修饰类
被final修饰的类不允许有子类
子类不能继承被final修饰的类
2)final修饰方法
表示该方法不允许被子类重写
3)final修饰属性
属性值不能被修改
被final修饰的属性有两种赋值方法
1.声明的同时赋值
2.在构造方法中赋值
(使用final声明的变量即成为常量,不可修改)
4)final修饰局部变量
修饰方法中声明的变量:
只能被赋值一次
形参是已经被赋值的局部变量
final修饰的形参,值不能修改

extends关键字

在 Java 中,类的继承是单一继承,也就是说,一个子类只能拥有一个父类,所以 extends 只能继承一个类。

implements关键字

使用 implements 关键字可以变相的使java具有多继承的特性,使用范围为类继承接口的情况,可以同时继承多个接口(接口跟接口之间采用逗号分隔)。

instanceof关键字

用于判断一个对象到底是哪个类的实例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值