Java中set(),get()方法中的getName()、setName()、getAge()、setAge()

set(),get()方法的理解

为什么要用set(),get()方法

在我们实例化一个类对象的时候,要对这个类对象的属性进行赋值,并且输出这个类的属性。
举一个例子:
假如定义了一个Person类,要对Person类中的名字,年龄进行赋值

public class Demo {
    public static void main(String[] args) {
        Person person = new Person();
        person.name = "张三";
        person.age = 18;
        System.out.println("姓名:"+person.name+",年龄:"+person.age);
    }
}
class Person{
    String name;
    int age;
}

假如是这样那么结果就应该是:
姓名:张三,年龄:18

为什么要使用get() 和 set() 方法呢

通常来说属性就是类的隐私,不是什么人都能够进行访问的。
这就是JAVA面向对象编程中的封闭性和安全性了。
那么我们就需要在Person类的name和age前面加private修饰了,但是加了private以后外部类就不能访问了,所以person.name 和 person.age 就会报错。此时就需要我们使用set() 和 get() 方法了。

set() 和 get()的使用

set是传入值
get是得到值
不管你的属性(Xxx)是什么只要:

public void setXxx(String Xxx) {
    this.Xxx = Xxx;
}
public String getXxx() {
    return Xxx;
}

所以不管什么属性都可以通过set()方法输入,get()方法得到。

例子:

 public class Demo {
    public static void main(String[] args) {
        Person person = new Person();
        person.setOccupation("teacher");
        person.setAge(18);
        person.setName("张三");
        System.out.println("姓名:" + person.getName() + ",年龄:" + person.getAge() + "职业:" + person.getOccupation());
    }
}
    class Person {
        private String occupation;
        private String name;
        private int age;

        public void setOccupation(String occupation) {
            this.occupation = occupation;
        }

        public String getOccupation() {
            return occupation;
        }

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

        public String getName() {
            return name;
        }

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

        public int getAge() {
            return age;
        }
    }

结果:
姓名:张三,年龄:18职业:teacher

或许你会问person.age 和 setAge() 都是从外界获取age值,用什么都一样?

假如你输入的年龄是负值呢?它还表示是年龄吗?

用set()方法就能够在方法里面判断输入的值是否正确了。

总结:为使程序的更安全,除了运用set() 和 get() 方法以外其实我们还可以使用构造方法。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值