黑马Java学习笔记之-----JavaBean

---------------------- android培训java培训期待与您交流! ----------------------

 

一、JavaBean

  • JavaBean是一种特殊的java类,主要用于传递数据信息
  • 这种java类中的方法主要用于访问私有的字段,且方法名符合某种命名规则
  • 如果要在两个模块之间传递多个信息,可以将这些信息封装到一个JavaBean中
  • 这种JavaBean的实例对象通常称之为值对象(Value Object,简称VO)
  • 这些信息在类中用私有字段来存储
  • 如果读取或设置这些字段的值,则需要通过一些相应的方法来访问
  • JavaBean的属性是根据其中的set和get方法来确定的
  • 而不是根据其中的成员变量
  • 如果方法名为setName,去掉set前缀,剩余部分就是属性名
  • 如果剩余部分的第二个字母是小写的,则把剩余部分的首字母改成小写的即name
  • setId的属性名是:id
  • isLast的属性名是:last
  • setCPU的属性名是:CPU
  • getUPS的属性名是:UPS
  • 总之,一个类被当作JavaBean使用时,JavaBean的属性是根据方法名推断出来的,根本看不到java类内部的成员变量

 

二、好处

  1. 一个符合JavaBean特点的类可以当作普通类一样进行使用
  2. 但把他当JavaBean用肯定需要带来一些额外的好处,我们才会去了解和应用
  3. 在JavaEE开发中,经常要使用到JavaBean
  4. 很多环境都要求按JavaBean方式进行操作,大家都是这么做的
  5. JDK中提供了对JavaBean进行操作的一些API,这套API就称为内省
  6. 用内省这套api操作JavaBean比用普通类的方式更方便

 

三、例子

 1 //a和b相加的JavaBean AddBean
 2 public class AddBean {
 3     
 4     //私有属性a,b
 5     private int a;
 6     private int b;
 7     
 8     //公有方法计算a,b两个数的和
 9     public int add(int a, int b){
10         return a+b;
11     }
12     
13     //公有方法在控制台打印a,b两个数的和
14     public void print(){
15         System.out.println("a+b= " + add(a,b));
16     }
17     
18     //相对应于a属性的获取方法
19     public int getA() {
20         return a;
21     }
22     //相对应于a属性的设置方法
23     public void setA(int a) {
24         this.a = a;
25     }
26     //相对应于b属性的获取方法
27     public int getB() {
28         return b;
29     }
30     //相对应于b属性的设置方法
31     public void setB(int b) {
32         this.b = b;
33     }    
34 }
 1 //调用AddBean 的一个简单示例
 2 public class TeatAddBean {
 3 
 4     /** 5      * @param args
 6      */
 7     public static void main(String[] args) {
 8         //新建AddBean对象
 9         AddBean add = new AddBean();
10         
11         //设置a、b的值
12         add.setA(10);
13         add.setB(20);
14         
15         //调用AddBean的方法在控制台打印a、b的和
16         add.print();
17         
18     }
19 
20 }

 


 

---------------------- android培训java培训期待与您交流! ----------------------

posted @ 2013-04-29 02:15  Mercy_K  阅读(282)  评论(0编辑  收藏  举报