首页 > 代码库 > Java学习之——JavaBeans
Java学习之——JavaBeans
1.什么是JavaBeans?
JavaBeans是Java语言中可以重复使用的软件组件,它们是一种特殊的Java类,将很多的对象封装到了一个对象(bean)中。
特点是
可序列化,
提供无参构造器,
提供getter方法和setter方法访问对象的属性。
2.JavaBeans的优点和缺点:
优点:
1 Bean可以控制它的属性、事件和方法是否暴露给其他程序。2 Bean可以接收来自其他对象的事件,也可以产生事件给其他对象。3 有软件可用来配置Bean。4 Bean的属性可以被序列化,以供日后重用
缺点:
1.无参构造器的类可能实例化无效。开发者实例化它(而不是通过一些Framework实例),开发者可能没有意识到类已经不正确地实例化了。
编译器不能发现这样的问题,即使这已经被记录在文档中,也不能保证开发者会看这个文档。2.需要为每个属性创建getter方法及大部分属性创建setter方法。这将导致巨大数量的构造模版代码(boilerplate code)
3.JavaBeans规范
1.有一个公有的无参构造器。2.属性可以通过get、set、is(可以替代get,用在布尔型属性上)方法或遵循特定命名规范的其他方法访问。3.可序列化。
例子:
1 public class StudentBean implements java.io.Serializable{ 2 /* 3 * 私有属性 4 */ 5 private String name = null; 6 private int age = 18; 7 private boolean hasScholarship = false; 8 //无参构造函数 9 public StudentBean() {10 }11 //getter,setter方法12 public String getName() {13 return name;14 }15 public void setName(String name) {16 this.name = name;17 }18 public int getAge() {19 return age;20 }21 public void setAge(int age) {22 this.age = age;23 }24 public boolean isHasScholarship() {25 return hasScholarship;26 }27 public void setHasScholarship(boolean hasScholarship) {28 this.hasScholarship = hasScholarship;29 }30 @Override31 public String toString() {32 return "Student name:"+getName()+"\nage:"+getAge()+"\nHasScholarship?"+isHasScholarship();33 }34 }
1 public class TestStudentBean { 2 3 public static void main(String[] args) { 4 StudentBean student = new StudentBean(); 5 6 student.setName("Jack"); 7 student.setAge(20); 8 student.setHasScholarship(true); 9 10 System.out.println(student);11 }12 13 }
Java学习之——JavaBeans
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。