zoukankan      html  css  js  c++  java
  • Java面向对象——封装性

    我们程序设计追求”高内聚,低耦合“:

    • 高内聚:类的内部数据操作细节自己完成,不允许外部干涉
    • 低耦合:仅对外部暴露少量的方法用于使用

    隐藏对象内部的复杂性,只对外部公开简单的接口。便于外界调用,从而提高系统的可扩展性、可维护性。通俗的说,把该隐藏的隐藏起来,该暴露的暴露出来,这就是封装性的设计思想。

    1.问题的引入

    当我们创建一个类的对象以后,我们可以通过“对象.属性”的方式,对对象的属性进行赋值。这里,赋值操作要受属性的数据类型和存储范围的制约。除此之外,没有其他制约条件。但是,在实际问题中,我们往往需要给属性赋值加入额外的限制条件。这个条件就不能在属性声明时体现,我们只能通过方法进行限制条件的添加。

    2.封装性的体现

    • 我们将类的属性私有化(private),同时,提供公共的(public)方法来获取(getxxx)和设置(setxxx)的值。
    • 不对外暴露私有的方法
    • 单例模式
    • 。。。

    示例:

    package com.xlx.java;
    
    public class HelloWorld {
        public static void main(String[] args) {
            Animal a1=new Animal();
            a1.setAge(100);
            a1.getAge();
        }
    }
    
    class Animal{
        private int age;
        
        public int getAge() {
            return age;
        }
        
        public void setAge(int a) {
            age=a;
        }
    }
  • 相关阅读:
    使用IDEA 创建Mevan项目后,项目中没有Java源文件夹的解决方案
    Head FIRST HTML & CSS 16/3/15
    Head FIRST HTML & CSS 16/3/11
    hdu 5375 dp
    Thinking in java 16/3/8plus
    Thinking in java 16/3/8
    Beauty of mathematics
    Thinking in java 16/3/6
    Thinking in java 16/3/5
    SQL SERVER迁移--更换磁盘文件夹
  • 原文地址:https://www.cnblogs.com/codexlx/p/13530032.html
Copyright © 2011-2022 走看看