面向对象的三大特性之-----封装

  • 对象与类联系:类是对象的模板,对象是类的实例
  • 面向对象三大特性 封装、继承、多态(抽象)(接口)
  • 面向对象设计和开发程序的好处
    • 交流更加流畅
    • 提高设计和开发效率
  • 构造方法:无返回值,方法名与类名相同
  • 作用:用来进行初始化操作
  • 创建构造方法
    • 1、右键Generate-->Constructor
    • 2、选中类名 点击OK 生成无参
    • 3、选中属性 点击OK 生成有参
  • 注意事项:
    • 系统提供默认无参构造方法,如果显式给此类创建一个有参或无参构造函数,隐式的无参构造函数就会消失。
    • 如果一个类没有无参构造函数,那么在实例化对象时会报错,除非指定系统调用该类的有参构造函数。
  • 什么是方法重载?
    • 同一个类中,方法名相同,参数类型、个数不同,顺序不同与返回值无关。
  • 封装:隐藏内部细节,提供对外接口的访问
  • 封装的好处:
    • 只能通过规定方法访问数据
    • 隐藏类的实现细节
    • 方便加入控制语句,方便修改实现
  • 步骤
    • 修改属性可见性 ---> 设为private
    • 创建公有的getter/setter方法 --> 用于属性的读写(添加getter/setter方法的快捷键Shift+Alt+S+R)
    • 在getter/setter方法中加入属性控制语句 --> 对属性值的合法性进行判断
  • 面向对象和面向过程的区别:
    • 面向对象:强调具备功能的对象,以类或对象为最小单位,(谁来做)
    • 面向过程:强调功能行为,以函数为最小单位,(怎么做)
  • 用面向对象的思想描述世界
    • ①发现类(根据对象 抽象出类)
    • ②发现类的属性(找出名词)
    • ③发现类的方法(找出动词)
  • this关键字
    • 是对一个对象的默认引用,这里用以区分同名成员变量。
    • 注意:调用构造方法时,必须是构造方法中的第一条语句
  • 用final修饰的变量称为常量,其值固定不变
  • static修饰符(可以原来修饰属性、方法和代码块)
    • 1、类中可以用静态方法和属性,方法中不可以定义静态变量(类变量不能是局部变量)
    • 2、静态类无法实例化
    • 3、静态方法无法访问静态属性,也不能只有this和super关键字
    • 4、静态类中方法及属性必须全为静态 包
    • 调用可以实例化调用,也可以使用类名调用
    • Java中是不允许使用static修饰一级类,只能修饰内部类

静态变量是不能定义在方法中包含的静态方法,因为静态变量只属于类不能属于某个方法

  • 包命名规范
    • 只能包含数字、字母、下划线,不能以数字开头,不能是关键字和保留字
    • 由小写字母组成,不能以圆点开头或结尾
    • 举例:
      • com.ll.oa.user      //用户模块
      • com.ll.oa.order    // 订单模块 
      • com.ll.oa.utils     //工具类
  • 查看类图:
    • 在类中选中类名
    • 右键Diagrams
    • show Diagram
    • 点击类图中左上角的f和m图标 展示字段和方法
  • 创建类图:
    • 选中类所在的包
    • 右键-->new-->Diagram-->Java class Diagram
    • 确定类图存储的位置
    • 把要查看的类 拖入类图中 
    • 点击类图中左上角的f和m图标 展示字段和方法
  • 局部变量和成员变量
    • 定义的位置
      • 局部变量:在方法的内部
      • 成员变量:在方法的外部,直接写在类当中
    • 作用范围
      • 局部变量:只有在方法当中才可以使用,出了方法就不能再用了
      • 成员变量:整个类全都可以通用
    • 默认值
      • 局部变量:没有默认值,如果要想使用,必须手动进行赋值
      • 成员变量:如果没有赋值,会有默认值,规则和数组一样
    • 内存的位置
      • 局部变量:位于栈(Stack)内存
      • 成员变量:位于堆(Teap)内存
    • 生命周期不一样
      • 局部变量:随着方法进栈而诞生,随着方法出栈而消失
      • 成员变量:随着创建而诞生,随着对象被垃圾回收而消失

       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值