软件工程文档编制

Similar documents
OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

Microsoft Word - 新1-12.doc

javaexample-02.pdf

Chapter 9: Objects and Classes

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点


Strings

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点

Microsoft PowerPoint - L17_Inheritance_v4.pptx

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌

OOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点

untitled

《大话设计模式》第一章

untitled

Learning Java

The Embedded computing platform

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

无类继承.key

模板

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

untitled

(6) 要 求 付 款 管 理 员 从 预 订 表 中 查 询 距 预 订 的 会 议 时 间 两 周 内 的 预 定, 根 据 客 户 记 录 给 满 足 条 件 的 客 户 发 送 支 付 余 款 要 求 (7) 支 付 余 款 管 理 员 收 到 客 户 余 款 支 付 的 通 知 后, 检

入 学 考 试 重 点 考 查 学 生 的 基 础 专 业 知 识 基 本 实 验 操 作 技 能 独 立 思 考 和 动 手 能 力 笔 试 和 面 试 的 试 题 都 有 足 够 的 难 度, 以 利 择 优 录 取 新 录 取 的 研 究 生 第 一 次 见 面, 池 先 生 会 作 一 次

JavaIO.PDF

OOP with Java 通知 Project 3: 4 月 19 日晚 9 点

EJB-Programming-4-cn.doc

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票

96年特種考試第一次司法人員考試試題解答

Chapter 9: Objects and Classes

Microsoft Word - 01.DOC

chp6.ppt

untitled

附录J:Eclipse教程

Adobe® Flash® 的 Adobe® ActionScript® 3.0 程式設計

2 Java 语 言 程 序 设 计 教 程 简 单 性 Java 语 言 的 语 法 与 C 语 言 和 C++ 语 言 很 接 近, 使 得 大 多 数 程 序 员 很 容 易 学 习 和 使 用 Java 另 一 方 面,Java 丢 弃 了 C++ 中 很 少 使 用 的 很 难

untitled

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

java2d-4.PDF

一、

9, : Java 19., [4 ]. 3 Apla2Java Apla PAR,Apla2Java Apla Java.,Apla,,, 1. 1 Apla Apla A[J ] Get elem (set A) A J A B Intersection(set A,set B) A B A B

EJB-Programming-3.PDF

Microsoft Word - chap10.doc

<4D F736F F F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj

Microsoft Word - ch04三校.doc

第八章类和对象的扩展 实验目的 (1) 类的继承 a. 掌握父类及子类的关系及创建方法 b. 掌握上转型对象的使用方法 c. 掌握子类对象创建过程中与父类构造方法的关系, 及 super 关键字的用法 (2) 多态与接口 a. 掌握抽象类与抽象方法的概念 b. 掌握多态的实现原理及方法 c. 了解成

建模与图形思考

Java

電機工程系認可證照清單 /7/1

Microsoft Word - 第6章.doc

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

Microsoft PowerPoint - ch02

《80后职场新鲜人生存手册》

Microsoft Word - 三峽鎮衛生所_3_-張家宸.李永繁.doc

Microsoft Word - 武漢大學交流營心得_黃莉云_.doc

1.5招募说明书(草案)

使用MapReduce读取XML文件

untitled

Microsoft Word - 第2章.doc

Microsoft PowerPoint - 14Threads.ppt

Java 1 Java String Date

目 录 实 验 一 : 熟 悉 Java 开 发 环 境... 1 实 验 二 : 类 与 面 向 对 象... 7 实 验 三 : 继 承 和 多 态 实 验 四 : 异 常 处 理 实 验 五 : 流 文 件 及 基 于 文 本 的 应 用... 23

<4D F736F F D20C8EDC9E82DCFC2CEE7CCE22D3039C9CF>

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

chp5_1

Strings

全国计算机技术与软件专业技术资格(水平)考试

<4D F736F F F696E74202D20A4BDA640A475B57BA454BC68AFC5AB7EBDE8BADEB27AB460C0F4AC5BBA6328ADD7292DB35CBAFBAE78>

Microsoft Word - 第5章.doc

chp11.ppt

untitled

Microsoft Word - 中耳的主要疾病~中耳炎.doc

Microsoft Word - JAVA3.rtf

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

新版 明解C++入門編

<ADB6ADB1C25EA8FAA6DB2D4D56432E706466>

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6:

聯安醫院病人安全工作目標-內容_101年_.doc

untitled

untitled

没 有 多 余 的 Contruol 或 Action 了 原 来 Domain 层 被 服 务 层 Service layer 遮 挡, 在 右 边 图 中, 则 Domain 层 直 接 暴 露 给 前 台 了, 没 有 被 遮 挡, 裸 露 了 这 样 一 步 到 位 实 现 领 域 模 型

内 容 提 要 将 JAVA 开 发 环 境 迁 移 到 Linux 系 统 上 是 现 在 很 多 公 司 的 现 实 想 法, 而 在 Linux 上 配 置 JAVA 开 发 环 境 是 步 入 Linux 下 JAVA 程 序 开 发 的 第 一 步, 本 文 图 文 并 茂 地 全 程 指

输入 project name 选择完成

教学内容 1 2 类和对象 Java 面向对象特性

運算子多載 Operator Overloading

基于CDIO一体化理念的课程教学大纲设计

Java的详细介绍

第3章.doc

北 风 网 讲 师 原 创 作 品 ---- 仅 供 学 员 内 部 交 流 使 用 前 言 吾 尝 终 日 而 思 矣, 不 如 须 臾 之 所 学 也 ; 吾 尝 跂 而 望 矣, 不 如 登 高 之 博 见 也 登 高 而 招, 臂 非 加 长 也, 而 见

<4D F736F F F696E74202D20B5DA3035D5C220C3E6CFF2B6D4CFF3B8DFBCB6B3CCD0F2C9E8BCC6>

3.1 num = 3 ch = 'C' 2

Transcription:

实训抽象类 一 实训目标 掌握抽象类的定义 使用 掌握运行时多态 二 知识点 抽象类的语法格式如下 : public abstract class ClassName abstract void 方法名称 ( 参数 ); // 非抽象方法的实现代码 在使用抽象类时需要注意如下几点 : 1 抽象类不能被实例化, 实例化的工作应该交由它的子类来完成 2 抽象方法必须由子类来进行重写 3 只要包含一个抽象方法的抽象类, 该方法必须要定义成抽象类, 不管是 否还包含有其他方法 4 抽象类中可以包含具体的方法, 当然也可以不包含抽象方法 5 子类中的抽象方法不能与父类的抽象方法同名 6 abstract 不能与 final 并列修饰同一个类 7 abstract 不能与 private static final 或 native 并列修饰同一个方法 Email:18442056@qq.com http://www.kmdin.com 第 1 页, 共 9 页

三 案例 编写一个 java 抽象类, 源代码如下 : public abstract class Employee private String name; private String address; private int number; public Employee(String name, String address, int number) System.out.println("Constructing an Employee"); this.name = name; this.address = address; this.number = number; public double computepay() System.out.println("Inside Employee computepay"); return 0.0; public void mailcheck() System.out.println("Mailing a check to " + this.name + " " + this.address); public String tostring() return name + " " + address + " " + number; public String getname() return name; public String getaddress() return address; Email:18442056@qq.com http://www.kmdin.com 第 2 页, 共 9 页

public void setaddress(string newaddress) address = newaddress; public int getnumber() return number; 继承 Employee 类的源代码如下 : public class Salary extends Employee private double salary; //Annual salary public Salary(String name, String address, int number, double salary) super(name, address, number); setsalary(salary); public void mailcheck() System.out.println("Within mailcheck of Salary class "); System.out.println("Mailing check to " + getname() + " with salary " + salary); public double getsalary() return salary; public void setsalary(double newsalary) if(newsalary >= 0.0) salary = newsalary; public double computepay() System.out.println("Computing salary pay for " + getname()); Email:18442056@qq.com http://www.kmdin.com 第 3 页, 共 9 页

return salary/52; 不能实例化一个 Employee 类的对象, 但是如果我们实例化一个 Salary 类对 象, 该对象将从 Employee 类继承 7 个成员方法, 且通过该方法可以设置或获取三个成员变量 public class SalaryTest public static void main(string [] args) Salary objsalary = new Salary("Mohd Mohtashim", "Ambehta, UP", 3, 3600.00); Employee objemployee = new Salary("John Adams", "Boston, MA", 2, 2400.00); System.out.println("Call mailcheck using Salary reference "); objsalary.mailcheck(); System.out.println("\nCall mailcheck using Employee reference "); objemployee.mailcheck(); 编写一个 java 程序, 源代码如下 : public abstract class Shapes public int x, y; public int width, height; public Shapes(int x, int y, int width, int height) this.x = x; this.y = y; this.width = width; this.height = height; abstract double getarea(); abstract double getperimeter(); Email:18442056@qq.com http://www.kmdin.com 第 4 页, 共 9 页

public class Circle extends Shapes public double r; public double getarea() return (r * r * Math.PI); public double getperimeter() return (2 * Math.PI * r); public Circle(int x, int y, int width, int heigh) super(x, y, width, heigh); r = (double) width / 2.0; public class Square extends Shapes public double getarea() return (width * height); public double getperimeter() return (2 * width + 2 * height); public Square(int x, int y, int width, int height) super(x, y, width, height); public class Triangle extends Shapes public double c; public double getarea() return (0.5 * width * height); public double getperimeter() return (width + height + c); Email:18442056@qq.com http://www.kmdin.com 第 5 页, 共 9 页

public Triangle(int x, int y, int base, int height) super(x, y, base, height); c = Math.sqrt(width * width + height * height); import java.applet.applet; import java.awt.graphics; public class Test extends Applet Square Box = new Square(5, 15, 25, 25); Triangle tri = new Triangle(5, 50, 8, 4); Circle Oval = new Circle(5, 90, 25, 25); public void paint(graphics g) g.drawrect(box.x, Box.y, Box.width, Box.height); g.drawstring("box Area:" + Box.getArea(), 50, 35); g.drawstring("box Perimeter:" + Box.getPerimeter(), 50, 55); g.drawstring("tri Area:" + tri.getarea(), 50, 75); g.drawstring("tri Perimeter:" + tri.getperimeter(), 50, 95); g.drawoval(oval.x, Oval.y, Oval.width, Oval.height); g.drawstring("oval Area:" + Oval.getArea(), 50, 115); 编写一个 java 程序, 实现三种不同事物的行为, 具体要求如下 : 机器人 : 充电, 工作 ; 人 : 吃饭, 工作, 睡觉 ; 猪 : 进食, 睡觉 抽象行为类源代码如下 : public abstract class Action public static final int EAT = 1; public static final int SLEEP = 3; public static final int WORK = 5; public abstract void eat(); public abstract void sleep(); public abstract void work(); Email:18442056@qq.com http://www.kmdin.com 第 6 页, 共 9 页

public void commond(int flags) switch(flags) case EAT: this.eat(); case SLEEP: this.sleep(); case WORK: this.work(); case EAT + SLEEP: this.eat(); this.sleep(); case SLEEP + WORK: this.sleep(); this.work(); default: 机器人类源代码如下 : public class Robot extends Action public void eat() System.out.println(" 机器人充电 "); public void sleep() public void work() System.out.println(" 机器人工作 "); Email:18442056@qq.com http://www.kmdin.com 第 7 页, 共 9 页

人类的源代码如下 : public class Human extends Action public void eat() System.out.println(" 人吃饭 "); public void sleep() System.out.println(" 人睡觉 "); public void work() System.out.println(" 人工作 "); 猪类源代码如下 : public class Pig extends Action public void eat() System.out.println(" 猪进食 "); public void sleep() System.out.println(" 猪睡觉 "); public void work() 测试类代码如下 : public class AbstractTest Email:18442056@qq.com http://www.kmdin.com 第 8 页, 共 9 页

public static void main(string[] args) fun(new Robot()); fun(new Human()); fun(new Pig()); public static void fun(action act) act.commond(action.eat); act.commond(action.sleep); act.commond(action.work); Email:18442056@qq.com http://www.kmdin.com 第 9 页, 共 9 页