1421380许倩然实验报告2

上传人:第*** 文档编号:34214213 上传时间:2018-02-22 格式:DOC 页数:6 大小:340.50KB
返回 下载 相关 举报
1421380许倩然实验报告2_第1页
第1页 / 共6页
1421380许倩然实验报告2_第2页
第2页 / 共6页
1421380许倩然实验报告2_第3页
第3页 / 共6页
1421380许倩然实验报告2_第4页
第4页 / 共6页
1421380许倩然实验报告2_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《1421380许倩然实验报告2》由会员分享,可在线阅读,更多相关《1421380许倩然实验报告2(6页珍藏版)》请在金锄头文库上搜索。

1、上海建桥学院实验报告课程名称: 面向对象程序设计 实验类型: 设计型 实验项目名称: 包的设计和使用 类的封装、继承、多态 实验地点: 326 实验日期: 2015 年 10 月 30 日姓名: 许倩然 学号: 1421380 班级: 软工 B14-2 成绩: 一、实验目的及要求1掌握包的创建。2掌握访问控制符的使用3. 掌握继承,以及继承在程序中的具体应用。4. 掌握多态的分类,以及多态在程序中的具体应用。二、实验环境及要求jdk1.5 以上的开发环境,可使用任何编辑器。三、实验内容及步骤实验一:1.创建一个正方形类 Square,正方形的边长的访问权限为 private,将其生成在myap

2、p.square 包中,设计构造方法。2.创建一个圆类 Circle,圆的半径的访问权限为 private,将其生成在 myapp.circle包中,提供一个改变圆半径的成员方法。3.定义一个类,要求:(1)通过键盘流输入正方形的边长和圆的半径。(2)当输入的边长大于半径时,输出圆周长和正方形面积的差值(若输出的差值为负值,请将其转化为正值);当输入的边长小于半径时,输出圆面积和正方形周长的差值。差值通过 DOS 控制台输出(若输出的差值为负值,请将其转化为正值)。源代码(排版工整):package myapp.square;public class Square private double

3、 length=0;public Square()public Square(double l)length=l;public double getLength()return length;public double getSC()return length*4;public double getSA()return length*length;package myapp.circle;public class Circle private double radius=0;public void setRadius(double r)radius=r;public double getRad

4、ius()return radius;public double getCC()return 2*Math.PI*radius;public double getCA()return Math.PI*radius*radius;import myapp.circle.Circle;import myapp.square.Square;import java.util.Scanner;public class Test public static void main(String args)System.out.println(输入正方形的边长和圆的半径:);Scanner sc=new Sca

5、nner(System.in);Square s=new Square(sc.nextDouble();Circle c=new Circle();c.setRadius(sc.nextDouble();sc.close();if(s.getLength()c.getRadius()System.out.println(Math.abs(c.getCC()-s.getSA();elseSystem.out.println(Math.abs(c.getCA()-s.getSC();结果(截图):边长半径: 边长半径:实验二:1.定义一个人类(Person) ,声明在包 app.father,它包

6、含成员变量:private String name;private char sex;构造方法:通过有参重载的构造方法初始化成员变量;成员方法:public void print() /控制台输出此类姓名,性别详细信息2.定义学生类(Student)继承 Person 类,声明在包 app.son,子类的成员变量包括成员变量 :学号(ID)构造方法:带参数的构造方法,初始化所有拥有的成员变量成员方法:public void print()/控制台输出此类详细信息3.定义测试类,生成在包 app.test(仅包含 main 方法)要求:通过运行时多态实现调用 Student 对象的 print

7、方法(Person stu=new Student(实参); stu.print()。源代码(排版工整):package app.father;public class Person private String name;private char sex;public Person()public Person(String n,char s)name=n; sex=s;public void print()System.out.println(姓名:+ name+ 性别:+sex);public String getName()return name;public char getSex(

8、)return sex;package app.son;import app.father.Person;public class Student extends Person private String ID;public Student(String n,char sex,String id)super(n,sex);ID=id;public void print()System.out.println(姓名:+getName()+ 性别:+getSex()+ ID:+ID);package app.test;import app.father.Person;import app.son

9、.Student;public class Test public static void main(String args)Person stu=new Student(小桀 ,男,74576);stu.print();结果(截图):四、分析与讨论(实验过程中发现的重点与难点)实验一中,包的封装必须在程序的第一行;用 private 修饰成员变量无法直接被其他类使用,需要通过该类里设计的相关方法进行修改或获取数值;使用Scanner 需要注意使用完后用变量名.close() 关闭或者释放内存,同时也要注意将输入的字符串转换成题目所需要的类型。实验二中,继承时,子类构造方法要构造父类的成员变量时,用 super(参数)可以进行有参构造,没有则默认父类无参构造;继承也要注意拥有未继承的成员变量;父类和子类有同名的成员方法时,方法覆盖;字符串和单个字符的引用不同,分别用 ” 和 。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号