虽然C是面向过程的语言,但是这不代表C不能使用面向对象的思想,本质上说语言只是一种手段而已,一种外在的表现形式,支持面向对象的语言只是通过设计的特定的关键字更好的表现了面向对象编程而已.C中也可以使用面向对象的思想,通过struct结构体和函数指针来实现. struct表示java或C#中的类Class,struct中的字段表示类中的属性,函数指针表示类中的方法.简单的实现代码如下: #include <stdio.h> /* 定义一个结构体,这个结构体相当于类 name,age字段相当于属性…
Javascript 面向对象编程:封装 作者:阮一峰 Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象.但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类). 那么,如果我们要把"属性"(property)和"方法"(method),封装成一个对象,甚至要从原型对象生成一个实例对象,我们应该怎么做呢? 一. 生成实例对象的原始模式 假定我们把猫看成一个对象,它有"名字&q…
demo-richbase 用来演示怎么使用richbase来制作组件的例子 作为一名前端工程师,写组件的能力至关重要.虽然javascript经常被人嘲笑是个小玩具,但是在一代代大牛的前仆后继的努力下,渐渐的也摸索了一套组件的编写方式. 下面我们来谈谈,在现有的知识体系下,如何很好的写组件. 比如我们要实现这样一个组件,就是一个输入框里面字数的计数.这个应该是个很简单的需求. 我们来看看,下面的各种写法. 为了更清楚的演示,下面全部使用jQuery作为基础语言库. 最简陋的写法 嗯 所谓的入门…
demo-richbase 用来演示怎么使用richbase来制作组件的例子 作为一名前端工程师,写组件的能力至关重要.虽然javascript经常被人嘲笑是个小玩具,但是在一代代大牛的前仆后继的努力下,渐渐的也摸索了一套组件的编写方式. 下面我们来谈谈,在现有的知识体系下,如何很好的写组件. 比如我们要实现这样一个组件,就是一个输入框里面字数的计数.这个应该是个很简单的需求. 我们来看看,下面的各种写法. 为了更清楚的演示,下面全部使用jQuery作为基础语言库. 最简陋的写法 嗯 所谓的入门…
Java面向对象的三大特征: 封装:通过Java的类来实现数据和操作方法的封装,对外界可以将每一个Java类都视为一个黑箱,只需调用该黑箱提供的方法即可完成你想要的操作. 继承:通过类的继承,将统一的功能集中放在父类中,实现代码的重用和可维护性. 多态:通过重载.重写与覆盖,实现不同类的不同形态特征. 一个被定义成private的类成员为此类私有,它不能被该类外的所有代码访问,包括子类. 如果子类中不显式调用父类的构造函数,则会调用父类的默认构造函数(如果有的话). 父类和子类的相互转换 在Ja…
摘要:韦东山android视频学习笔记  面向对象程序的三大特性之封装性:把属性和方法封装在一个整体,同时添加权限访问. 1.封装性的简单程序如下,看一下第19行,如果我们不对age变量进行权限的管控,万一我们设置的age为-1,实际上设置age为-1是不合理的,将age的属性设置为private之后,设置age变量只能通过setAge方法进行操作,如果你传进来的age不合理的,那样我们都设置为0,那样就能够拦截下来. class Persion{ private int age; public…
1.封装的定义: 封装:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问. 2.  为什么需要封装?封装的作用和含义? 首先思考一个问题:当我们要看电视时,只需要按一下开关和换台就可以了.有必要了解电视机内部的结构吗?有必要碰碰显像管吗? 答案显然是否定的.隐藏对象内部的复杂性,只对外公开简单的接口.便于外界调用,从而提高系统的可扩展性.可维护性. 我们程序设计要追求“高内聚,低耦合”.高内聚是类的内部数据操作细节自己完成,不允许外部干涉:低…
前面已经说到面向对象编程有封装,继承,多态三大特性,那么其中的继承则很重要,可以直接单独的拿出来解析 继承 1.什么是继承: 字面意是子女继承父母的家产或者特性等.而在编程里继承是指子类继承父类(基类,超类,都一个意思)的属性和方法 2.怎么继承: 说个简单的例子,在前面里说到了定义类时使用object参数后就带有了object的属性和方法,这种自然带有的属性和方法就是继承. 所以,继承的方法:在事先有父类的前提下,定义子类时,把父类类对象以参数形式传入就行 例子: 3.实际案列: 定义一个继承…
一.js对象 1.js对象 js对象是一种复合数据类型,它可以把多个(不同类型的)数据集中在一个变量中,并且给每个数据起名字. 2.对象与数组 对象的每个数据有对应的名字(属性名),我们通过叫名字访问具体哪个数据: 数组的每个数据没有名字,我们只能通过编号来访问具体哪个数据. 从本质讲,数组就是对象的特殊形式,数组的每个索引实质就是特殊化的 对象属性名.举个例子: var a = [0,1,2,3]; a['me'] = 1; a[-1] = '负数'; //负数 转换为 字符串 a[1.23]…
摘要:韦东山android视频学习笔记  面向对象程序的三大特性之继承性:继承性的主要作用就是复用代码.继承性也有一定的限制,如图一 图一 1.我们在第2课第2节_Java面向对象编程_封装性_P 中定义了persion.我在这代码基础上定义一个学习类,并继承persion类. class Persion{ private int age; public void setAge(int age){ if (age < 0 || age > 200) age = 0; else this.age…