public及get方法的问题
下面备注部分是问题,与我本人的答案 。
class XueSheng
{
private String name;
private int age;
private int mark;
public void setName(String name)
{
this.name=name;
}
public String getName() //首先你要明白 Get,Set 方法是干什么用的,我给你写在最下面了。//getName函数中,我怎么赋值?下面对象该如何调用?
{
return name;
}
XueSheng(String name,int age,int mark)
{
if (age>=1&age<=120&mark>=0)
{
this.name=name;
this.age =age;
this.mark =mark;
System.out.println("name="+name+": "+"age="+age+":"+"mark="+mark);
}
else
{
System.out.println("NO");
}
}
void daYin() //这个方法的修饰符是public ,在java语言中没有修饰符的,默认都是public的修饰符. //打印函数没有修饰符为什么也可以?
{
System.out.println(this.name);
}
}
class Students
{
public static void main(String[] aggs)
{
XueSheng p =new XueSheng("张三",-5,89);
p.setName("李四");
p.getName();//这句打印怎么没结果?这里呢,你是调用了getName,但是你没有告诉它,它该打印什么。想上面的两句话,肯定是可以打印的,因为你在这里的括号里面提供给它打印的值了阿,龙铭洪也说了,你不告诉计算机你需要它干什么,它怎么会听你的动呢?
p.daYin();
}
}
get set 方法
set和get方法一般是用来给类的成员变量赋值的,由于类的成员变量一般会声明为private私有的,其他的类是不能直接访问private成员变量的,所以为了在除此类以外给该类的成员变量赋值或者取值,只有用声明为public的set和get方法来实现,set和get方法是用于封装的 所以一般只在private中用 如果不是在private中用也可以,代码也是可以执行的 get 是用来调用的 set是用来赋值的。