zoukankan      html  css  js  c++  java
  • 面向对象

    面向对象的概念

    1. 面向对象就是使用对象. 面向对象开发就是使用对象开发.
    2. 面向过程就是以过程的方式开发. 面向对象是对面向过程的封装.

    面向对象的特性

    1. 抽象性
    2. 封装性
    3. 继承性

    抽象性

    所谓的抽象性就是: 如果需要用一个对象描述一个数据, 需要抽取这个对象的核心数据

    1. 提出需要的核心属性与方法
    2. 不在特定环境下无法明确对象的具体意义

    封装性

    对象是将数据与功能组合到一起, 即封装

    1. js 对象就是 键值对的集合
      • 键值如果是数据( 基本数据, 复合数据, 空数据 ), 就称为属性
      • 如果键值是函数, 那么就称为方法
    2. 对象就是将属性与方法封装起来
    3. 方法是将过程封装起来

    继承性

    所谓继承就是自己没有, 别人有. 拿过来为自己所用, 并成为自己的东西

    1. 传统继承基于模板
    2. js 继承基于对象

    一个简单的继承模式: 混入( mix )

    function mix ( o1, o2 ) {
    	for ( var k in o2 ) {
    		o1[ k ] = o2[ k ];
    	}
    }
    

    在 jquery 中将该方法命名为 extend.

    使用对象进行编程

    1. 首先看是否有内置对象, 或第三方提供对象
    2. 如果没有自己定义

    需求:

    创建一个 div 标签, 并设置其样式, 加入页面中

    1. 传统的处理办法
    2. 使用面向对象的方式进行思考的办法

    中级代码

    function DivTag() {
    	this.DOM = document.createElement( 'div' );
    	this.appendTo = function ( node ) {
    		node.appendChild( this.DOM );
    		return this;
    	};
    	
    	this.css = function ( option ) {
    		for ( var k in option ) {
    			this.DOM.style[ k ] = option[ k ];
    		}
    		return this;
    	}
    }
    
  • 相关阅读:
    NCNN优化实时面部关键点检测
    使用 div 标签 contenteditable="true" 实现一个 聊天框,支持 Ctrl + v 粘贴图片
    《精益创业》读书总结
    DATAX使用
    canal增量同步原理以及使用说明
    element rules required 自定义表达式
    JavaScript 数组映射,重新整理
    wangeditor遮挡其他控件
    多个axios按顺序执行
    .NET Core 中基于 IHostedService 实现后台定时任务
  • 原文地址:https://www.cnblogs.com/jiaozhuo/p/5763179.html
Copyright © 2011-2022 走看看