//下面代码实现设置和获取学生姓名和成绩。
2 class lesson5homework
3 {
4 public static void main(String[] args)
5 {
6 TestCode TC=new TestCode();
7 TC.StudentTest();//调用测试类
8 }
9 }
10 class Student
11 //设置,获取student值及分别表明name和score值是否正确的Boolean类型的rn和rs
12 {
13 private String name;
14 private int score;
15 private boolean rn;
16 private boolean rs;
17 //私有的值,用setter和getter方法提供外界访问
18 /*
19 格式为:
20 getter(用于获取):
21 [非私有修饰符] 字段类型 get字段名称(首字母大写)()
22 {
23 return 字段名;
24 }
25 setter(用于设置):
26 [非私有修饰符] void set字段名称(首字母大写)(字段类型 变量)
27 {
28 字段=变量;
29 }
30
31 例外:Boolean类型的是setter方法和is方法。
32 setter格式与上述相同,is方法只需把set编程is即可,下面是例子。
33 */
34
35 public void setName(String n)//name的setter和getter方法
36 {
37 if(n!="")
38 {
39 name=n;
40 setRn(true);
41 }
42 else
43 {
44 System.out.println("ERROR! name IS ERROR!");
45 setRn(false);
46 }
47 }
48 public String getName()
49 {
50 return name;
51 }
52
53 public void setScore(int s)//score的setter和getter方法
54 {
55 if(s>=0&&s<=100)
56 {
57 score=s;
58 setRs(true);
59 }
60 else
61 {
62 System.out.println("ERROR! score IS ERROR!");
63 setRs(false);
64 }
65 }
66 public int getScore()
67 {
68 return score;
69 }
70
71 public void setRn(boolean xn)//Boolean的setter方法与is方法
72 {
73 rn=xn;
74 }
75 public boolean isRn()
76 {
77 return rn;
78 }
79
80 public void setRs(boolean xs)
81 {
82 rs=xs;
83 }
84 public boolean isRs()
85 {
86 return rs;
87 }
88 }
89 class TestCode
90 {
91 public void StudentTest()//测试
92 {
93 System.out.println("TEST CODE OF STUDENT:");
94 printStudent("jack",100);
95 printStudent("jack",101);
96 printStudent("jack",-1);
97 printStudent("",100);
98 }
99 private void printStudent(String name,int score)
100 {
101 Student s=new Student();
102 s.setName(name);
103 s.setScore(score);//先设置值
104 if((s.isRn())&&(s.isRs()))//如果正确则输出
105 System.out.println("Name:"+s.getName()+",Score:"+s.getScore());
106
107 }
108 }