黑马程序员技术交流社区
标题:
求问java中setName和getName是怎么执行的
[打印本页]
作者:
古银平
时间:
2012-5-22 08:32
标题:
求问java中setName和getName是怎么执行的
class Person
{
private String name;
private int age;
Person()
{
System.out.println("A:name="+name+" age="+age);
}
Person(String n)
{
name = n;
System.out.println("B"+"name="+name+" age="+age);
}
public void setName(String n)
{
name = n;
}
public String getName()
{
return name;
}
Person(String n,int a)
{ name = n;
age = a;
System.out.println("C"+"name="+name+" age="+age);
}
public void cry()
{
System.out.println("cry......");
}
}
class PersonDemo2
{
public static void main(String[] args)
{
//Person p1 = new Person();
//p1.cry();
Person p2 = new Person("lisi");
p2.setName("libushi");
System.out.println(p2.getName());
}
}
求问getName是怎么执行的,或许该程序只是用到了设置值,没用到getName获取值。但是我想知道,getName是怎么执行的,他是怎么获取值的,请教执行流程?
作者:
王怡然
时间:
2012-5-22 08:46
setName是你设置值得时候将值赋值给成员变量,
getName是将成员变量的值返回给你;
作者:
魏涞
时间:
2012-5-22 08:50
set 和get方法其实就是类中的普通成员方法,只是他的作用一般是给成员变量赋值和获取值。在JAVA中,一般将类中的成员变量都定义为私有的,在类外不让直接访问,就算用该类创建对象,这个对象也不能对这些私有成员进行操作,这时为了给外部提供操作这些私有成员变量,提供了set和get成员方法。这也体现了JAVA中的封装特性。
作者:
胡团乐
时间:
2012-5-22 09:31
这种setters和getters方法是基于对象的
setName()是给对象赋值,getName()是获取该对象的值
前提是构造方法必须传相应类型的值,如
Person(String name){
this.name=name;
}
public void setName(String name)
{
this.name = name;
}
public String getName()
{
return name;
}
然后具体化
Person p=new Person("haha");
System.out.println(p.getName);
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2