OOP面向对象程序设计
1、对象:程序中描述现实中一个物体的属性和功能的结构
面向对象的程序设计,即为定义相应对象的属性,实现相应的功能。一个对象专门代表现实中的一个物体。
*封装事物的属性和功能的结构。
例如 我们的手机:属性:
屏幕大小:5.5
处理器: A8
运行内存:2G
存储:64G
通讯录:["小张":12312312345,
"小美":32132154321,
"小贾":23423423456]
功能:打电话(电话号码){}
发短信(电话号码,msg){}
2、如何创建对象
(1)、直接量创建
var obj={
属性名1:属性值1,
属性名2:属性值2,
方法名1=function(){……},
方法名2=function(){……}
}
使用:仅创建一个单独的对象时
注意:js底层,所有对象都是用hash数组存储的!
(2)、使用构造函数创建多个统一的结构对象,只需一次定义结构,即可反复创建相同结构的对象
如何使用构造函数:2步:
Step1: 定义构造函数
function 类型名(属性参数1,属性参数2,...){
this.属性名1=参数1;
this.属性名2=参数2;
this.方法名=function(){...}
}
Step2: 调用构造函数函数创建对象!
var Obj=new 类型名(属性参数1,属性参数2);
注意:this指正在创建的对象
new 构造函数的内存现象
1. new创建空对象
2. 调用构造函数向新对象中添加属性和方法
3. 设置新对象的__proto__属性指向构造函数的原型对象
4. 返回新对象的地址给调用者
(3)、先创建空对象,再设置属性
var obj=new Object(); //创建空对象
obj.属性1=值1;
obj.属性2=值2;
obj.方法=function(){...}
使用:创建对象时,暂时不知道对象中的结构
可先创建空对象,之后逐渐追加属性和方法(一般不使用),
固定套路:遍历对象中所有属性和方法: for in结构
3、判断对象中是否存在指定属性
(1)、 "属性名" in obj:
如果obj是原始类型变量,可new空包装类型对象,再检测
(2) 、 if(obj.方法名===undefined): 属性名不存在
专门验证方法名是否存在——使用最频繁的!
可简写为if(obj.方法名)
OOP面向对象程序设计的更多相关文章
- OOP面向对象程序设计原则
OOP面向对象程序设计原则 开闭原则(Open Close Principle) 对扩展开放,对修改关闭 里氏代换原则(Liskov Substitution Principle) 继承必须确保超累所 ...
- 对面向对象程序设计(OOP)的认识
前言 本文主要介绍面向对象(OO)程序设计,以维基百科的解释: 面向对象程序设计(英语:Object-oriented programming,缩写:OOP),指一种程序设计范型,同时也是一种程序开发 ...
- JAVA 1.8 理解面向对象程序设计
1. break语句:经常用在循环语句中,用于跳出整个循环,执行循环后面的代码. 2. continue语句:经常用在循环语句中,用于跳出当前的这个循环(或者是跳出本次循环),开始下一次循环的执行. ...
- 初探C++Primer(15.面向对象程序设计)
最近在恶补OOP相关知识,很遗憾学校的课没选上,于是只能上网购进C++Primer一本,开始重学C++之旅... (壮哉我大ZJU,网购半天到货XDD) 学习路线 7.类->13.类设计者的工具 ...
- 实验二 Java面向对象程序设计
实验二 Java面向对象程序设计 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计 ...
- 20145213《Java程序设计》实验二Java面向对象程序设计实验报告
20145213<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装,继承,多态 初步掌握UML建模 熟悉S.O. ...
- 20145206《Java程序设计》实验二Java面向对象程序设计实验报告
20145206<Java程序设计>实验二Java面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O. ...
- JAVA课程实验报告 实验二 Java面向对象程序设计
北京电子科技学院(BESTI) 实 验 报 告 课程:Java程序设计 班级:1353 姓名:韩玉琪 学号:20135317 成绩: 指导教师:娄嘉 ...
- 20145225唐振远 实验二 "Java面向对象程序设计"
20145225<Java程序设计> 实验二 Java面向对象程序设计 实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S ...
随机推荐
- Hibernate 一对一中的一些问题
1.对于想查询一对一种一方为空的时候使用 例如一个用户对应一个人,则要从人查找没有用户的人员的话, 使用hql语句是查询不到的 我今天也碰到了这个问题,研究了下,可以用以下语句查出来:from Per ...
- Yii的HTML助手
Html 帮助类 基础 表单 样式表和脚本 超链接 图片 列表 任何一个 web 应用程序会生成很多 HTMl 超文本标记.如果超文本标记是静态的, 那么将 PHP 和 HTML 混合在一个文件里 这 ...
- npm http-server Dockerfile alpine 微容器,袖珍体积,解决时区问题
前端写得少,但是前端技术的思想也是非常有学习的价值,用VUE写了几个手机form页面,体验了一番spa,用docker部署也是非常简单 直接docker pull node 676M体积.不能忍. ...
- Go基础之--操作Mysql(二)
在上一篇文章中主要整理了Golang连接mysql以及一些基本的操作,并进行了大概介绍,这篇文章对增删查改进行详细的整理 读取数据 在上一篇文章中整理查询数据的时候,使用了Query的方法查询,其实d ...
- sizeof计算空间大小的总结
sizeof,看起来还真不简单,总结起来还是一大堆的东西,不过这是笔试面试中出现比较频繁的,我也是考过才觉得很重要,有些规则如果不注意,还真是拿到一道题目摸不着头脑,所有总结一下,方面忘记的时候瞄一瞄 ...
- dojo CsvStore简介
dojox.data.CsvStore 作者:Jared Jurkiewicz 版本:V1.0 CsvStore是由dojo提供的简单的只读存储,并且是包含在dojox项目中的.CsvStore是读取 ...
- FC总线技术简介
FC是由美国标准化委员会(ANSI)的X3T11小组于1988年提出的高速串行传输总线,解决了并行总线SCSI遇到的技术瓶颈,并在同一大的协议平台框架下可以映射更多FC-4上层协议.FC具备通道和网络 ...
- Invalid property 'driver_class' of bean class
1.错误描述 INFO:2015-05-01 13:06:07[localhost-startStop-1] - Initializing c3p0-0.9.2.1 [built 20-March-2 ...
- windows驱动程序wdf--KMDF获取应用程序数据缓冲区地址
有3种常用方式:METHOD_BUFFERED METHOD_IN_DIRECT METHOD_OUT_DIRECT 还有METHOD_NEITHER,<windows设备驱动WDF开发 ...
- XmlDocument 转换为xml字符串
static public string XMLDocumentToString(XmlDocument doc) { MemoryStream stream = new Me ...