《实验5 类和对象1答案》由会员分享,可在线阅读,更多相关《实验5 类和对象1答案(5页珍藏版)》请在金锄头文库上搜索。
1、实验 5:Java 类与对象一、实验目的(1)使用类来封装对象的属性和功能; (2)掌握 Java 类的定义。(3)java 对象的使用二、实验任务(1)按要求编写一个 Java 程序。(2)按要求完善一个 Java 程序,编译、运行这个程序,并写出运行结果。三、实验内容1编写一个 Java 程序片断,以定义一个表示学生的类 Student。这个类的属性有“学号” 、 “班号” 、 “姓名” 、 “性别” 、 “年龄” ,方法有“获得学号” 、 “获得班号” 、 “获得性别” 、 “获得姓名” 、 “获得年龄” 、 “获得年龄” 。2为类 Student 增加一个方法 public Strin
2、g toString( ),该方法把 Student 类的对象的所有属性信息组合成一个字符串以便输出显示。编写一个 Java Application 程序,创建 Student 类的对象,并验证新增加的功能。class Studentlong studentID;int classID;String name;String sex;int age;public Student(long studentID,int classID,String name,String sex,int age)this.studentID=studentID;this.classID=classID;this.n
3、ame=name;this.sex=sex;this.age=age;public long getStudentID()return studentID;public int getClassID()return classID;public String getName()return name;public String getSex()return sex;public int getAge()return age;public String toString()return 学号:+getStudentID()+n 班号:+getClassID()+n 姓名:+getName()+n
4、 性别:+getSex()+n 年龄:+getAge();public class StudentDemopublic static void main(String args)Student s1=new Student(90221,2,Tom,male,20);System.out.println(s1.toString();运行结果:学号:90221班号:2姓名:Tom性别:male年龄:202程序填空,程序中包含以下内容:一个学生类(Student) ,包含:属性:学号 s_No,姓名 s_Name,性别 s_Sex,年龄 s_Age。方法:构造方法,显示学号方法 showNo(),显
5、示姓名方法 showName(),显示性别方法 showSex(),显示年龄方法 showAge(),修改年龄方法 modifyAge()。主类(X2),包含:主方法 main(),在其中创建两个学生对象 s1 和 s2 并初始化,第一个对象的属性为(101, 张三, 男 ,18),第二个对象的属性值为(102,李四,女,16),然后分别显示这两个学生的学号、姓名、性别、年龄,然后修改 s1 的年龄并显示修改后的结果。【编程分析】按照要求首先编写 Student 类,其中的属性和方法根据实际情况选择相应的类型和权限修饰符,要通过方法来修改年龄,因此 s_Age 属性应该为 private 类型
6、,否则可以直接在主类中进行修改,就没有必要使用方法了。【参考答案】定义的 Student 类:class Studentprivate int s_No;private String s_Name;private String s_Sex;private int s_Age;Student(int no, String name, String sex, int age)s_No = no;【代码 1】:s_Name = name;s_Sex = sex;s_Age = age;void showNo()【代码 2】:System.out.println( 学号:+s_No); /输出学生的学
7、号void showName()System.out.println(姓名: + s_Name);void showSex()System.out.println(性别: + s_Sex);void showAge()System.out.println(年龄: + s_Age);void modifyAge(int newAge)【代码 3】:s_Age = newAge; /更改学生的年龄以下为主类:public class X2 public static void main(String args) Student s1 = new Student(101,张三,男,18);Stude
8、nt s2 = new Student(102,李四,女,16); /实例化对象s2,并同时初始化System.out.println(第 1 个学生的信息为:);【代码 4】:s1.showNo(); /调用成员方法显示第一个对象的学号 s1.showName();【代码 5】:s1.showSex(); /调用成员方法显示第一个对象的性别s1.showAge();System.out.println(第 2 个学生的信息为:);s2.showNo();【代码 6】:s2.showName();/调用成员方法显示第二个对象的姓名s2.showSex();s2.showAge();System
9、.out.println(修改第 1 个学生的年龄:);s1.modifyAge(24);System.out.println(第 1 个学生的年龄修改为:);【代码 7】:s1.showAge();/ 调用成员方法显示第一个对象的年龄【运行结果】:3编写一个程序,程序中包含以下内容:一个圆类(Circle) ,包含:属性:圆半径 radius;常量:PI。方法:构造方法;求面积方法 area();求周长方法: perimeter()。主类(X4_3_1) ,包含:主方法 main(),在主方法中创建圆类的对象 c1 和 c2 并初始化,c1 的半径为 100,c1 的半径为 200,然后分别
10、显示两个圆的面积和周长。【编程分析】按照要求创建 Circle 类,其中的半径可以定义为 int 类型,PI 定义为 final double 类型,求面积和周长的方法都应定义为 double 类型,在构造方法中对 radius 进行初始化。【参考答案】public class X3 public static void main(String args) Circle c1 = new Circle(100); Circle c2 = new Circle(200);System.out.println(c1.area() = +c1.area()+tc1.perimenter() = +c
11、1.perimeter();System.out.println(c2.area() = +c2.area()+tc2.perimenter() = +c2.perimeter();class Circleint radius;final double PI=3.14;Circle(int r)radius = r;double area()return PI*radius*radius;double perimeter()return 2*PI*radius;【运行结果】c1.area() = 31400.0 c1.perimenter() = 628.0c2.area() = 125600.0 c2.perimenter() = 1256.0