java encapsulation

作者:原创时间:2022-03-31
文档

java encapsulation是什么,让我们一起了解一下?

encapsulation在Java中是将数据(变量)和作用于数据(方法)的代码作为一个单元包装在一起的机制,在封装(encapsulation)中,类的变量将从其他类隐藏,并且只能通过其当前类的方法访问。

使用encapsulation的好处有哪些?

1、良好的封装能够减少耦合。

2、类内部的结构可以自由修改。

3、可以对成员变量进行更精确的控制。

4、隐藏信息,实现细节。

那在java中encapsulation是如何使用的?

通过实际案例进行分析:

public class Student {
    //属性:
    private int age;
    private String name;
    private String sex;
    //加入对应的setter和getter方法:
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        if("男".equals(sex) || "女".equals(sex) ){//sex是男 或者 是 女
            this.sex = sex;
        }else{
            this.sex = "男";
        }
    }
    //加入构造器:
    public Student(){
    }
    public Student(int age,String name,String sex){
        this.age = age;
        this.name = name;
        //this.sex = sex;
        this.setSex(sex);
    }
}
public class Test {
    //这是一个main方法,是程序的入口:
    public static void main(String[] args) {
        //创建一个Student对象:
        Student s1 = new Student();
        s1.setName("nana");
        s1.setAge(19);
        s1.setSex("女");
        System.out.println(s1.getName()+"---"+s1.getAge()+"----"+s1.getSex());
        Student s2 = new Student(18,"菲菲","asdfasdfsadf");
        System.out.println(s2.getName()+"---"+s2.getAge()+"----"+s2.getSex());
    }
}

以上就是小编今天的分享了,希望可以帮助到大家。



显示全文
java future java generator java enhancer java generic java enterprise java environment java epoll java error java escape java event java exchange java execute 微信群怎么找 怎么导出微信聊天记录 苹果手机怎么恢复出厂设置 qq怎么清理缓存和垃圾清理 朋友圈怎么转发 微信分组怎么删除 两个excel如何独立显示 excel怎么排序 java empty java email java ehcache java echarts java formatter java ecc加密 java fork java foreach循环 java ear java flume java dynamic java dto java drools java flink java dowhile java flatmap java findfirst java fileinputstream java file.exists() java dockerfile