Java面向对象(10)--super关键字

简介: Java面向对象(10)--super关键字

在子类中使用super来调用父类中的指定操作:

①super可用于访问父类中定义的属性

②super可用于调用父类中定义的成员方法

③super可用于在子类构造器中调用父类的构造器


super的追溯不仅限于直接父类。


我们可以在子类的方法或构造器中,通过使用"super.属性“或”super.方法"的方式,显式的调用父类中声明的属性或方法。通常情况下,我们习惯省略“super.”


特殊情况:子类和父类中定义了同名的属性时,要在子类中调用父类中声明的属性,必须显式的使用"super.属性"的方式,表明调用的是父类中声明的属性。


特殊情况:子类重写了父类中的方法,要在子类的方法中调用父类中被重写的方法时,必须显式的使用"super.方法"的方式,表明调用的是父类中被重写的方法。


调用父类的构造器


可以在子类的构造器中显式的使用"super (形参列表)"的方式,调用父类中声明的指定的构造器。


"super (形参列表)"的使用,必须声明在子类构造器的首行。


在类的构造器中,针对于"this (形参列表)“或”super(形参列表)"只能二选一,不能同时出现,因为它们都是要求在首行的。


在构造器的首行,没有显式的声明"this (形参列表)“或”super(形参列表)",则默认调用的是父类中空参的构造器。


在类的多个构造器中,至少有一个类的构造器中使用了"super (形参列表)",调用父类中的构造器。


相关文章
|
3天前
|
存储 Java C语言
Java面向对象课程设计--类管理系统
Java面向对象课程设计--类管理系统
11 1
|
3天前
|
Java
Java面向对象特征(二)----- 继承
Java面向对象特征(二)----- 继承
Java面向对象特征(二)----- 继承
|
3天前
|
Java
Java面向对象特征(一)----- 封装
Java面向对象特征(一)----- 封装
|
4天前
|
机器学习/深度学习 Java API
杨校老师课堂之Java面向对象知识点整理集锦3
杨校老师课堂之Java面向对象知识点整理集锦
9 0
|
4天前
|
Java API 数据安全/隐私保护
杨校老师课堂之Java面向对象知识点整理集锦2
杨校老师课堂之Java面向对象知识点整理集锦
12 0
|
26天前
|
安全 Java 编译器
Java多线程基础-6:线程安全问题及解决措施,synchronized关键字与volatile关键字(一)
线程安全问题是多线程编程中最典型的一类问题之一。如果多线程环境下代码运行的结果是符合我们预期的,即该结果正是在单线程环境中应该出现的结果,则说这个程序是线程安全的。 通俗来说,线程不安全指的就是某一代码在多线程环境下执行会出现bug,而在单线程环境下执行就不会。线程安全问题本质上是由于线程之间的调度顺序的不确定性,正是这样的不确定性,给我们的代码带来了很多“变数”。 本文将对Java多线程编程中,线程安全问题展开详细的讲解。
40 0
|
1月前
|
存储 安全 Java
【亮剑】Java并发编程涉及`ThreadLocal`、`Volatile`、`Synchronized`和`Atomic`四个关键机制
【4月更文挑战第30天】Java并发编程涉及`ThreadLocal`、`Volatile`、`Synchronized`和`Atomic`四个关键机制。`ThreadLocal`为每个线程提供独立变量副本;`Volatile`确保变量可见性,但不保证原子性;`Synchronized`实现同步锁,保证单线程执行;`Atomic`类利用CAS实现无锁并发控制。理解其原理有助于编写高效线程安全代码。根据业务场景选择合适机制至关重要。
|
存储 缓存 Java
Java中不可或缺的关键字「volatile」
Java中不可或缺的关键字「volatile」
216 0
|
缓存 安全 Java
Java并发编程中的四个关键字:ThreadLocal、Volatile、Synchronized和Atomic
Java并发编程中的四个关键字:ThreadLocal、Volatile、Synchronized和Atomic
233 0
|
缓存 安全 Java
Java 关键字特性增强-Volatile
Java高级特性增强-Volatile volatile关键字 volatile特性
155 0
Java 关键字特性增强-Volatile