`
nubiyu
  • 浏览: 3899 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

Java中super的使用

阅读更多

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语句块。

分享到:
评论

相关推荐

    java中super关键字的三种用法

    如果我们想在子类的构造函数中使用 super,但是没有放在第一行,那么在 super 之前的语句肯定是为了满足自己想要完成某些行为的语句,但是又用了 super 继承父类的构造方法。那么以前所做的修改就都回到以前了,就是...

    Java super关键字使用

    在Java编程语言中,`super`关键字是一个非常重要的概念,它允许我们引用当前对象的父类中的成员。这个关键字在处理继承关系时尤其有用,帮助我们实现多态性并访问被隐藏或重写的成员。本篇文章将深入探讨`super`...

    Java中的this和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实现supermarket源码java实现supermarket源码java实现super...

    java代码-使用java解决super的用法的源代码

    java代码-使用java解决super的用法的源代码 ——学习参考资料:仅用于个人学习使用!

    1.java中super关键字的应用

    在Java编程语言中,`super`关键字是一个非常重要的概念,它用于引用当前对象的父类。`super`关键字主要用于以下几种情况:调用父类的构造器、访问父类的成员变量以及调用父类的非私有方法。下面我们将详细探讨`super...

    java中带super关键字的程序内存分析

    在Java编程语言中,`super`关键字是一个非常重要的概念,它用于引用当前对象的父类。这个关键字在处理继承关系时特别有用,帮助我们更好地理解和操作对象的层次结构。在这个主题中,我们将深入探讨`super`关键字在...

    java中this与super用法

    Java 中 this 与 super 用法 在 Java 中,this 和 super 是两个重要的关键字,它们都是用于访问当前对象或父类中的成员变量或方法的。 this 用法 this 的用法在 Java 中大体可以分为三种: 1. 普通的直接引用 在...

    Java中this与super的用法

    Java 中 this 与 super 的用法 Java 中的 this 和 super 是两个非常重要的关键字,它们都是用来访问对象或父类的成员变量或方法的。下面我们将详细地讲解它们的用法和区别。 首先,让我们来看一下 this 关键字。...

    Java中this与super的区别

    要注意的是this只能在类中的非静态方法中使用, 静态方法和静态的代码块中绝对不能出现this。this也可作为构造函数来使用。在后面可以看到 而什么是super,可以理解为是指向自己超(父)类对象的一个指针, 而...

    java中this 与super的详解

    java中this 与super的详解

    Java的super

    Java中的super关键字详解 Java中的super关键字是用于访问父类的成员变量或成员方法的关键字。super关键字的使用可以让子类访问父类的成员变量或成员方法,从而实现继承的效果。 1. super关键字的使用 super关键字...

    Java读写CSV之SuperCSV

    总的来说,这篇博客和提供的测试文件"SuperCSVTest"是学习和理解如何在Java中使用SuperCSV库进行CSV操作的宝贵资源。通过深入阅读和实践,开发者能够熟练掌握CSV文件的读写技巧,提高数据处理效率,并确保数据的一致...

    Java中static、this、super、final用法.doc

    在Java编程语言中,`static`、`this`、`super`和`final`是四个非常重要的关键字,它们各自有着特定的用途和含义。 1. **static**: 静态关键字`static`用于声明类级别的变量和方法,即静态变量和静态方法。静态变量...

    Java中static、this、super、final用法

    在Java编程语言中,`static`, `this`, `super`, 和 `final` 是四个非常重要的关键字,它们分别代表不同的概念并具有特殊的用法。 一、`static` `static` 关键字用于声明类级别的成员(变量或方法),这意味着它们...

    Java中super变量.pdf

    这意味着,当我们在子类中使用`super`时,我们实际上是间接地操作父类的成员。 1. 访问父类中的隐藏成员变量: 当子类中存在与父类同名的成员变量时,子类的变量会隐藏父类的变量。这时,我们可以使用`super`...

    Java this super代码实例及使用方法总结

    Java this 和 super 代码实例及使用方法总结 Java 编程语言中,this 和 super 是两个非常重要的关键字,这两个关键字在面向对象编程中扮演着非常重要的角色。下面我们将详细介绍 Java 中 this 和 super 的用法。 ...

    java-supermarket.zip

    在"java-supermarket.zip"中,MyBatis与Spring框架集成,通过配置文件或注解定义SQL映射,实现了数据库的增删查改操作,为业务逻辑提供数据支持。 系统中的Controller层主要负责接收HTTP请求,对请求进行处理,并将...

Global site tag (gtag.js) - Google Analytics