java基础

Java小白入门 - JavaBean

2016-11-29  本文已影响112人  flionel
have-a-cooike.jpg

JavaBean概念

JavaBean并不是什么新技术,它只是一个标准,如果一个Java类符合下列3条规则,那么我们可以称该类为一个JavaBean,

  1. 类的所有属性定义为private,并定义对应属性的getter/setter方法;
  2. 定义public无参构造函数;
  3. 实现Serializable接口。

以上3条就是JavaBean的规则。说起来,JavaBean只是一个简单的约定,不过在java中,很多复杂的功能和库都依赖JavaBean技术。

上述3条JavaBean的规则,

说到Serializable接口,官方文档作了如下解释,

如果一个类实现了java.io.Serializable接口,则这个类就开启了可序列化的功能。如果类没有实现Serializable接口,那么这个类就不能获取到任何序列化或反序列化的状态值。
另外需要保证,一个可序列化的类的各个属性本身也是可序列化的。Serializable接口内并没有任何的方法或属性,它仅仅用来标识实现该接口的类具有可序列化的功能。

JavaBean代码

下面的代码,定义了一个JavaBean,

public class Employee implements Serializable {
    // 1. 实现Serializable接口
    
    // 2.1 私有属性和getter/setter
    private int id;
    private String name;
    private int salary;

    // 3. public修饰的默认构造函数
    public Employee() {

    }

    public Employee(String name, int salary) {
        this.name = name;
        this.salary = salary;
    }

    // 2.2 私有属性和getter/setter
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getSalary() {
        return salary;
    }

    public void setSalary(int salary) {
        this.salary = salary;
    }
}

JavaBean的作用以及它存在的意义

使用JavaBean有什么好处呢?笔者觉得它的初衷就是为了方便传递数据,做一个现实世界的类比,可以将JavaBean理解为一辆货车,它是在Java端和Web页面进行数据传递的载体。你当然也可以单独传递每个变量,也可以使用集合传递,但是JavaBean可以使传递的数据更具有可读性,方便开发时明确变量的意义,也可使其他阅读你代码的人能明白你的意图。

如果把JavaBean类与数据库联合使用,一张表使用JavaBean类,可以使你的代码更加简洁高效,易于理解,所以现在大多数框架都会使用这种机制。

笔者从事于iOS开发,比较熟悉经典的MVC设计模式,MVC对系统中的角色分类为Model, View, Controller,对比一下,JavaBean就是Model。所以不要被它的专业术语所迷惑,JavaBean其实就是用来封装数据的,只是它规定了3条通用的规则,这样更加方便不同的人阅读、理解。

参考链接

公众号

微信扫描下方图片,欢迎关注本人公众号foolishlion,

foolishlion.jpg
上一篇 下一篇

猜你喜欢

热点阅读