黑马程序员技术交流社区
标题:
关于类中成员变量set、get方法的使用,求详解
[打印本页]
作者:
刚金波
时间:
2013-4-18 11:20
标题:
关于类中成员变量set、get方法的使用,求详解
本帖最后由 刚金波 于 2013-4-19 10:53 编辑
对于类中变量set、get的使用,有些疑惑,望高手详解下
作者:
易杰
时间:
2013-4-18 13:43
问题太抽象了,建议写段实例代码描述你的问题。。
作者:
李大伟
时间:
2013-4-18 14:35
private :私有,权限修饰符:用于修饰类中的成员(成员变量,成员函数)。
私有只在本类中有效。
将age私有化以后,类以外即使建立了对象也不能直接访问。
但是人应该有年龄,就需要在Person类中提供对应访问age的方式。
set 和 get 就可以 设置 和获取年龄了,就是为了给类以外的访问 使用年龄
参考这个简单代码:
class Person
{
private int age;
public void setAge(int a)
{
if(a>0 && a<130)
{
age = a;
speak();
}
else
System.out.println("feifa age");
}
public int getAge()
{
return age;
}
private void speak()
{
System.out.println("age="+age);
}
}
public class PersonDemo
{
public static void main(String[] args)
{
Person p = new Person();
p.setAge(20);
int n = p.getAge();
System.out.println(n);
p.setAge(-40);
//p.speak();
}
}
复制代码
作者:
乘鱼飞
时间:
2013-4-18 19:22
用get,set修饰的类具有更好的封装性,可重复使用
要求:
(1)类必须声明为public方便外部访问
(2)类中方法必须为 public 修饰方便外部调用
()3属性用 private修饰 为了更好的隐藏 阻止外界对其修改
为了外界能够使用这个类, 提供了get,set方法
set让外界对其设置或修改,get对外返回所需值
如:
public class Student{
private int id;
private String name;
private double score;
public Student(){};
public Student(int id,String name,double score)
{
this.id=id;
this.name=name;
this.score=score;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getScore() {
return score;
}
public void setScore(double score) {
this.score = score;
}
}
测试类:
public class Test{
public static void main(String[] args) {
Student s=new Student(1,"zs",75.0)
System.out.println(s.getName());//zs
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2