Java中构造方法set/get和toString的使用详解

Java中构造方法set/get和toString的使用详解”即是一篇文章,下面是这篇文章的完整攻略。

Java中构造方法set/get和toString的使用详解

构造方法

在Java中,构造方法是用于创建对象时进行初始化的方法,其名称必须与名称相同。

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

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

上面的代码中,我们定义了一个名为Person的类,其中包含了一个构造方法。构造方法中含有两个参数,分别是name和age。在方法体中,我们使用了this关键字来引用当前对象。this.name和this.age中的this是可选的。它们的作用是明确指出我们在访问实例变量,而不是访问局部变量。

无参构造方法

在Java中,编译器会自动为你生成一个无参构造方法:

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

    public Person() {}
}

默认的无参构造方法会隐式地调用超类的无参构造方法,如果超类没有无参构造方法,编译器将报错。

get和set方法

在Java中,get和set方法用于获取和设置对象的属性。

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

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

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

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

    public int getAge() {
        return this.age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

如上所示,在Person类中,我们定义了4个方法。方法名的前缀get和set分别用于获取和设置对象的属性,后面跟随的是属性的名称,即Name和Age。方法体中使用return语句返回对应属性的值或将值赋给属性。

示例1

public class Main {
    public static void main(String[] args) {
        Person person = new Person("张三", 20);
        System.out.println("Name: " + person.getName());
        System.out.println("Age: " + person.getAge());

        person.setName("李四");
        person.setAge(21);
        System.out.println("Name: " + person.getName());
        System.out.println("Age: " + person.getAge());
    }
}

在示例1中,我们创建了一个Person类的对象person,并将name和age分别初始化为“张三”和20。然后使用getName和getAge方法获取对象的属性,并输出到控制台。接下来,我们使用setName和setAge方法修改对象的属性值,并再次输出到控制台。最终输出结果为:

Name: 张三
Age: 20
Name: 李四
Age: 21

示例2

public class Student {
    private String name;
    private int age;
    private String classNumber;

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

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

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

    public int getAge() {
        return this.age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getClassNumber() {
        return this.classNumber;
    }

    public void setClassNumber(String classNumber) {
        this.classNumber = classNumber;
    }

    @Override
    public String toString() {
        return "姓名:" + this.name + ",年龄:" + this.age + ",班级:" + this.classNumber;
    }
}

在示例2中,我们创建了一个名为Student的类,其中有三个属性:name、age和classNumber。我们同样定义了get和set方法,用于获取和设置对象的属性值。同时,我们重写了toString方法,用于返回对象的详细信息。

public class Main {
    public static void main(String[] args) {
        Student student = new Student("张三", 20, "Class3");
        System.out.println(student.toString());
        student.setName("李四");
        student.setAge(21);
        student.setClassNumber("Class4");
        System.out.println(student.toString());
    }
}

在Main方法中,我们创建了一个Student类的对象student,并将name、age和classNumber分别初始化为“张三”、20和“Class3”。接下来,我们输出对象的详细信息,并使用setName、setAge和setClassNumber方法修改对象的属性值,最后输出更新后的详细信息。

运行上述代码后,控制台将输出以下信息:

姓名:张三,年龄:20,班级:Class3
姓名:李四,年龄:21,班级:Class4

总结

本文详细讲解了Java中构造方法set/get和toString的使用。构造方法用于创建对象时进行初始化,get和set方法用于获取和设置对象的属性,toString方法用于返回对象的详细信息。通过本文的学习,我们能够更加清晰地理解如何在Java中使用这些方法。

本文还提供了两个示例,分别演示了如何使用get和set方法以及如何定义toString方法。这些示例具有参考价值,可以帮助读者更好地理解本文所讲述的内容。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java中构造方法set/get和toString的使用详解 - Python技术站

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

相关文章

  • Flex 基于数据源的Menu Tree实现代码

    下面我将详细讲解如何基于数据源使用 Flex 实现 Menu Tree,包括实现过程、代码示例和注意事项。 实现过程 编写数据源 首先,我们需要定义用于菜单树结构的数据源。一般来说,数据源需要包含菜单项的名称、ID、父级ID,以及子菜单项。以下是一个示例数据源: <fx:Object label="Home" id="ho…

    Java 2023年6月15日
    00
  • Spring实战之缓存使用condition操作示例

    让我来为您详细讲解“Spring实战之缓存使用condition操作示例”的完整攻略。 1. 背景介绍 Spring Cache是Spring框架的一项优秀功能,它能够优化应用程序的性能和响应时间。通过使用Spring Cache,您可以将方法结果缓存在内存中,并在需要时直接从内存中获取缓存结果,从而避免了在每次调用方法时执行相同的计算。 2. 基本原理 S…

    Java 2023年5月19日
    00
  • MVC文件上传支持批量上传拖拽及预览文件内容校验功能

    下面我将详细讲解“MVC文件上传支持批量上传拖拽及预览文件内容校验功能”的完整攻略: 环境搭建 为了完成文件上传的功能,我们需要在项目中引入一些必要的依赖项。在ASP.NET Core MVC项目中,我们可以通过NuGet管理器安装以下几个依赖项: Microsoft.AspNetCore.Http Microsoft.AspNetCore.Mvc Micr…

    Java 2023年5月19日
    00
  • 详解Java线程-守护线程与用户线程

    详解Java线程-守护线程与用户线程 前言 多线程编程是Java中很重要的一部分,而线程分为两种类型:用户线程和守护线程。本文将着重介绍守护线程的概念、用法和示例,希望通过本文的学习,可以更好的理解Java线程。 什么是守护线程 守护线程是Java线程中的一种特殊线程,与用户线程的区别在于:守护线程不会阻止JVM的停止,当JVM没有用户线程运行时,即便还有守…

    Java 2023年5月19日
    00
  • Java定时器例子_动力节点Java学院整理

    下面是针对“Java定时器例子_动力节点Java学院整理”文章的完整攻略。需要注意的是,由于该文章非我编写,所以以下只是针对该文章内容的详细讲解。 标题 该文章的标题为“Java定时器例子_动力节点Java学院整理”,比较简洁明了,可以让人一眼看出该文章的主题。 介绍 文章的开头介绍了Java中定时器的概念和功用。详细讲解了Java中定时器相关类的使用,例如…

    Java 2023年5月26日
    00
  • 在Java下利用log4j记录日志的方法

    以下是“在Java下利用log4j记录日志的方法”的完整攻略: 一、前置条件 在开始之前,我们需要确保已经完成以下操作: 已经安装了Java开发环境,推荐使用JDK 1.8及以上版本。 已经下载了log4j的相关 jar 包,可以从官网上下载或者使用Maven等构建工具导入相关依赖。 熟悉基本的Java编程知识,了解日志概念。 二、添加log4j相关依赖 在…

    Java 2023年5月26日
    00
  • 关于SpringMVC对Restful风格的支持详解

    关于SpringMVC对Restful风格的支持详解 在Web开发中,RESTful风格的API设计已经成为了一种趋势。SpringMVC作为一个流行的Web框架,也提供了对RESTful风格的支持。本文将详细讲解SpringMVC对RESTful风格的支持,包括如何使用@RequestMapping注解、如何使用@PathVariable注解、如何使用@R…

    Java 2023年5月18日
    00
  • Java集合框架概览之ArrayList源码刨析

    Java集合框架概览之ArrayList源码刨析是一个非常重要的主题,需要我们详细探讨ArrayList源码实现的细节,以下为详细攻略: 了解ArrayList基本使用和源码实现 ArrayList基本使用 ArrayList是一个基于动态数组实现的集合类,并且实现了List接口,可以重复存储相同类型的数据。ArrayList也是Java集合框架中基础的数据…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部