Java关键字this与super详解用法

Java关键字this与super详解用法

this关键字

介绍

在Java中,this是一个关键字,它可以用来引用当前对象。每个对象都有一个隐式的this引用,它指向对象的本身。使用this关键字可以访问当前对象的成员变量、成员方法、构造方法等。

用法

访问成员变量

使用this关键字可以访问当前对象的成员变量。如果成员变量与方法参数的名字相同,就可以使用this关键字来区分。

public class Person {
    private String name;

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return this.name;
    }
}

调用构造方法

在一个构造方法中,可以使用this关键字来调用同一类的另一个构造方法。

public class Person {
    private String name;
    private int age;

    public Person() {
        this("John", 20);
    }

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }
}

在上面的例子中,第一个构造方法调用了同一类的另一个构造方法,这个构造方法接受两个参数:name和age。第一个构造方法调用的是第二个构造方法,并传递了"John"和20作为参数。

super关键字

介绍

在Java中,super是一个关键字,它可以用来引用父类的成员变量、成员方法、构造方法等。使用super关键字可以访问父类的内容。

用法

访问父类成员变量和成员方法

可以使用super关键字来访问父类的成员变量和成员方法。如果子类和父类中有名字相同的成员变量或成员方法,可以使用super关键字来访问父类的成员变量或成员方法。

public class Student extends Person {
    private String school;

    public String getSchool() {
        return this.school;
    }

    public String getName() {
        return super.getName();
    }
}

在上面的例子中,子类Student中有一个成员变量school,没有与父类Person中的成员变量name重名。但是,子类中的getName()方法与父类中的getName()方法重名,因此使用super关键字来访问父类的getName()方法。

调用父类构造方法

可以使用super关键字来调用父类的构造方法。如果子类没有显式的调用父类的构造方法,则编译器会自动调用父类的无参构造方法。如果子类显式的调用了父类的构造方法,则必须放在构造方法的第一行。

public class Student extends Person {
    private String school;

    public Student(String name, int age, String school) {
        super(name, age);
        this.school = school;
    }
}

在上面的例子中,子类Student中显式的调用了父类Person的带参构造方法,通过super关键字调用。子类中的构造方法可以访问子类本身和父类的成员变量和成员方法。

阅读剩余 52%

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java关键字this与super详解用法 - Python技术站

(0)
上一篇 2023年6月26日
下一篇 2023年6月26日

相关文章

  • PHP使用递归方式列出当前目录下所有文件的方法

    让我来详细讲解PHP使用递归方式列出当前目录下所有文件的方法。 1. 确定目录 首先,我们需要确定要列出文件的目录。可以使用php中的getcwd()函数来获取当前执行脚本的目录,或者使用chdir()函数切换到指定的目录。 2. 递归函数 接下来,我们需要编写递归函数来遍历目录下的所有文件和子目录。递归函数的基本框架如下所示: function recur…

    other 2023年6月27日
    00
  • windows系统里面的hosts文件

    在Windows系统中,hosts文件是一个重要的网络配置文件,它可以用来映射主机名和IP地址。以下是一个完整攻略,介绍了如何在Windows系统中使用hosts文件。 步骤1:打开hosts文件 首先,我们需要打开hosts文件。hosts文件位于C:\Windows\System32\drivers\etc目录下。我们可以使用记事本或其他文本编辑器打开它…

    other 2023年5月6日
    00
  • 详解vue嵌套路由-query传递参数

    详解Vue嵌套路由 – Query传递参数 在Vue中,嵌套路由是一种常见的技术,用于构建复杂的应用程序。通过嵌套路由,我们可以在一个页面中加载其他页面,并且可以通过URL参数传递数据。本攻略将详细介绍如何在Vue中使用嵌套路由和Query参数传递数据。 步骤1:设置路由 首先,我们需要设置Vue的路由。在Vue项目的router/index.js文件中,我…

    other 2023年7月28日
    00
  • Android SurfaceView拍照录像实现方法

    Android SurfaceView拍照录像实现方法攻略 在Android开发中,使用SurfaceView可以实现拍照和录像功能。下面是详细的攻略,包含两个示例说明。 示例一:拍照功能实现 在布局文件中添加SurfaceView组件: <SurfaceView android:id=\"@+id/surfaceView\" an…

    other 2023年9月7日
    00
  • C++非递归建立二叉树实例

    C++非递归建立二叉树实例的攻略如下: 步骤一:定义二叉树的结构体 首先,我们需要定义一个二叉树的结构体。在这个结构体中,我们需要定义每个节点的值、左右子树指针。 struct TreeNode { int val; TreeNode* left; TreeNode* right; // 构造函数 TreeNode(int x) : val(x), left…

    other 2023年6月27日
    00
  • 访问编码后的中文URL返回404错误的解决方法

    当我们访问编码后的中文URL时,有时会遇到404错误的情况,这是由于服务器未对编码后的URL进行解码导致的。解决这种问题的方法是对URL进行解码,使其转换回中文字符。 下面是解决“访问编码后的中文URL返回404错误的解决方法”的完整攻略: 步骤一:确认是否是URL编码问题 访问编码后的URL时,如果出现404错误,可以先确认是否是URL编码的问题。可以通过…

    other 2023年6月26日
    00
  • SQL2000中的默认sa帐号的修改与删除方法

    SQL2000中的默认sa帐号的修改与删除方法 在SQL2000中,SA(System Administrator)是默认的超级管理员账户,拥有最高的权限。为了保证数据库的安全性,我们需要定期修改和强化SA账户的密码,或者将其删除。 修改SA密码 方法一: 在SQL Server Management Studio中,选择“安全性”>“登录名”>…

    other 2023年6月27日
    00
  • NET LOCALGROUP命令详解(将用户添加到管理员组等)

    NET LOCALGROUP命令详解:将用户添加到管理员组等 概述 NET LOCALGROUP命令是一种在 Windows 系统中管理本地组的命令行工具,提供了向本地组中添加、删除和更改用户和其他本地组的成员的功能。 语法 以下是NET LOCALGROUP命令的基本语法: NET LOCALGROUP [组名] [用户名] [/ADD | /DELETE…

    other 2023年6月27日
    00
合作推广
合作推广
分享本页
返回顶部