JS中的phototype是JS中比较难理解的一个部分 本文基于下面几个知识点: 1 原型法设计模式 在.Net中可以使用clone()来实现原型法 原型法的主要思想是,现在有1个类A,我想要创建一个类B,这个类是以A为原型的,并且能进行扩展.我们称B的原型为A. 2 javascript的方法可以分为三类: a 类方法 b 对象方法 c 原型方法 例子: function People(name){  this.name=name;  //对象方法  this.Introduce=functi…
PS:个人感觉跟C#的静态方法和非静态方法有点类似,仅仅是有点类似.明杰老师说过不要总跟之前学过的语言做比较,但是个人觉得,比较一下可以加深印象吧.重点是自己真的能够区分开! 一.OC中的对象方法 1.以减号“-”开头 2.只能让对象调用,没有对象,这个方法根本不可能被执行 3.对象方法能访问实例变量(也就是成员变量) 二.OC中的类方法 1.以加号“+”开头 2.只能用类名调用,对象不能调用 3.类方法中不能访问实例变量(也就是成员变量) 4.适用场合:当不需要访问成员变量的时候,尽量用类方法…
OC语言中的方法和函数是有区别的:类内部叫方法,单独定义的叫函数,定义的格式也不同 类方法:+ (void) 方法名.对象方法:- (void) 方法名.函数:void 函数名(参数列表) #import <Foundation/Foundation.h> void test();//test函数的声明 //类Person的声明 @interface Person : NSObject + (void)test;//类方法 - (void)test;//对象方法 - (int)sumWithN…
--------开始前先申明一下:小编为了让大家看出效果,在编码中命名方式会又些不规范. 首先我们先来了解一下什么是类方法与对象方法. 对象方法: 对象是由“-”开头.比如:-(void)Runner: 对象方法顾名思义只能由对象来调用 比如说:@interface Person : NSObject -(void)Runner://对象方法 @end: int main() { Person *p=[Person new];//Person是一个类,它创建一个对象p. [p Runner];/…
在stackoverflow上看到一个这样的提问,以下代码有什么区别? Class.method = function () { /* code */ } Class.prototype.method = function () { /* code using this.values */ } 看来确实有很多人和我一样对这个问题有疑问,实际上这个牵涉到static和dynamic方法的概念. Class.method这种模式定义的method是绑定在Class对象之上的.在js中,我们知道一切皆…
类方法:也叫函数方法,在JavaScript中函数也是一个对象,所以可以为函数添加属性以及方法: 对象方法:包括构造函数中的方法以及其原型上面的方法: 原型方法:一般用于对象实例共享,在原型上面添加该方法,就能实现共享. Javascript中的function作为构造函数时,就是一个类,搭配上new操作符,可以返回一个对象. function People(name){ this.name=name; //对象方法 (实例方法) //每个对象实例都有的方法 //只有对象实例才能调用的方法 th…
计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript学习笔记(3--this/call/apply) Java程序猿的JavaScript学习笔记(4--this/闭包/getter/setter) Java程序猿的JavaScript学习笔记(5--prototype) Java程序猿的JavaScript学习笔记(6--面向对象模拟) Java程…
function People(name) { this.name=name; //对象方法 this.Introduce=function(){ alert("My name is "+this.name); } } //类方法 People.Run=function(){ alert("I can run"); } //原型方法 People.prototype.IntroduceChinese=function(){ alert("我的名字是&quo…
在stack overflow中看到一个人回答,如下   // constructor function function MyClass () { var privateVariable; // private member only available within the constructor fn this.privilegedMethod = function () { // it can access private members //.. }; } // A 'static m…
<script type="text/javascript"> function baseClass() { this.showMsg = function() { alert("baseClass::showMsg"); } this.baseShowMsg = function() { alert("baseClass::baseShowMsg"); } } baseClass.showMsg = function() { ale…