• 面向过程与面向对象引入三大特性&&事务


    1、面向过程

    int a = 10;
    int b =5;
    int c = a+b;

    int r1 = 10;
    int r2 = 5;
    double c = r1*r1*3.14 - r2*r2*3.14

    缺点:重用性差,扩展性差,可维护性差

    2、面向对象
    (1)对象:万物皆对象,对象是类实例化出来的东西
    (2)类:由众多对象抽象出来的东西

    例子:管理学生信息的程序
    研究的对象主要是 学生
    程序中的类 学生的类 (学号 姓名 性别 年龄 住址 联系方式 )

    student(code,name,sex,age,address,lianxi)

    (3) class Student //定义类 关键字class 后面跟类名
    {
    string code; //成员变量code
    string name; //成员变量 name
    bool sex; //成员变量 sex
    int age; //成员变量 age
    string address; //成员变量 address
    string lianxi; //成员变量 lianxi
    }

    面向对象
    1.类:众多对象抽象出来的
    2.对象:类实例化出来的

    3.类的定义
    关键字 class

    4.类里面包含
    成员变量
    成员属性
    成员方法

    5.面向对象三大特性
    (1)封装
    目的:保护类,让类更加安全。
    做法:让类里面的成员变量变为私有的,做相应的方法或者属性去间接的操作成员变量

    封装成员方法来间接操作类里面的成员变量
    使用成员属性来间接访问类里面的成员变量

    访问修饰符
    private 私有的 只能在该类中访问
    protected 受保护的 只能在该类和它的子类中访问
    public 公有的 在任何地方都可以访问


    构造方法(函数):
    作用:造对象所要调用的方法,用来创建对象,可以对成员进行初始化
    每一个类都有一个构造方法,不写也有只不过看不到而已

    特殊性:写法特殊 执行时间特殊

    (2)继承

    (3)多态

    ---------------------------------------------------------------------

    事务:
    保障流程的完整执行
    就像银行取钱,先在你账上扣钱,然后存入别人的账上;
    但是从你账上扣完钱了,突然网断了,对方没有收到钱,那么此时你的钱也没了,别人的钱也没加上,为了防止此类情况的出现,事务。

    begin tran --在流程开始的位置


    if @@ERROR>0
    begin
    rollback tran --回滚事务,到begin tran的位置,就当没发生过
    end
    else
    begin
    commit tran --提交事务,都没问题,那么就一把进行提交
    end

    -----------------------------------------------------------------
    购物车实例
    begin tran --开启事务
    declare @tran_error int; --存储错误
    set @tran_error = 0; --默认没有错误

    update Fruit set Numbers = Numbers-1 where Ids='k002'
    set @tran_error = @tran_error + @@ERROR;
    update Login set Account=Account-1 where UserName='wangwu'
    set @tran_error = @tran_error + @@ERROR;
    insert into Orders values('d002','wangwu','2016-8-7')
    set @tran_error = @tran_error + @@ERROR;
    insert into OrderDetails values('d002','k002',10)
    set @tran_error = @tran_error + @@ERROR;


    if @tran_error>0
    begin
    rollback tran --回滚事务,到begin tran的位置,就当没发生过
    end
    else
    begin
    commit tran --提交事务,都没问题,那么就一把进行提交
    end

  • 相关阅读:
    数据库自增ID归零
    JAVA中的接口和抽象类(转)
    谈如何学习linux (转)
    如何编译安装源码包软件(转)
    每天对着电脑46小时的人必看
    JAVA错误处理大集合
    5月15号项目总结
    让程序在Windows CE系统启动时自动运行
    wince.net4.2问题
    触摸屏定位校准
  • 原文地址:https://www.cnblogs.com/dreamer666/p/5753867.html
Copyright © 2020-2023  润新知