• 中关村雍和航星科技园,北京中关村雍和航星科技园 2019-03-22
  • 潇湘玉竹版主辛苦了! 2019-02-13
  • 端午新经济体验无处不在 “指尖端午”玩出新花样 2019-02-13
  • 工信部:鼓励婴幼儿配方乳企质量安全追溯体系建设 2018-12-30
  • "[图片] 在我理解看来,JavaBean 与上文讲的接口有着相似的地方: 用于包装并传递一些特定的数据(如字符串、整数、类等等) 用于实现方法的传递 ······ 在我们获取用户上传的的数据时,如果只是用一个个变量去接收的话,就会造成重复代码的书写,并且代码多且繁杂,如果想要在其他地方使用这个变量就会很不好调用;假设需 .."

    实例带你理解 JavaBean

    v2c166dd0bb6dbe3f87a0b20cb3dabfdb8hd.jpg

    在我理解看来,JavaBean 与上文讲的接口有着相似的地方:

    这个容器就被称为 JavaBean,JavaBean 里的属性全都使用 private 修饰可以保证只能通过 JavaBean 里的getter方法和setter方法去设置或者获得类里的属性,当然settergetter方法都是由public修饰,确保其他地方能正常使用这些属性

    JavaBean 的设计规则: JavaBean 是一个公共类 JavaBean 类具有一个公共无参的构造方法 JavaBean 所有的属性定义为私有 JavaBean 中,需要对每个属性都提供两个公共方法,set方法和get方法 定义 JavaBean 的时候,通常放置在一个命名的包下。

    举个栗子

    public class UserBean {
        // 定义 UserBean 的私有对象 name 和 age
        private String name;  // 用户名
        private int age;  // 用户年龄
    
        // 以下都是 JavaBean 的 set 方法和 get 方法
        public void setName(String name) {
            this.name = name;
        }
    
        public String getName() {
            return name;
        }
    
        public void setAge(int age) {
            this.age = age;
        }
    
        public int getAge() {
            return age;
        }
    }
    

    这是一个简单的 JavaBean 用来存储用户数据,它内置的属性很简单,只有nameage,也有关于属性的set方法和get方法

        public static void main(String[] args) {
            UseUserBean useBean = new UseUserBean(); //实例化UseUserBean对象,方便调用run方法
            UserBean user = new UserBean();
            user.setName("zhangsan");
            user.setAge(12);
            useBean.run(user);
    
            useBean.run2("zhangsan", 12);
        }
    
        //使用javabean的方式处理数据
        public void run(UserBean user) {
            System.out.println("用户名:" + user.getName() + " 年龄: " + user.getAge());
        }
    
        //使用普通的变量的方式处理数据
        public void run2(String name, int age){
            System.out.println("用户名:" + name + " 年龄: " + age);
        }
    

    runrun2的结果是一样的,都可以打印出用户的信息,但是当用户的其他数据比较多时,是不是方法里的参数就变得很多了,并且外部也不好调用。 如果我将用户的数据都封装到一个类里,再通过变量的传递,就可以将这个类里的其他数据流转到其他要使用这些属性的地方,将用户的数据封装到一个容器里,这种操作就降低了代码的耦合性。

    使用 javabean 有很多好处,比如

    1. 提高代码的可复用性:对于通用的书屋处理逻辑,数据库操作都可以封装在 Javabean 里,通过调用 javabean 的属性和方法可快速进行程序设计
    2. 程序易于开发维护:实现逻辑的封装,使事物处理和显示互不干扰
    3. 支持分布式运用:多用 javabean,尽量减少 java 代码和 html 的混编
    4. 可以便捷地传递数据

    MVC 里有Mode模型的概念,就是将数据封装到模型里,这和 JavaBean 的概念是一样的,就是构建好一个模型,然后照着样子将数据放到一个模子里,这就是实例化了一个对象。

    总结

    关于 JavaBean 的知识还有很多,这里只是简单地介绍 JavaBean,我们会经常在 JavaWeb 开发中用到它。

    • Java

      Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

      2154 引用 ? 7317 回帖 ? 1048 关注
    • 代码
      86 引用 ? 392 回帖
    感谢    关注    收藏    赞同    反对    举报    分享
    5 回帖    
    请输入回帖内容...
    • kafuly ?    

      你们真 low,别丢人了,hashMap 的 hashCode 重写过吗,又来装逼?? ?? ??

      感谢    赞同    反对    举报    分享       回复
    • gaoyangwolf ?      

      看起来很厉害的样子

      感谢    赞同    反对    举报    分享       回复
    • kafuly ?    

      我错了,话不能乱说,饭可以乱吃,抱歉

      感谢    赞同    反对    举报    分享       回复
    • nimingqi ?      

      不知道怎么回事

      感谢    赞同    反对    举报    分享       回复
    • jiany ?      

      JavaBean 中最好重写 toString 方法

      感谢    赞同    反对    举报    分享       回复
  • 中关村雍和航星科技园,北京中关村雍和航星科技园 2019-03-22
  • 潇湘玉竹版主辛苦了! 2019-02-13
  • 端午新经济体验无处不在 “指尖端午”玩出新花样 2019-02-13
  • 工信部:鼓励婴幼儿配方乳企质量安全追溯体系建设 2018-12-30