1. (1)定义一个类MyRectangle代表矩形:

① 为矩形定义私有属性:length(长度)和width(宽度)

② 为矩形定义公有方法:若干构造方法、getLength方法(获得矩形的长度)、getWidth方法(获得矩形的宽度)、setLength方法(设置矩形的长度)、setWidth方法(设置矩形的宽度)、getArea方法(求矩形的面积)和toString方法(显示矩形的信息)。

(2)编写测试程序的主类Test1。在main方法中,使用不同的构造方法创建两个MyRectangle对象,数据自拟,并输出显示这两个对象的有关信息。

class Rectangle {double width=1;double height=1;public Rectangle(){}public Rectangle(double width,double height){}public void getArea(){double a=height;System.out.print(" 面积:"+a);}public void getPerimeter(){double b=2*(width+height);System.out.println(" 周长:"+b);}
} class RectangleDemo {public static void main(String[] args) {Rectangle r1 = new Rectangle();Rectangle r2 = new Rectangle();r1.width =30;r1.height=50;r2.width=3.3;r2.height=40.2;System.out.print("r1的宽="+r1.width);System.out.print(" r1的高="+r1.height);r1.getArea();r1.getPerimeter();System.out.print("r2的宽="+r2.width);System.out.print(" r2的高="+r2.height);r2.getArea();r2.getPerimeter();}
}

2. 学生类的创建和使用

①创建一个学生Student类,成员变量包括:学号、班号、姓名、性别、年龄等,且都是private类型。

②声明一个构造方法,初始化所有成员变量。

③分别声明获得各属性的public类型的成员方法,方法名要求以get开头。

④分别声明修改各属性的public类型的成员方法,方法名要求以set开头。

⑤声明一个public类型的toString()方法,把该类中的所有变量信息组合成一个字符串。

⑥申明统计创建Student对象的个数的私有变量count和得到Student对象的个数的public 方法。

⑦将类Student放在包student中。

⑧在子包student外,创建测试类Student的主类。

在主类中:创建2个Student对象,输出对象的所有变量信息;修改对象的姓名和年龄,输出修改后的姓名和年龄;比较两个Student对象的年龄的大小,输出年龄较大的Student对象。

class Main {public static void main(String args[]) {Student std1, std2;std1 = new Student("202103","202101","张三","男",25);std2 = new Student("202103","202101","李四","男",20);System.out.println(std1.ToString());System.out.println(std2.ToString());System.out.println("对象个数:" + std2.get_count());std2.set_Age(24);std2.set_Name("202102");String sp;sp = std1.get_Age()>std2.get_Age()?std1.ToString():std2.ToString();System.out.println(sp);}
}class Student {private String StuNub,ClassNub,Name,Sex;private int Age;public static int count = 0;public Student(String StuNub,String ClassNub,String Name,String Sex,int Age){this.StuNub = StuNub;this.ClassNub = ClassNub;this.Name = Name;this.Sex = Sex;this.Age = Age;count++;}public String get_StuNub() {return StuNub;}public String get_ClassNub() {return ClassNub;}public String get_Name() {return Name;}public String get_Sex() {return Sex;}public int get_Age() {return Age;}public void set_StuNub(String StuNub) {this.StuNub  = StuNub;}public void set_ClassNub(String ClassNub) {this.ClassNub  = ClassNub;}public void set_Name(String Name) {this.Name  = Name;}public void set_Sex(String Sex) {this.Sex  = Sex;}public void set_Age(int Age) {this.Age  = Age;}public static int get_count() {return count;}public String ToString() {String s = "学号:"+StuNub +",班级:" + ClassNub + ",姓名:" + Name + ",性别:" + Sex + ",年龄:" + Age ;return s;

3. 在上题已定义的学生类Student的基础上,以Student类为父类,为学生类派生出一个子类为大学生类(CollegeStudent)。

CollegeStudent 类在学生类上增加一个专业(profession)数据属性;方法上增加获得专业和设置专业两个方法。并对超类中的toString( )方法进行重写,使得CollegeStudent类中的toString( )方法除了显示学生类的信息外,还要显示它的专业属性。

编写测试程序的主类。在主类中创建一个Student对象和CollegeStudent对象,并显示或修改这两个对象的属性值。

class Student {protected String StuNub,ClassNub,Name,Sex;protected int Age;public static int count = 0;public Student(String StuNub,String ClassNub,String Name,String Sex,int Age){this.StuNub = StuNub;this.ClassNub = ClassNub;this.Name = Name;this.Sex = Sex;this.Age = Age;count++;}public String get_StuNub() {return StuNub;}public String get_ClassNub() {return ClassNub;}public String get_Name() {return Name;}public String get_Sex() {return Sex;}public int get_Age() {return Age;}public void set_StuNub(String StuNub) {this.StuNub  = StuNub;}public void set_ClassNub(String ClassNub) {this.ClassNub  = ClassNub;}public void set_Name(String Name) {this.Name  = Name;}public void set_Sex(String Sex) {this.Sex  = Sex;}public void set_Age(int Age) {this.Age  = Age;}public static int get_count() {return count;}public String toString() {String s = "学号:"+StuNub +",班级:" + ClassNub + ",姓名:" + Name + ",性别:" + Sex + ",年龄:" + Age ;return s;}
}class Main {public static void main(String args[]) {Student std1 = new Student("01", "01", "张三", "男", 25);CollegeStudent std2 = new CollegeStudent("02", "02", "李四", "男", 24, "计科");System.out.println("Student对象:\n"+std1.toString());System.out.println("CollegeStudent对象:\n"+std2.toString());std1.set_Age(22);std2.setProfession("计算机科学与技术");System.out.println("信息修改以后为:");System.out.println("Student对象:\n"+std1.toString());System.out.println("CollegeStudent对象:\n"+std2.toString());}
}class CollegeStudent extends Student{private String profession;public CollegeStudent(String StuNub, String ClassNub, String Name, String Sex, int Age, String profession) {super(StuNub, ClassNub, Name, Sex, Age);this.profession = profession;}public void setProfession(String profession) {this.profession = profession;}public String getProfession() {return this.profession;}public String toString () {return "学号:"+StuNub +",班级:" + ClassNub + ",姓名:" + Name + ",性别:" + Sex + ",年龄:" + Age +",专业:" + profession;}

JAVA实验二(南邮)相关推荐

  1. 南邮java实验报告,南邮微机原理实验报告精选.doc

    南邮微机原理实验报告精选 <微型计算机原理与接口技术> 上机实验 学 院: 电子科学与工程 专 业: 电磁场与无线技术 姓 名: 陈秀慧 课 程 号: B0300062S 学 号: 任课老 ...

  2. 南邮java实验_南邮JAVA程序设计实验4 线程程序设计(指针式时钟)

    南邮JAVA程序设计实验4  线程程序设计(指针式时钟) 实验目的: 本实验旨在通过实验,培养学生将JAVA 线程的相关知识点(包括线程调度,线程同步等)有机结合并加以综合应用,在实验中设计多线程程序 ...

  3. 20175212童皓桢 Java实验二-面向对象程序设计实验报告

    20175212童皓桢 Java实验二-面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设 ...

  4. 云南大学软件学院java实验九_云南大学软件学院Java实验二

    云南大学软件学院 实验报告 姓名:学号:班级:日期:成绩: JAVA实验二 一.实验目的: 进一步熟悉JAVA编译环境,编译三个简单的JAVA程序,熟悉JAVA语言. 二.实验要求: 1. Write ...

  5. 计算机绘图图框实验报告,南邮工图实验报告.pdf

    南邮工图实验报告 实验报告 课程名称: 制图基础及计算机绘图 学生姓名: 胡正飞 班级学号: 指导教师: 胡正飞 指导单位: 理 学 院 日期: 年 月 日至 年 月 日 <制图 基 础 与 计 ...

  6. java实验二_Java实验2

    (1)了解算术运算符.关系和条件运算符.逻辑运算符.位运算符的含义和使用方法. (2)了解表达式的含义和使用方法. 一.实验目的和要求: 实验目的 (1)熟练掌握各种运算符的功能及使用要求. (2)理 ...

  7. 南邮matlab实验报告,南邮matlab实验报告.doc

    南邮matlab实验报告 软件课程设计 实验报告 模块名称:__MATLAB_____________ 专业班级:__ __________ 姓 名:__ _____________ 学 号:__ _ ...

  8. JAVA实验二 面向对象程序设计

    一.实验目的 通过编程和上机实验,掌握类和构造方法的定义及创建对象的方法,掌握类的封装及继承原则,正确使用重载和覆盖等多态概念设计可复用方法,熟悉包.接口的使用方法,掌握面向对象的程序设计方法. 二. ...

  9. java实验二答案天津商业大学,天津商业大学java实验报告

    天津商业大学java实验报告答案及运行结果 this.start =start; } public Point getEnd(){ return end; } public void setEnd(P ...

最新文章

  1. 视觉+Transformer最新论文出炉,华为联合北大、悉尼大学发表
  2. ftp服务器不能双向传输文件,实现文件双向传输搭建FTP服务器
  3. [USACO1.2]挤牛奶Milking Cows
  4. AtCoder AGC039F Min Product Sum (容斥原理、组合计数、DP)
  5. OpenCV自定义CN跟踪器
  6. 【专升本计算机】甘肃省普通高等学校专升本考试计算机全真模拟试卷(一)
  7. mysql临时表的的理解,如何理解存储过程中已存在的mysql临时表?
  8. 【JavaScript】将浮点数与整数分开
  9. Python中利用parse_args与namespace来简化函数传参
  10. Android 高斯模糊demo
  11. 最详细的Spring核心IOC的源码分析
  12. tp5 分页php不能foreach,tp5框架无刷新分页实现方法分析
  13. 根据序列选择自回归模型(AR、ARMA、VAR、VMA、VECH)
  14. 【Oracle】数据清洗案例
  15. matlab相对误差均值计算公式,相对误差怎么算_平均相对误差怎么计算公式
  16. 计算机内图片怎么自定义排序,win10系统设置图片文件自定义排序的图文教程
  17. php随机发牌游戏,JavaScript_javascript实例--教你实现扑克牌洗牌功能,我们一般都会按照顺序把随机 - phpStudy...
  18. 谷歌SEO考虑富媒体文件
  19. 【EndNote】使用教程
  20. 使用 Wowza IDE 开发第一个 Wowza 服务器扩展应用 -- 监控直播频道

热门文章

  1. 热血三国 mysql_热血三国单机版
  2. 程序员的数学基础课之二进制
  3. MATLAB信号处理——信号与系统的分析基础(5)
  4. 软件工程直招士官生_国家鼓励大学生直招士官入伍,主要有4方面考虑,一般人真不知道...
  5. 前端vue/h5下载Springboot后端静态资源(txt/word/excel)
  6. shapelet论文相关
  7. 如何一次性选中WORD文档中的所有表格
  8. 药企产品年度质量回顾的分析工具解读---控制图的判异准则
  9. 树莓派4b和3b+功耗_从入手树莓派开始
  10. 实用型 | 教你电脑如何新增磁盘