zoukankan      html  css  js  c++  java
  • 《一》对象和封装

    《一》对象和封装

    一、类和对象的概念

     面向对象(oop),可以从对象提炼出类的概念。对象是类的实例,类是对象的数据类型。

    二、面向对象设计基本步骤

     从现实世界抽象出类:

    1. 找出名词,确定类、属性
    2. 找出名词,确定方法
    3. 剔除与业务无关的属性和方法

    三、构造方法及其重载

    3.1 构造语法:

    访问修饰符 构造方法名(){
      //初始化代码  
    }

    3.2 方法重载的规则:

    • 方法名相同
    • 参数项不同
    • 与访问修饰符和返回值无关

    3.3 static关键字:

    3.3_1 静态变量

    不同的类之间需要对同一个变量进行操作,把共享的变量用static修饰,那该变量为静态变量,语法:

    类名.静态变量

    注意:同一个类的不同实例对象,共用同一静态变量,如果一个类将其更改,另一个类静态变量也会更改。

    3.3_2 静态方法

    想要使用某类中成员方法,需先实例化该类,但有些时候不想或者无法创建类的对象时,还要调用类中方法才能完成业务逻辑,这时就可使用静态方法。语法:

    类名.静态方法();

    3.3_3 静态代码块

    用static关键字修饰的代码区域,语法:

    public class 类名 {
      static {
            //语句
        }  
    }

    注意:静态代码块通常用来完成类的静态成员初始化操作;实例变量每次实例化就运行一次,而静态变量只执行一次静态代码块在类声明时就会运行,当实例化一个类时,需先声明在new实例化,因此静态代码块会在构造方法前运行。

    四、封装

    • 隐藏类的实现细节
    • 方便加入控制语句
    • 方便修改实现
    • 只能通过规定方法实现

    实现封装的步骤:

    1. 修改属性的可见性
    2. 创建公有的 getter / setter 方法
    3. 在 getter / setter方法中加入属性控制语句
  • 相关阅读:
    ADERA3 省选模拟赛 SPOJ LMCONST
    TYVJ 1730 二逼平衡树 线段树套平衡树
    BZOJ 1059 [ZJOI2007]矩阵游戏 二分图匹配
    BZOJ 1056 [HAOI2008]排名系统 Splay+Hash
    OI教会我的
    BZOJ 1055 [HAOI2008]玩具取名 DP
    BZOJ 1058 [ZJOI2007]报表统计 Splay
    为自己而奋斗
    [总结]高斯消元&XOR方程
    我 的 2013
  • 原文地址:https://www.cnblogs.com/beimingdaoren/p/13029180.html
Copyright © 2011-2022 走看看