Java中的setting和getting使用方法

 更新时间:2024年09月25日 09:16:57   作者:空白666  
为了保障数据的安全性,通常将数据成员定义为private(封装或私有化),这样外部代码就无法直接访问这些数据,只能通过类提供的公共方法来进行访问,这种方法主要包括setter和getter方法,以及构造方法,setter方法用于给私有属性赋值

Java中的setting和getting使用

1.为了保证数据的安全性,把数据定义为private等(封装/私有),如果调用就会用到setter()和getter()方法或者构造方法。

2.Setter:赋值,Getter:取值。

3.使用该类便new一个对象,赋值:XX.setXXX(); 取值:XX.getXXX();

public class HomeWork3 {
    public static void main(String[] args) {
        Person p=new Person("qq",12);
        p.display();
        Person p1=new Person();
        p1.setAge(23);
        p1.setName("ww");
        p1.display();
    }
}
class Person{
    private String name;
    private int age;

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

    public String getName() {
        return name;
    }

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

    public int getAge() {
        return age;
    }

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

    public void display(){
//        System.out.println("name:"+this.getName()+"age"+this.getAge());
//        System.out.println("name:"+this.name+"age"+this.age);
        System.out.println("name:"+name+"age"+age);
    }
}


Java自动生成getter和setter方法

getter和setter方法调用

首先我们先定义一个类

package csdn;

public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

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

然后我们为私有属性添加getter和setter方法。

下面提供一种快速添加getter和setter的方法。以ecplise为例。

  • 先在你要添加的位置上右键
  • 然后source->Generate Getter and Setter
  • 选中你要添加的变量generate就ok了


为什么我们要用getter和setter方法呢

  • 如果我们把类变量声明为私有的,则一定程度上实现了对数据封装。防止其他程序修改你的变量。
  • 通过getter和setter方法能更好的保护你的数据。例如在setter方法中加一些逻辑。
		public void setAge(int age) {
			if(age<30&&age>10)
			{
			this.age = age;
			}
		}

这样当修改age属性的时候,就只能改在10到30岁之间。

  • 当然你也可以这样用
		public void setAge(int age) 
		{	
			this.age = age+10;
		}

这样别人就不知道你具体setAge具体怎么写的了。更好的实现数据的封装。

getter方法类似。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java连接mongoDB并进行增删改查操作实例详解

    java连接mongoDB并进行增删改查操作实例详解

    这篇文章主要介绍了java连接mongoDB并进行增删改查操作,结合实例形式详细分析了java环境下MongoDB扩展包的下载、安装及操作MongoDB连接、增删改查等相关操作技巧,需要的朋友可以参考下
    2019-04-04
  • Java面试题冲刺第二十天--算法(1)

    Java面试题冲刺第二十天--算法(1)

    这篇文章主要为大家分享了最有价值的三道关于算法的面试题,涵盖内容全面,包括数据结构和算法相关的题目、经典面试编程题等,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • 修改xml文件再也不用重启项目mybatis-xmlreload方法

    修改xml文件再也不用重启项目mybatis-xmlreload方法

    这篇文章主要为大家介绍了修改xml文件再也不用重启项目mybatis-xmlreload,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • Java实现解数独的小程序

    Java实现解数独的小程序

    最近在学习Java,然后上个月迷上了九宫格数独,玩了几天,觉得实在有趣,就想着能不能用编程来解决,于是就自己写了个,还真解决了。下面这篇文章就给大家主要介绍了Java实现解数独的小程序,需要的朋友可以参考借鉴。
    2017-01-01
  • @Transactional和@DS怎样在事务中切换数据源

    @Transactional和@DS怎样在事务中切换数据源

    这篇文章主要介绍了@Transactional和@DS怎样在事务中切换数据源问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • spring整合redis缓存并以注解(@Cacheable、@CachePut、@CacheEvict)形式使用

    spring整合redis缓存并以注解(@Cacheable、@CachePut、@CacheEvict)形式使用

    本篇文章主要介绍了spring整合redis缓存并以注解(@Cacheable、@CachePut、@CacheEvict)形式使用,具有一定的参考价值,有兴趣的可以了解一下。
    2017-04-04
  • Spring boot @RequestBody数据传递过程详解

    Spring boot @RequestBody数据传递过程详解

    这篇文章主要介绍了Spring boot @RequestBody数据传递过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • 关于SpringBoot创建存储令牌的媒介类和过滤器的问题

    关于SpringBoot创建存储令牌的媒介类和过滤器的问题

    这篇文章主要介绍了SpringBoot创建存储令牌的媒介类和过滤器的问题,需要在配置文件中,添加JWT需要的密匙,过期时间和缓存过期时间,具体实例代码参考下本文
    2021-09-09
  • Java泛型机制与反射原理相关知识总结

    Java泛型机制与反射原理相关知识总结

    今天带大家学习的是关于Java进阶的相关知识,文章围绕着Java泛型机制与反射原理展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • Spring中缓存注解@Cache的使用详解

    Spring中缓存注解@Cache的使用详解

    这篇文章主要介绍了Spring中缓存注解@Cache的使用详解,使用注解对数据进行缓存功能的框架,只需要简单地加一个注解,就能实现缓存功能,大大简化我们在业务中操作缓存的代码,需要的朋友可以参考下
    2023-07-07

最新评论