《河北理工大学软件工程摘录》由会员分享,可在线阅读,更多相关《河北理工大学软件工程摘录(16页珍藏版)》请在金锄头文库上搜索。
1、河北理工大学单 元 课 时 计 划(100 分钟)编号_课程名 称 网络编程基础授课班 级 09 计网 讲 次 25授课日期计划在 2011 年 4 月 18 日星期一 第 1 讲实际在 2011 年 4 月 18 日星期一 第 1 讲章 目 第四单元 面向对象编程节 目 实训 面向对象编程 2教 学目 标1. 掌握对象的关系、类的定义2. 掌握方法、构造方法的定义以及使用3. 掌握方法重载的思想及其使用方法教学方 法 讲授法 教 具 多媒体教学重点1. 类的设计方法、对象的使用方法2. 构造函数的使用3. 方法的重载以及 this的使用教学难点1. 类的设计2. 构造函数的使用3. 方法的重
2、载以及 this 的使用教学主要内容1. 圆对象2. 电话卡设计变更记载河北理工大学河北理工大学课 时 授 课 计 划 副 页 年 月 日教学过程及授课内容 附 注实训 面向对象编程 21 圆对象问题描述:用面向对象设计的方法,设计一个圆的类,包括计算圆的直径、圆的周长和圆的面积的方法。基本要求:采用面向对象设计的方式进行设计,要求对类中的成员变量具有权限的控制和包括有构造函数。 算法实现:/Circle 类定义public class Circle/类成员变量定义private double x; /圆心横坐标private double y; /圆心横坐标心纵坐标private doubl
3、e r; /圆半径/静态成员变量private static final double PI=3.1415926;/构造方法public Circle (double xx, double yy, double rr)this.x=xx;this.y=yy;this.r=rr;/成员方法public double getR ()return r;public void setR (double rr)this.r=rr;public double getArea ()河北理工大学课 时 授 课 计 划 副 页 年 月 日教学过程及授课内容 附 注return(PI*r*r);public do
4、uble getPerimeter()return 2*PI*r;public double getDiameterreturn 2*r;/测试public static void main (String args) /定义类对象Circle circle;/初始化对象circle=new Ci 日 cle(20, 20, 5);/输出圆的面积和周长System.out.println(“半径是:”circle.getR();System.out.println(“面积是:”circle.getArea();System.out.println(“周长是:”circle.getPerimet
5、er();/改变圆的半径circle.setR(10);/改变半径后输出圆的面积和周长System.out.println(“改变半径后输出圆的面积和周长”);System.out.println(“半径是:”circle.getR();System.out.println(“面积是:”circle.getArea();System.out.println(“周长是:”circle.getPerimeter();2 电话卡设计问题描述:编写一个 Java 程序,用面向对象的设计方法编写一个电话卡的类。包括卡号、密码、余额、拨入号码等。基本要求:类的属性有卡号、密码、余额、拨入号码。同时还要包括
6、电话卡的常用操作,包括连接电话的函数、返回余额、通电话的函数。河北理工大学课 时 授 课 计 划 副 页 年 月 日教学过程及授课内容 附 注算法描述:(1) 构造函数可以完成赋值。(2) 连接电话卡的函数可完成检查卡号和密码的功能,他是当只有在卡号和密码相匹配的时候才连接。(3) 返回余额函数得到电话卡的余额。(4) 通电话的函数是模拟通话过程中,余额会不断的减少,每调用此函数,电话卡的余额减少 0.5 元。(5) 编写 toString 方法,即用对象.toString 就可以输出电话卡所有的信息和状态。算法实现:/主类public class UsePhoneCard/用来测试publi
7、c static void main (String args) /生成一个电话卡对象,他的对象属性有卡号(12345678 ) 、密码(4321) 、余额(100.0)/拨入号码(800)PhoneCard myCard=new PhoneCard (12345678, 4321, 100.0, “800”);System.out.println(myCard.toString();/进行连接和打电话if ( myCard.performConnection(12345678, 4321)for (int i=1; i0)balance=b;elseSystem.exit(1);Connec
8、tNumber=s;/初始是连接为没有连接connected=false;/连接函数,连接的时候需要判断boolean performConnected(long cn, int pw)/当卡号和密码相匹配的时候,返回为 true;否则为 falseif (cn=cardNumber&pw=password)connected=true;return true;elseconnected=false;return false;/取得余额河北理工大学课 时 授 课 计 划 副 页 年 月 日教学过程及授课内容 附 注double getBalance ()/只能在连接的时候才能取得余额if (c
9、onnected)return balance;/否则返回-1,供调用函数来判断elsereturn 1;/模拟打电话,打一次电话用一次 performDialvoid performDial ()/在连接的情况下把余额减 0.5 元if (connected)balance-=0.5;/覆盖父类中 toString()方法,用来输出电话卡的属性。包括了当前的状态。public String toStringString s= “Connected Phone Number:”+connectedNumber+“n Card Number:”+cardNumber+“n Card Passwo
10、rd:”+password+“n Card balance:”+balance;/输出状态if (connected)return(s+ “n The phone is connected”);else return(s+ “n The phone is disconnected”);程序运行结果:java UsePhoneCardConnected Phone Number:800Card Number:12345678Card Password:4321The balance:100.0河北理工大学课 时 授 课 计 划 副 页 年 月 日教学过程及授课内容 附 注The phone is
11、 disconnected打第 1 次电话打第 2 次电话打第 3 次电话打第 4 次电话打第 5 次电话打第 6 次电话打第 7 次电话打第 8 次电话打第 9 次电话打第 10 次电话Connected Phone Number:800Card Number:12345678Card Password:4321The balance:95.0The phone is connected河北理工大学单 元 课 时 计 划(100 分钟)编号_课程名 称 网络编程基础授课班 级 09 计网 讲 次 26授课日期计划在 2011 年 4 月 19 日星期二 第 2 讲实际在 2011 年 4 月
12、 19 日星期二 第 2 讲章 目 第四单元 面向对象编程节 目 4.3 最终类与抽象类4.4 接口教 学目 标1. 理解抽象类、抽象方法的概念2. 理解最终类、最终方法以及变量的概念2. 理解接口的概念 3. 掌握接口在 Java 中的实现教学方 法 讲授法 教 具 多媒体教学重点1. 抽象类以及最终类的概念2. 接口的实现教学难点1. 抽象类的理解2. 接口的实现教学主要内容1. 抽象类2. 抽象方法3. 最终类4. 接口的声明5. 接口的实现变更记载河北理工大学河北理工大学课 时 授 课 计 划 副 页 年 月 日教学过程及授课内容 附 注4.3 最终类与抽象类4.3.1 最终类与 fi
13、nal继承机制允许对现有的类进行扩充,但有些时候,需要把一个类的功能固定下来,不再允许定义它的子类,Java 语言称这样的类为最终类 (final class),例如基本数据类型的包装类(Byte、Double 等)都是最终类。把一个类定义为最终类,只要在声明时用保留字 final 修饰即可,例如:public final class MyFinalClass.如果把最终类声明为某个类的父类,编译程序将报告错误。程序员也可以把一个(普通)类的某些成员方法声明为最终方法,这使得该方法不可以被后代类重定义,例如:public class MyClasspublic final void myFin
14、alMethod().子类中可定义与父类中常量(即用 final 修饰的成员数据) 同名的成员数据,因为实质上,成员数据的重定义不具有成员方法重定义的功能,它只是用来屏蔽父类的成员数据。4.3.2 抽象类与 abstract最终类是类层次结构的叶子节点,它们不能再被继承和扩充。Java 语言还有一种特殊的类,它们只能被继承和扩充,而不能用于创建自己的对象实例,这种类称为抽象类(abstractclass)。抽象类用于建模现实世界中一些没有具体对象的纯粹抽象的概念。例如, “鸟”可以认为是一个纯粹抽象的概念,它本身没有任何具体的对象实例,任何具体的鸟儿都是由“鸟”经过特殊化形成的某个具河北理工大
15、学课 时 授 课 计 划 副 页 年 月 日教学过程及授课内容 附 注体的种类的对象,也就是说, “鸟”是具体的鸟儿经过抽象形成的一个概念。1抽象类Java 语言在声明一个类时使用保留字 abstract 修饰使得它成为抽象类,例如:public abstract class MyAbstractClass.使用抽象类创建对象实例,编译器会报告错误,例如下述语句不能通过编译:MyAbstractClass obj=new Math(); /编译错误2抽象方法Java 语言也可以定义某些成员方法为抽象方法,例如:public abstract class MyAbstractClasspublic abstract void myAbstractMethod(); /没有方法体.4.4 接 口4.4.1 引例“郭敬问题”郭敬是一名高校教师,他正读在职研究生,请用 Java 语言描述像郭敬同样情况的人。1问题剖析读在职研究生的教师既可作为学