信息系统开发平台09_类和对象.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信息系统开发平台09_类和对象

学习目标 掌握PHP中的类和对象成员变量和成员方法对象作为方法参数构造方法this的使用其他关于面向对象的引申思考13届信管卓越班共有29名学生,每名学生都拥有学号,姓名,学分,年龄,手机号,身高等诸多属性。请编写程序,当输入学生的学号时,显示该学生的所有属性。一个程序即一个世界类和对象 PHP初期并不支持面向对象编程,随着计算机语言趋向接近人的思维方式的演变,PHP之父Rasmus Lerdorf在设计PHP4时,引入了面向对象的思想。在PHP5中就全面支持面向对象编程了!类和对象 class Student{ public $stuNo; public $stuName; public $age;}规范类的声明类名:首字母大写,其余字首字母大写属性名:首字母小写,其余字首字母大写public:访问修饰符,表示对所有调用者公开一般一个类会单独存在于一个文件中,命名为*.class.php类和对象 $stu1 = new Student();$stu1-stuNo=1;$stu1-stuName=fan;echo $stu1-stuName;注意类的使用$stu1即为对象名,同时是一个变量,对象变量new 类名,后面的()可要可不要对属性赋值时,需要使用-属性名前不能再写$,否则报致命错误类和对象 类是抽象的,代表一类事物,比如人类,学生类,可以理解为模板对象是具体的,实际的,代表一个具体事物,由类创建 类和对象的区别类和对象 成员变量(属性):一般是基本数据类型(数值,字符串,布尔),也可是复合类型(类、数组)。例:class Student{ public $stuNo; public $stuName; public $lover;}类的组成对象赋值及传递思考:代码1 ?php class Stu{ public $name; } $s1 = new Stu(); $s1-name=aa; $s2 = $s1; echo $s2-name;?对象赋值及传递思考:代码2 ?php class Stu{ public $name; } $s1 = new Stu(); $s1-name=aa; $s2 = $s1; $s2-name=bb; echo $s1-name;?对象赋值及传递 PHP中,对象赋值、传递,默认传递的是地址,即内存引用 回顾结论基本类型传递的是什么? 对象赋值及传递 ?php class Stu{ public $name; } function changeName($stu){ $stu-name=haha; } $s1 = new Stu(); $s1-name=aa; changeName($s1); echo $s1-name;?引申代码成员方法 思考:之前的学生类,仅拥有一些属性(成员变量),显然和现实学生不符合,怎样可以让学生拥有诸如学习、考试、睡觉、唱歌等行为,从而更好地模拟真实的学生?扩充类的行为成员方法成员方法 思考:之前的学生类,仅拥有一些属性(成员变量),显然和现实学生不符合,怎样可以让学生拥有诸如学习、考试、睡觉、唱歌等行为,从而更好地模拟真实的学生?扩充类的行为成员方法成员方法 ?php class Stu{ public $name; public function sleep(){ echo I can sleep...; } public function eat(){ echo I can eat; } } $s1 = new Stu(); echo $s1-sleep();?语法构造方法接下来问题又来了:已经解决了学生可以具有属性,也可以表现出来行为。但是,每次都需要创建对象后,再对属性赋值。可不可以在创建对象的同时,就进行属性的赋值呢? 构造方法构造方法?php class Stu{ public $name; public $age; public function __construct($name,$age){ $name = $name; $age = $age; } } $s1 = new Stu(fan, 18); echo $s1-name;? 语法构造方法构造方法写法2种:public function __construct(){ echo way 1;}public function Stu(){ echo way 2;}第1种:为PHP5后才支持的第2种:为PHP4及以前版本支持一般建议使用第1种,出于兼容考虑可以2者都写。二者同时存在,第1种优先执行 注意事项构造方法构造方法传参:必须使用$this。没有$this时,PHP认为是新建的变量,赋值将不成功。$this表示当前类对象,只能在类中使用构造方法没有返回值 注意事

文档评论(0)

文档精品 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6203200221000001

1亿VIP精品文档

相关文档