Java中除了this,还有一个关键字super,super指父类,在类的继承中有重要的作用。
1.使用super访问父类的属性和方法
子类自动继承父类的属性和方法(除private修饰),一般情况下,直接使用父类的属性和方法,也可使用this来指明本对象。但有时为了明确指明父类的属性和方法,使用关键字super。
如:父类Person中有age属性,子类使用age,this.age,super.age来访问age是一样的:
void testSuper(){ int a; a=age; a=this.age; a=super.age; }
当然,使用super不能访问子类自己定义的属性和方法。
有时需要使用super来区别同名的属性和方法。使用super可以访问被子类隐藏的同名变量,或者当子类覆盖了父类的同名方法的同时,想调用父类的方法,使用super。如:
void sayHello(){ super.sayHello(); System.out.println("My School is"+school); }
2.使用父类的构造函数
在严格意义上,构造函数不允许继承,但这并不意味着子类不能调用父类的构造方法。子类在构造方法中,可以使用super来调用父类的构造函数。
Student(String name,int age,String school){ super(name,age); this.school=school; }
使用时,super应放在第一句。
3.使用super的注意事项
在使用super时,super指的是调用“对象”本身,而不是指父类中看见的属性和方法。由于他指的是对象,所以不能在static的环境中使用,包括类变量(static field)和类方法(static method),static语句块。
相关推荐
如果我们想在子类的构造函数中使用 super,但是没有放在第一行,那么在 super 之前的语句肯定是为了满足自己想要完成某些行为的语句,但是又用了 super 继承父类的构造方法。那么以前所做的修改就都回到以前了,就是...
在Java编程语言中,`super`关键字是一个非常重要的概念,它允许我们引用当前对象的父类中的成员。这个关键字在处理继承关系时尤其有用,帮助我们实现多态性并访问被隐藏或重写的成员。本篇文章将深入探讨`super`...
Java 中的 this 和 super 的用法 Java 中的 this 和 super 是两个非常重要的关键字,它们都是用来访问对象的成员变量和方法的。下面我们将详细地讨论这两个关键字的用法和区别。 一、基础知识 1. super(参数):...
java实现supermarket源码java实现supermarket源码java实现supermarket源码java实现supermarket源码java实现supermarket源码java实现supermarket源码java实现supermarket源码java实现supermarket源码java实现super...
java代码-使用java解决super的用法的源代码 ——学习参考资料:仅用于个人学习使用!
在Java编程语言中,`super`关键字是一个非常重要的概念,它用于引用当前对象的父类。`super`关键字主要用于以下几种情况:调用父类的构造器、访问父类的成员变量以及调用父类的非私有方法。下面我们将详细探讨`super...
在Java编程语言中,`super`关键字是一个非常重要的概念,它用于引用当前对象的父类。这个关键字在处理继承关系时特别有用,帮助我们更好地理解和操作对象的层次结构。在这个主题中,我们将深入探讨`super`关键字在...
Java 中 this 与 super 用法 在 Java 中,this 和 super 是两个重要的关键字,它们都是用于访问当前对象或父类中的成员变量或方法的。 this 用法 this 的用法在 Java 中大体可以分为三种: 1. 普通的直接引用 在...
Java 中 this 与 super 的用法 Java 中的 this 和 super 是两个非常重要的关键字,它们都是用来访问对象或父类的成员变量或方法的。下面我们将详细地讲解它们的用法和区别。 首先,让我们来看一下 this 关键字。...
要注意的是this只能在类中的非静态方法中使用, 静态方法和静态的代码块中绝对不能出现this。this也可作为构造函数来使用。在后面可以看到 而什么是super,可以理解为是指向自己超(父)类对象的一个指针, 而...
- **引用当前对象的属性**:可以在方法或构造器中使用`this`来引用当前对象的属性。 ```java public class Person { private String name; public void setName(String name) { this.name = name; // 使用this...
java中this 与super的详解
Java中的super关键字详解 Java中的super关键字是用于访问父类的成员变量或成员方法的关键字。super关键字的使用可以让子类访问父类的成员变量或成员方法,从而实现继承的效果。 1. super关键字的使用 super关键字...
总的来说,这篇博客和提供的测试文件"SuperCSVTest"是学习和理解如何在Java中使用SuperCSV库进行CSV操作的宝贵资源。通过深入阅读和实践,开发者能够熟练掌握CSV文件的读写技巧,提高数据处理效率,并确保数据的一致...
在Java编程语言中,`static`、`this`、`super`和`final`是四个非常重要的关键字,它们各自有着特定的用途和含义。 1. **static**: 静态关键字`static`用于声明类级别的变量和方法,即静态变量和静态方法。静态变量...
在Java编程语言中,`static`, `this`, `super`, 和 `final` 是四个非常重要的关键字,它们分别代表不同的概念并具有特殊的用法。 一、`static` `static` 关键字用于声明类级别的成员(变量或方法),这意味着它们...
这意味着,当我们在子类中使用`super`时,我们实际上是间接地操作父类的成员。 1. 访问父类中的隐藏成员变量: 当子类中存在与父类同名的成员变量时,子类的变量会隐藏父类的变量。这时,我们可以使用`super`...
Java this 和 super 代码实例及使用方法总结 Java 编程语言中,this 和 super 是两个非常重要的关键字,这两个关键字在面向对象编程中扮演着非常重要的角色。下面我们将详细介绍 Java 中 this 和 super 的用法。 ...
在"java-supermarket.zip"中,MyBatis与Spring框架集成,通过配置文件或注解定义SQL映射,实现了数据库的增删查改操作,为业务逻辑提供数据支持。 系统中的Controller层主要负责接收HTTP请求,对请求进行处理,并将...