面向对象的理解
2018-09-18 06:37:23来源:博客园 阅读 ()
对于面向对象我的感觉还是很迷茫的,每当有人和我说用面向对象去写一个东西,我都在想面向对象。。。对象在哪里,我该怎么面向对象??????十万个问号在我脑袋里出现。今天特意去找了一些面向对象的资料看了下,了解了个粗概。
说到面向对象,首先要想到的是面向对象的三大特性,一、封装,二、继承,三、多态。在网上看到了个好玩的例子,用这个例子来笼统的说下这三大特性:
一、封装:就好比你吃饭一样,都是要把你吃的东西放到你的肚子里面,不管你吃的是咸菜窝窝头,还是海参鲍鱼,到了你肚子里了,谁知道你吃的是什么,只有你说出去的时候才会有人知道。
二、继承:这就很好理解了,就和继承财产是一样一样的,你为啥这有钱啊,还不是继承了你父亲的财产,你父亲继承了你爷爷的财产,最后财产到你手里了,只需要那你花出去就行了。
三、多态:多态又叫抽象,多太给我的理解就像下面的这张图一样,同一张脸,能够很多人来使用
好了,三大特性了解的差不多了,来了解下你的对象,我们接下来要面对的对象
对象:说白咯就是你要用到的数据object
var appid = {
name:“老谭”
nge:“25”
getname:function(){
console.log(this.name)//老谭
}
}
来进行下封装
var encapsulation = function(){
var name = “老谭酸菜” //私有属性
function test(){} //私有方法
this.myname = "毛蛋" //公共属性
this.coun = function(){} //公共方法
}
var p = new encapsulation ();
alert(p.myname) //这里注意私有属性没有办法调出
encapsulation.prototype.frend=["毛蛋"];//往封装函数里面添加东西
var e=new encapsulation();//把函数传给e
e.frend.push("鸭蛋");
console.log(e.frend)//打印出“毛蛋”“鸭蛋”
继承
function Super(){ //爷爷
this.val = true; //遗产
}
function sub(){ //父亲
this.proe:{} //口袋
}
sub.proe = new Super(); //遗产进口袋
var sud = new sub(); //儿子要继承父亲的财务
console.log(sud.val) //值为true //最后儿子手里有的就是爷爷的财富
多态,说真的没有理解过来,只知道它是一种接口方式能够多种调用的实现方式
function Person(name,age){ this.name=name this.age=age } Person.prototype.valueOf=function(){ return this.age } function Man(name,age){ Person.apply(this,arguments) } Man.prototype = Object.create(Person.prototype); var person=new Person("Neo",19) var man1=new Man("Davin",18) var man2=new Man("Jack",19) var man3=new Man("Joe",19) >man1<19//1 >true >person==19//2 >true >man1true >man2==man3 //4 注意 >true >person==man2//5 >false
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:rem适配方案
下一篇:package.json字段分析
- javascript面向对象入门基础详细介绍 2020-03-29
- jquery遍历筛选数组的几种方法和遍历解析json对象 2020-02-29
- 深入理解JavaScript是如何实现继承的 2020-02-25
- jQuery表单对象属性过滤选择器实例详解 2020-02-21
- Javascript调试console对象的小技巧 2020-02-20
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash