JAVA语言第四章面向对象的概念和Java实现.ppt

上传人:max****ui 文档编号:6364843 上传时间:2020-02-24 格式:PPT 页数:32 大小:895KB
返回 下载 相关 举报
JAVA语言第四章面向对象的概念和Java实现.ppt_第1页
第1页 / 共32页
JAVA语言第四章面向对象的概念和Java实现.ppt_第2页
第2页 / 共32页
JAVA语言第四章面向对象的概念和Java实现.ppt_第3页
第3页 / 共32页
点击查看更多>>
资源描述
第四章 面向对象的概念和Java实现 2 2 回顾 类是具有相同属性和行为的一组对象的集合 对象是类的实例封装是隐藏对象实现细节的过程 以便不让用户看到实现的细节类可用Class来定义 类的变量和方法可被该类的实例访问 圆点符号用于访问对象的成员 构造函数在创建对象时初始化对象包可用package来申明 可用import来导入包 3 目标 理解继承及其特点运用JAVA程序实现继承理解多态及其特点设计运用JAVA程序实现多态掌握访问修饰符和方法修饰符 4 继承 父类 子类 5 继承的特点 6 继承的优点 7 继承的JAVA实现 演示 示例1 编写一个父类使用extends关键字 编写子类 classCarextendsVehicles 构造方法 Car 显示子类Car的信息 voidshow System out println 从子类Car中输出的信息 System out println 交通工具的名称 name System out println 交通工具的颜色 color System out println 座位的数量 seats System out println classVehicles 存储交通工具的名称 protectedStringname HondaCivic 存储颜色信息 protectedStringcolor Red 存储座位信息 protectedintseats 5 构造方法 Vehicles 显示父类汽车的详细信息 voidshowDetail System out println 从父类Vehicles中输出的信息 System out println 名称 name System out println 颜色 color publicclassCarTest 构造方法 CarTest 这是main方法 paramargs传递至main方法的参数 publicstaticvoidmain String args 声明一个对象 Carvehicle newCar vehicle show vehicle showDetail 8 子类构造方法2 1 要调用父类构造方法 使用关键字super 9 子类构造方法2 2 调用父类构造方法的语法为 super 或super 参数列表 super 方法始终指向调用类的父类 10 调用父类构造方法 演示 示例3 关键字super的用法 classFictionAuthorextendsAuthor 存储作者的小说类型 Stringstorytype 子类构造方法 paramname传递至构造方法的参数 paramtype传递至构造方法的参数 FictionAuthor Stringname Stringtype super name storytype type System out println 从FictionAuthor类输出 System out println 小说类型为 storytype 调用父类构造方法 Author Stringstr name str System out println 从Author类输出 System out println 姓名为 name 11 多态性2 1 多态性是指 多种形式 它使用不同的实例而执行不同操作多态包括方法重写和方法重载 12 多态性2 2 父类 子类 绘制和移动三角形 子类 绘制和移动矩形 子类 绘制和移动五边形 13 方法重载2 1 方法重载 类中有多个具有相同名称的方法 14 方法重载2 2 演示 示例4 publicclassDisplayNumber 无参数可显示 voiddisplay System out println 无参数可显示 paramnum传递至display方法的参数 paramnum1传递至display方法的参数 voiddisplay intnum intnum1 System out println 两个整数是 num num1 param型的count由display方法接收 voiddisplay doublecount System out println 在display double 方法内 count publicstaticvoidmain String arg intcount 25 DisplayNumberdispObj newDisplayNumber dispObj display dispObj display 10 20 不存在具有一个int型参数的方法 int型值自动转化为double型值 System out println 调用display double 方法 使用int变量 count dispObj display count dispObj display 25 5 15 方法重写2 1 16 方法重写2 2 父类和子类中具有相同名称和类型的方法 publicstaticvoidmain String arg RectanglerectObj newRectangle 10 15 rectObj getPerimeter RectanglesqObj newSquare 15 sqObj getPerimeter 调用父类方法 调用子类方法 classSquareextendsRectangle Square intlen length len 计算周长 voidgetPerimeter System out println 正方形的周长为 4 length classRectangle intlength intwidth Rectangle intlen intwid length len width wid 计算矩形的周长 voidgetPerimeter System out println 矩形的周长为 2 length width 17 访问修饰符3 1 信息隐藏是OOP最重要的功能之一 也是使用访问修饰符的原因信息隐藏的原因包括 对任何实现细节所作的更改不会影响使用该类的代码防止用户意外删除数据此类易于使用 访问修饰符 18 访问修饰符3 2 19 访问修饰符3 3 访问修饰符可访问性 20 方法修饰符 21 static修饰符3 1 static修饰符修饰的方法叫静态方法目的使该方法独立于类的实例 使用类去访问 而不是类实例 所以也叫类方法 22 static修饰符3 2 调用静态方法的语法为 classname methodname 23 演示 示例6 publicstaticvoidmain String arg 初始化变量 doubleinch 66 doublefeet InchesToFeet convert inches System out println inch 英寸为 feet 英尺 使用类名称调用static方法 publicstaticdoubleconvert doublein return in inches static修饰符3 3 24 final修饰符 25 abstract修饰符3 1 由abstract修饰的方法叫抽象方法 由abstract修饰的类叫抽象类抽象方法必须声明在抽象类中抽象方法语法 abstracttypemethod name parameter list 声明抽象类语法 abstractclass 使用 父类中的某些抽象不包含任何逻辑 并需要在子类中重写 子类提供这种抽象方法的实现细节 26 abstract修饰符3 2 抽象类可以具有指向子类对象的对象引用 27 abstract修饰符3 3 演示 示例7 抽象方法不具有任何实现代码 abstractclassShape protecteddoublelength protecteddoublewidth abstractdoublearea classSquareextendsShape 构造方法 paramnum传递至构造方法的参数 paramnum1传递至构造方法的参数 Square finaldoublenum finaldoublenum1 super num num1 计算正方形的面积 returndouble doublearea System out println 正方形的面积为 returnlength width 28 接口 接口就是某个事物对外提供的一些功能的申明可以利用接口实现多态 同时接口也弥补了Java单一继承的弱点使用interface关键字定义接口一般使用接口声明方法或常量 接口中的方法只能是声明 不能是具体的实现 29 创建接口的步骤2 1 定义方法的接口publicinterfacemyinterface publicvoidadd intx inty publicvoidvolume intx inty intz 定义程序使用的常量的接口publicinterfacemyconstants publicstaticfinaldoubleprice 1450 00 publicstaticfinalintcounter 5 定义一个接口 30 创建接口的步骤2 2 编译如下 javacmyinterface java用关键字implements实现接口 例如 classdemoimplementsmyinterface如果有一个以上接口被实现 则用逗号隔开接口名称 如下所示 classdemoimplementsMycalc Mycount 31 接口使用示例 publicinterfaceGForce doubleg 9 8 voidshow publicclassInterfaceTest publicstaticvoidmain String args GForcegForce newEarth gForce show publicclassEarthimplementsGForce publicvoidshow System out println g g 32 总结 封装 继承和多态是面向对象的主要特征继承可提高代码的重用性 使用extends关键字来实现 除了构造方法之外 父类的所有方法和属性都被子类的对象继承多态性是不同的实例对象以不同的方式对相同的信息作出不同的表现访问修饰符用于确定访问类成员的方式Java常用修饰符有static final abstract接口是Java编程一项重要的技术 同过它可以实现多态 同时它也弥补了Java单一继承的不足
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!