java getter和setter作用是什么?

来源:百度知道 编辑:UC知道 时间:2024/05/23 23:49:18
在java中经常是声明一个私有的变量,然后给出他们的公共的getter和setter方法。比如:private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
请问:这样做的好处是什么?为什么要定义getter和setter呢。直接public String name;这样不是省去很多麻烦吗?

注:希望真正懂的给个明确的答案。在浏览一些技术方面的帖子的时候发现有些人根本就不懂(也许是只学了点皮毛),就那里里信口开河胡说乱说。

get和set就是java中的封装技术。首先我们需要知道,一旦一个变量被“private”私有化了,那么在其他类文件就不能引用(使用)它。使用“private”是把被使用的变量保护起来,使别人不知道这个变量的名称是什么,有保护的作用。

而set和get就是在和“private”私有化的变量在同一个类文件中,set和get是“public”共有的,也就是说这两个方法是可以被在其他类文件中使用的。set方法的意思是定义一个方法含一个参数,把所含有的这个参数(后期自己设置)赋给你需要私有化的变量(在当前类中设置),相当于充当媒介,外界想要改变已经“private”私有化的变量,必须要在其他类文件中给方法set一个参数,通过set变量来更改。

set的名字可以随便取,如此一来其他类中根本不知道在另一个类中“private”私有化的变量名称,也不能直接更改。get则是获取这个私有化的变量值。是定义了一个带返回类型的方法,这个返回类型就是已经被你私有化变量的类型。以题目为例,你私有化了String类型的name,那么get方法的返回类型就是String类型,同时返回当前类中name的值。

这样一来在其他类文件中,可以通过set方法来给和更改另一个类中的加密变量值,可以通过get来获取另一个类中加密的变量值,而这个被加密的变量则变量名始终没有人知道。

setter是什么意思? JAVA关键字具体的作用和用法 pace-setter 是什么意思? Java中有关于sesstion的特点和作用等等 请高手详细介绍JAVA的优点和作用 java中main()方法的作用和注意事项 函数在C语言和JAVA中的作用是什么? 这些JAVA关键字各有什么用处和作用?? Java中设置class和CLASSPATH分别有什么作用? FIREFOX选项里有启用JAVA和JAVA SCRIPT,这了两项起何作用?