您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 第六讲面向对象的程序设计概念
东南博职业技术学院课时授课计划编号:Win001班级班班班日期第6教学周课题面向对象的程序设计概念目的要求要求学生理解类和对象的概念,对象的创建,及成员变量和方法的引用重点类和对象的概念,及实际应用难点类的设计教法讲授动手操作教具教材及课外资料无课外资料课时分配组织教学0复习旧课上机练习讲授新课2小结巩固1布置作业上机练习其他1教学内容及进程一、类的概念二、对象三、成员变量四、成员方法课外作业课后作业1.设计一个衣服类,然后生成2个对象,分别输出各自的属性。第六讲面向对象的程序设计概念本章导读在面向对象的程序设计中,将所有事务都作为对象来处理。例如人就是一个对象,他有性别、年龄、身高、体重等,这就是作为“人”这个对象的共有的特征;同时“人”这个对象还有学习、工作、吃饭、穿衣、娱乐等行为。通过本章,要求学生了解什么是类?什么是对象?以及它们之间关系;对于类而言,主要讲解类的概念、类的定义以及类成员变量和方法的引用;对于对象而言,主要讲解对象的概念、对象的引用以及利用构造方法对对象进行初始化操作。6.1类的概念类是对对象的一个抽象描述,用“class”定义(是一个抽象概念)。类可以作为一个数据类型,与基本数据类型(如int、char等)等同来看;而对象是指具体的事物。类的特征和行为分别命名为属性和方法;例class人类{Stringname;//名字,属性charsex;//性别,属性Stringhomeplace;//住址,属性eatfood();//吃饭,方法sleep();//睡觉,方法study();//学习,方法}6.2类的概念及定义类是对对象的抽象描述,对象间是相互独立的;类中定义的方法可以被该类的对象调用;定义:class类名{成员变量;成员方法;}6.4对象类是对象的“模板”,对象是类的实例。在“纯粹”面向对象的程序设计语言中,所有东西都是对象。对象可以看作是基本单位。创建对象格式:类名对象名=new类名([参数1,参数2,…])或:类名对象名;对象名=new类名([参数1,参数2,…])用new实现创建对象时,实现了3个操作:创建了一个类的对象(或实例);为对象分配空间(类似数组);执行类所定义的构造方法;例:Samplekk=newSample();对象的引用创建对象实例从本质上来讲,就是获得操纵对象的句柄,用new让对象句柄与新对象连接起来,使其指向新对象,而把对象分配给变量;引用成员变量:对象名.成员变量名;引用方法:对象名.方法名([参数])例求圆面积classCircle{floatr;finaldoublePI=3.14159;publicdoublearea(){returnPI*r*r;}publicstaticvoidmain(Stingargs[]){Circlecir=newCircle();//创建对象cir.r=12.35f;//访问成员变量doublex=cir.area();//访问方法System.out.println(“圆面积为:”+x);}}对象的初始化和构造方法构造方法:是一种特殊的方法,在创建对象时自动调用,对对象进行初始化操作;构造方法的特点:(1)构造方法的名字与类名相同;若无构造方法,Java会使用缺少值;(2)构造方法主要作用是初始化对象的成员变量;(3)构造方法没有返回值类型,也不是void;(4)一个类可以有多个构造方法,即可重载;(5)构造方法可以继承;6.5类的成员变量1.成员变量和方法变量成员变量:在类的内部,方法的外部定义的变量,其作用域是整个类,同一类中所有方法都可以对其访问,通过名字引用;(如上例Circle)方法变量:方法体中定义的变量,作用域仅在方法体内;例:classSample{publicinti;//成员变量publicmethod(){intj;//一个方法变量j}}定义成员变量的格式:[访问权限][static][final]类型变量名;2.权限public:可被任何类访问;protected:可被类、子类、在同一包中的类访问;private:只能被该类的方法访问;3.static成员变量该变量是静态变量或称类变量,为该类所有实例对象共享,保存在为类声明的存储单元中,无需初始化类即可访问,任何对象访问它将得到同一个值;访问方式:类.静态变量对象.静态变量静态变量(类内部)4.最终成员变量:用final修饰,一般在声明时初始化;一旦被赋值,则不能改变;如:finaldoublePI=3.14159;6.6方法的引用和修饰方法与子程序、函数同义1.方法引用static修饰的方法称为静态方法(或类方法),是属于类的方法,不属于对象;可以被类的所有对象引用(形式:“对象.静态方法”),也可以“类.静态方法”形式引用;几种调用形式:(1)在类内部,直接调用静态方法;(2)递归调用;(3)对象.(静态)方法;类.静态方法静态方法定义形式:staticfunc1(intx){方法体;}例如数学函数类的方法:Math.abs(a)和Math.sqrt(25.0)等;2.this关键字修饰方法和变量(1)this.变量:当方法的形参与类的成员变量同名时,用this区别,this代指当前对象;(2)this.方法:this代替对象名而直接引用类定义的方法;3.最终方法:用final修饰的方法,不能被更改,不能被子类重载;类和对象举例classyiFu{StringsuoYouRen;//类变量,成员变量,在整个类中都可见StringpingPai;intciMa;intjiaGe;publicyiFu(StringsuoYouRen,StringpingPai,intciMa,intjiaGe){//对对象的成员变量初始化this.suoYouRen=suoYouRen;this.pingPai=pingPai;this.ciMa=ciMa;//this.ciMa指本对象的成员变量this.jiaGe=jiaGe;//而ciMa指带入的参数}publicvoidzenMeXi(){}publicvoidgetPingPai(){System.out.println(suoYouRen+的衣服的牌子是:+pingPai);}publicstaticvoidmain(String[]args){//新建一个对象,并初始化yiFuTShirt1=newyiFu(“张三”,“班尼路”,175,120);TShirt1.getPingPai();System.out.println(TShirt1.suoYouRen+的衣服的价格是:+TShirt1.jiaGe);//新建另一个对象,并初始化yiFuTShirt2=newyiFu(李四,七匹狼,180,300);TShirt2.getPingPai();System.out.println(TShirt2.suoYouRen+的衣服的价格是:+TShirt2.jiaGe);}}薃肀莂蒃袂肀肂虿袈聿芄薂螄肈莇螇蚀肇葿薀罿肆腿莃袅肅芁薈螁膄莃莁蚇膄肃薇薃膃芅荿羁膂莈蚅袇膁蒀蒈螃膀膀蚃虿腿节蒆羈芈莄蚁袄芈蒆蒄螀芇膆蚀蚆袃莈蒃蚂袂蒁螈羀袁膀薁袆袁芃螆螂袀莅蕿蚈衿蒇莂羇羈膇薇袃羇艿莀蝿羆蒂薆螅羅膁蒈蚁羅芄蚄罿羄莆蒇袅羃蒈蚂螁羂膈蒅蚇肁芀蚁薃肀莂蒃袂肀肂虿袈聿芄薂螄肈莇螇蚀肇葿薀罿肆腿莃袅肅芁薈螁膄莃莁蚇膄肃薇薃膃芅荿羁膂莈蚅袇膁蒀蒈螃膀膀蚃虿腿节蒆羈芈莄蚁袄芈蒆蒄螀芇膆蚀蚆袃莈蒃蚂袂蒁螈羀袁膀薁袆袁芃螆螂袀莅蕿蚈衿蒇莂羇羈膇薇袃羇艿莀蝿羆蒂薆螅羅膁蒈蚁羅芄蚄罿羄莆蒇袅羃蒈蚂螁羂膈蒅蚇肁芀蚁薃肀莂蒃袂肀肂虿袈聿芄薂螄肈莇螇蚀肇葿薀罿肆腿莃袅肅芁薈螁膄莃莁蚇膄肃薇薃膃芅荿螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆肀芈芆薂聿羈蒂蒈肈肀芅袆肇芃薀螂肆莅莃蚈肅肅薈薄蚂膇莁蒀蚁艿薇蝿螀罿荿蚅蝿肁薅薁螈膄莈薇螈莆膀袆螇肆蒆螁螆膈艿蚇螅芀蒄薃螄羀芇葿袃肂蒃螈袂膄芅蚄袂芇蒁蚀袁肆芄薆袀腿蕿蒂衿芁莂螁袈羁薇蚇袇肃莀薃羆膅薆葿羆芈荿螇羅羇膁螃羄膀莇虿羃节芀薅羂羂蒅蒁羁肄芈螀羀膆蒃蚆
本文标题:第六讲面向对象的程序设计概念
链接地址:https://www.777doc.com/doc-2161184 .html