知识补漏(1)

最近在上课时老师问了许多问题,发现都不是很懂,总结一下.

new不止是创建了一个对象,一共做了四步.

一起看个代码:

var Func = function(){
}
var func = new Func();

这里的new做了四步:
1.创建了一个空对象.

var obj = new object();

2.设置原型链

obj.__proto__ = Func.protetype;

3.让Func中的this指向obj,并执行Func的函数体.

var result = Func.call(obj);

4.判断Func的返回值类型.:如果是值类型,返回obj.如果是引用类型,就返回这个引用类型的对象.

if (typeof(result) == "object"){
	func = result;
}else{
	func = obj;
}

什么是面向对象

对象是可以当作返回值来用的。
在面向对象程序设计中,对象所指的是计算机系统中的某一个成分。在面向对象程序设计中,对象包含两个意义,其中一个是数据,另外一个是动作。对象则是
数据和动作的结合体。对象不仅能够进行操作,方法同时还有另外一个名称,叫做函数。方法是类中的定义函数,其具体的作用就是对对象进行描述操作。

封装

将对象的属性方法进行隐藏,只对特定的对象提供访问权限,通过权限修饰符,方法的参数隐藏来实现隐藏的具体过程,达到数据隐私的效果。

继承

简单的理解就是以现有的类为基础,复制它,然后通过添加和修改这种副本来创建新类。
继承现有类型时,子类拥有父类的所有成员,更重要的是子类复制了基类的接口,即所有可以发送给基类对象的消息同时也可以发送给导出类对象,子类的确是继承了父类的所有属性和方法,因为权限修饰符的关系,访问也有一些限制;

多态

什么是多态呢???
官方
接口的多种不同的实现方式即为多态。
多态性是允许你将父对象设置成为一个或多个它的子对象相等的技术。。。。。。
本人表示很难理解呀!!!
简单点:
允许将子类类型的指针赋值给父类类型的指针,把不同的子类对象都当做父类来看。比如你家有亲属结婚了,让你派个人来参加婚礼,邀请函写的是让你爸来,但实际上是你去了,或者你妹妹去了,这都可以,但是你们去之前谁也不知道谁会去,这就是多态。

向上转型:对象可以作为它自己本身的类型引用,也可以作为它的基类型的引用,即把这个某个对象的引用视为对其基类的引用的做法称作向上转型。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值