Java中的get()和set()

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中的get()和set()相关的知识,希望对你有一定的参考价值。

我们在Java中定义类的时候,会定义类的内部属性,考虑到面向对象编程中的封闭性和安全性,我们经常会将内部属性封闭性操作,即对类中的域变量进行封闭操作,即用private来修饰他们,如此一来其他外部类则不能对该变量访问。通过对象实例直接操作内部变量是一个不好的习惯,一般而言我们只应该通过对象的方法对实例变量操作,这样不仅安全、也可以为了减少误操作,直接访问变量没有办法进行参数检查和控制,而通过方法修改,可以在方法中检查。
这样我们将类变量封闭在类结构内部,从而达到提高数据安全性的功能,那么我们如何操作这些域变量?
我们可以通过两种方法,第一中即通过public方式的构造器(或称构造函数),对象一实例化就对该变量赋值。第二种就是通过上面提到的set和get方法,这里我举一个特定的例子,我定义一个Person类,该类中有name、age这两个私有域变量,然后我定义setname()、getname()、setage()、getage()这四个方法,通过这四个方法来实现对name和age的操作。这样一来,我不用直接对Person类中的域变量操作,而是通过set和get方法间接地操作这些变量,这样就能提高域变量的安全性,同时又保证了域变量的封装型。

package cn.itcast.domain;
import java.util.Date;
public class User {
private String username;

private String password;

private String gender;

private Date birthday;

private String email;

public String getUsername() {

return username;

}

public void setUsername(String username) {

this.username = username;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

public String getGender() {

return gender;

}

public void setGender(String gender) {

this.gender = gender;

}

public Date getBirthday() {

return birthday;

}

public void setBirthday(Date birthday) {

this.birthday = birthday;

} public String getEmail() {

return email;

}

public void setEmail(String email) {

this.email = email;

}
}

以上是关于Java中的get()和set()的主要内容,如果未能解决你的问题,请参考以下文章

Java_get和set方法

java封装中的private关键字和set及get方法

Java中的内省(introspector)

Python中的get和set方法

Java中set方法传递一个数组,用get方法怎么获取数组中的内容?

java.sql.SQLException:游标状态无效:标识符游标未定位在 UPDATE、DELETE、SET 或 GET 语句中的行上:;结果集为空