美文网首页
Java基础(面向对象-封装)

Java基础(面向对象-封装)

作者: F_WJ | 来源:发表于2019-04-16 00:37 被阅读0次
    来自unsplash.com

    人与造物主最近的一次距离

    面向过程

    • 概念:
      强调我怎么做 ---> 执行者

    面向对象

    • 概念:
      强调我该叫谁去做 ---> 指挥者
    • 抽象:
      抽取事物 相似的部分

    • 定义:
      某一事物的整体描述
      拥有相同特征( 状态 ) 和行为( 功能 )的多个对象的抽象
    • 组成:
      1). 成员变量( 状态)
      描述事物是什么
      2). 成员方法( 行为 )
      描述事物能做什么
    • 语法:
    public class 类名{
        //可编写0到N个成员变量
        [修饰符] 数据类型 变量1;
        //可编写0到N个成员方法
        [修饰符] 返回类型 方法名称(参数){
            //方法体
        }
    }
    

    对象

    • 定义:
      • 类的实例化( 该类的事物的具体表现)
    • 基本操作:

    1). 创建对象格式

    类名 对象变量名 = new 类名();
    

    2). 设置字段( 类中的成员变量 )

    对象变量名.字段名 = 值;
    

    3). 获取字段( 类中的成员变量 )

    数据类型(字段) 变量名 = 对象变量名.字段名;
    

    4). 调用方法

    对象变量名.方法([参数]);
    

    变量

    • 成员变量( 字段 Field):
      1). 初始值:
      默认是有初始值的, 不同类型的初始值
      2). 作用域:
      在所定义的类中都有效( 方法外 )
      3). 生命周期:
      存储在堆内存中, 随着对象的销毁而销毁
    • 局部变量:
      1). 初始值:
      没有初始值, 必须手动先初始化才能使用
      2). 作用域:
      从开始定义的位置开始, 只能在自己所在的花括号内有效( 方法内 )
      3). 生命周期:
      存储在栈内存中, 随着所定义方法的调用结束而销毁

    访问修饰符

    访问权限从上到下增加( 同一类 --> 同一包 --> 子类 ---> 任何地方)

    • private:
      表示当前类私有的, 类访问权限, 只能在本类中使用
    • 省略:
      表示当前包私有, 包括访问权限, 定义和调用只能在同一个包中, 才能访问
    • protected:
      表示子类访问权限, 同包中的可以访问, 即使不同包但是有继承关系也可以访问
    • public:
      表示公共的, 可以在当前项目中任何地方访问

    构造器

    • 语法:
    private 成员变量;
    public 类名(){
    }
    public void set成员变量名(成员变量类型 成员变量名){
        成员变量 = 参数;
    }
    public 数据类型 get变量名(){
        return 成员变量名;
    }
    
    • 格式注意:
      1). 构造器名称和类名相同
      2). 不能定义返回类型
      3). 不能使用return语句
    • 使用注意:
      • 默认情况下, 编译器会创建一个缺省的构造器( 无参数, 无方法体 )
      • 是否使用public修饰符和类是否使用public有关
      • 当自定义构造器之后, 编译器不再创建默认的构造器
      • 同一类中的多个构造器之间是重载关系
      • 构造器只能通过new使用( 格式: new 构造器(); )

    封装

    • 定义:
      隐藏实现细节, 对外提供访问方式
    • getter方法:
      仅仅用于返回某一个字段的值
    • setter方法:
      仅仅用来给某一个字段设置值
    • 优势:
      提高安全性( 防止调用者随意修改数据 )
      提高代码的复用性 (方法的使用)
    • JavaBean规范:
      1). 类必须使用public修饰
      2). 必须保证有公共无参数构造器
      3). 字段( 成员变量 )使用private修饰符, 每个字段提供一对getter和setter方法

    相关文章

      网友评论

          本文标题:Java基础(面向对象-封装)

          本文链接:https://www.haomeiwen.com/subject/kpbmwqtx.html