《Java程序设计及应用》.ppt
《《Java程序设计及应用》.ppt》由会员分享,可在线阅读,更多相关《《Java程序设计及应用》.ppt(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第6讲:面向对象(讲:面向对象(1)内容提要内容提要1.人与计算机的关系人与计算机的关系2.物理世界与面向对象物理世界与面向对象 3.类与对象类与对象 4.面向对象基本特征面向对象基本特征1.封装1.访问修饰符2.继承3.多态1.重载2.覆盖教学要求教学要求v物理世界与面向对象的思想、方法物理世界与面向对象的思想、方法 v计算机面向对象的思想、方法计算机面向对象的思想、方法 v如何定义一个类以及创建其实例如何定义一个类以及创建其实例v面向对象的三个基本特征面向对象的三个基本特征人与计算机的关系人与计算机的关系 v人处于主体地位,计算机只能处于从属地位人处于主体地位,计算机只能处于从属地位。v
2、计算机必须能够模拟这个物理世界计算机必须能够模拟这个物理世界。v计算机是个小世界,而物理世界是个大世界,小计算机是个小世界,而物理世界是个大世界,小世界来源于大世界世界来源于大世界 物理世界的认知物理世界的认知 v(1)世界由万物构成。)世界由万物构成。v(2)事物是运动的、发展的、变化的。)事物是运动的、发展的、变化的。v(3)事物之间的关系是复杂的、多变的。)事物之间的关系是复杂的、多变的。事物的基本特征事物的基本特征 v(1)封装。)封装。保护功能相对独立性v(2)继承)继承 加快事物发展的速度提高事物发展的质量v(3)多态。)多态。透过现象抓本质,以不变应万变。事物间的关系事物间的关系
3、 v泛化关系(泛化关系(Generalization)v聚合关系(聚合关系(Aggregation)v组合关系(组合关系(Composition)v依赖关系(依赖关系(Dependency)v关联(关联(Association)。)。类与对象类与对象 v世界由万物构成,经由前面的学习,我们知道研究物理世世界由万物构成,经由前面的学习,我们知道研究物理世界要用分类的方法。在面向对象程序设计中用类界要用分类的方法。在面向对象程序设计中用类(class)来模拟一类事物。)来模拟一类事物。v类的定义需用关键字类的定义需用关键字 class,定义一个简单类的语法如下:,定义一个简单类的语法如下:vcla
4、ss 类名类名/该行称为类头,大括号之间的部分称为该行称为类头,大括号之间的部分称为类体类体 零或多个属性零或多个属性;零或多个方法零或多个方法;v其中属性的定义格式有两种,如下:其中属性的定义格式有两种,如下:v(1)类型)类型 属性名属性名=属性值属性值;v(2)类型)类型 属性名属性名1=属性值属性值1,属性名属性名2=属性值属性值2,.;类定义举例类定义举例v1 class Student 2 String sno;/学号学号 3 String name,major;/姓名姓名,专业专业 4 int age;/年龄年龄 5 6 void showInfo()7 (学号学号:+sno+t
5、姓名姓名:+name+8 t年龄年龄:+age+t专业专业:+major);9 10 11 Student()/第一种构造方法第一种构造方法 12 13 14 /*第二种构造方法第二种构造方法*/15 Student(String sno1,String name1,String major1,int age1)16 sno=sno1;17 name=name1;18 major=major1;19 age=age1;20 21 22 实例对象实例对象v实例对象可以使用类的构造方法和实例对象可以使用类的构造方法和new关键字构关键字构造出来。语法为:造出来。语法为:类名 对象引用=new 构造
6、方法;v例如:例如:Student t=new Student();类的成员类的成员v1成员属性的定义成员属性也称为成员变量,定义一个成员属性,格式为:修饰符 类型 成员属性名=成员属性值;例如:int a=10;int b;String s1;String s2=new String(abc);其中修饰符暂不讲,详见3.8节。v2成员方法的定义语法为:修饰符 返回类型 方法名(形式参数列表)throws 异常类型列表/方法头 执行语句块;/方法体 成员变量的初始化成员变量的初始化 成员变量类型默认值成员变量类型默认值 boolean false char(即空字(即空字符)符)byte,sh
7、ort,int 0 long 0L float 0.0F double 0.0D 引用类型引用类型 null 构造方法构造方法 v当使用当使用new关键字创建一个类实例对象时,系统关键字创建一个类实例对象时,系统(JVM)会自动调用该类的构造方法来完成类实)会自动调用该类的构造方法来完成类实例对象的构建,从而构造方法对类定义来说是必例对象的构建,从而构造方法对类定义来说是必须的。那么我们在类中如何声明一个构造方法呢须的。那么我们在类中如何声明一个构造方法呢?如下:?如下:v访问修饰符访问修饰符 类名类名(参数列表参数列表)/.构造方法的几点说明构造方法的几点说明v(1)构造方法的访问修饰符可以
8、是)构造方法的访问修饰符可以是public,protected或者缺省(即不用访问修饰符),但不允许或者缺省(即不用访问修饰符),但不允许private。v(2)构造方法的名称和类名相同,但没有返回类型。)构造方法的名称和类名相同,但没有返回类型。v(3)若没有定义任何构造方法,则在编译阶段编译器会)若没有定义任何构造方法,则在编译阶段编译器会在编译后的字节码文件中插入一个默认的构造方法,默认在编译后的字节码文件中插入一个默认的构造方法,默认的构造方法是:无参数列表,访问修饰符和类的访问修饰的构造方法是:无参数列表,访问修饰符和类的访问修饰符相同,方法体内为空。符相同,方法体内为空。v(4)构
9、造方法本身不能递归调用。)构造方法本身不能递归调用。v(5)构造方法体的最后一行语句可以是空的)构造方法体的最后一行语句可以是空的return语句,语句,即即“return;”,也可以不用,也可以不用return语句。语句。v(6)可在一个类中定义多个构造方法,其区别在于参数)可在一个类中定义多个构造方法,其区别在于参数列表不同,这是构造方法的重载。关于重载,详见节。列表不同,这是构造方法的重载。关于重载,详见节。封装的封装的Java表达与访问修饰符表达与访问修饰符 v封装有两个作用:保护作用和增强对象的独立性。封装有两个作用:保护作用和增强对象的独立性。保护作用是通过设置访问修饰符来实现的。
10、保护作用是通过设置访问修饰符来实现的。v访问修饰符有访问修饰符有4个:个:public、protected、默认、默认访问修饰符、访问修饰符、private。其中默认访问修饰符就。其中默认访问修饰符就是没有修饰符,即不用是没有修饰符,即不用public、protected、private中的任何一个。访问修饰符用于对类、中的任何一个。访问修饰符用于对类、成员属性和成员方法设置访问权限,对它们实施成员属性和成员方法设置访问权限,对它们实施保护作用。保护作用。访问修饰符访问修饰符v(1)public可用于修饰类、成员变量和方法。可用于修饰类、成员变量和方法。表明该成员变量和方法是共有的,能在任何情
11、况表明该成员变量和方法是共有的,能在任何情况下被访问。下被访问。Java应用程序中的应用程序中的main()方法必须方法必须用用public来修饰(否则能通过编译,但不能运行)来修饰(否则能通过编译,但不能运行),就是为了使,就是为了使JVM能够访问它。能够访问它。v在一个源代码文件中最多只能定义一个在一个源代码文件中最多只能定义一个public类,类,且该类名必须和源代码文件同名。且该类名必须和源代码文件同名。v(2)protected只能用于修饰成员属性或成员只能用于修饰成员属性或成员方法,不能修饰类。用方法,不能修饰类。用protected修饰的成员可修饰的成员可以被同包(以被同包(pa
12、ckage)下其他类方法访问,也可)下其他类方法访问,也可以被不同包下的子类方法访问。以被不同包下的子类方法访问。v(3)默认访问修饰符修饰的成员只能被同包下的)默认访问修饰符修饰的成员只能被同包下的类方法访问。类方法访问。v(4)private修饰的成员只能被同类中的方法来修饰的成员只能被同类中的方法来访问。访问。v这这4种访问修饰符的访问范围由大到小,或安全保种访问修饰符的访问范围由大到小,或安全保护程度由低到高依次是:护程度由低到高依次是:public、protected、默认访问修饰符、默认访问修饰符、private。举例举例v1 class T 2 private String s=
13、abc;3 public String getS()/称作访问方法称作访问方法 4 return s;5 6 7 8 class Test 9 public void func()10 T t=new T();11 String s1=t.s;/非法非法 12 String s2=t.getS();/合法合法 13 14 继承继承v继承的作用:一是提高了软件的开发速度,二是继承的作用:一是提高了软件的开发速度,二是提高了开发软件的质量。提高了开发软件的质量。v继承有广义和狭义之分。继承有广义和狭义之分。广义的继承有些拿来主义的味道,因此在Java中分为横向手法和纵向手法。横向手法是指采用imp
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java程序设计及应用 Java 程序设计 应用
限制150内