实验2 类与封装性
文章目录
- 实验2 类与封装性
- (一)实验目的
- (二)实验内容和步骤
- (1)建立学生类和测试类。学生类中有成员变量:姓名,年龄;成员方法:学习,考试。测试类中实现创建学生类对象并赋值调用方法
- (2)使用封装特性,利用private关键字修饰成员变量配合getXXX(),setXXX(…)方法实现第一题中学生类设计和对象创建。
- (3)使用无参构造方法和有参构造方法共存的形式定义第一题中的Student类,实现两种为成员变量赋值的方式
- (4)读程序,写结果
(一)实验目的
(1)掌握定义类并创建对象;
(2)掌握封装和导包使用方法;
(二)实验内容和步骤
(1)建立学生类和测试类。学生类中有成员变量:姓名,年龄;成员方法:学习,考试。测试类中实现创建学生类对象并赋值调用方法
实验记录和问题:
①撰写的程序代码为:
//文件名:Student.java
public class Student
{String name;// 姓名int age;// 年龄// 学习private void study(){}// 考试private void exam(){}// 便于输出查看对象的属性值@Overridepublic String toString(){return "Student [name=" + name + ", age=" + age + "]";}// 测试方法public static void main(String[] args){Student stu = new Student();stu.name = "lisi";stu.age = 18;System.out.println(stu);}
}
②程序运行结果:
(2)使用封装特性,利用private关键字修饰成员变量配合getXXX(),setXXX(…)方法实现第一题中学生类设计和对象创建。
实验记录和问题:
①撰写的程序代码为:
//文件名:Student.java
public class Student
{private String name;// 姓名private int age;// 年龄// 学习private void study(){}// 考试private void exam(){}String getName(){return name;}void setName(String name){this.name = name;}int getAge(){return age;}void setAge(int age){this.age = age;}// 便于输出查看对象的属性值@Overridepublic String toString(){return "Student [name=" + name + ", age=" + age + "]";}// 测试方法public static void main(String[] args){Student stu = new Student();
// (1)
// stu.name = "lisi";
// stu.age = 18;// (2)stu.setName("WangWu");stu.setAge(81);System.out.println(stu);}
}
②程序运行结果:
(3)使用无参构造方法和有参构造方法共存的形式定义第一题中的Student类,实现两种为成员变量赋值的方式
实验记录和问题:
①撰写的程序代码为:
//文件名:Student.java
public class Student
{private String name;// 姓名private int age;// 年龄// 无参构造public Student(){super();}// 有参构造public Student(String name, int age){super();this.name = name;this.age = age;}// 学习private void study(){}// 考试private void exam(){}// 便于输出查看对象的属性值@Overridepublic String toString(){return "Student [name=" + name + ", age=" + age + "]";}// 测试方法public static void main(String[] args){
// (1)
// Student stu = new Student();
// stu.name = "lisi";
// stu.age = 18;
// System.out.println(stu);// (2)
// Student stu = new Student();
// stu.setName("WangWu");
// stu.setAge(81);
// System.out.println(stu);// (3)Student stu = new Student();System.out.println("无参构造:" + stu);stu = new Student("ZhaoLiu", 100);System.out.println("有参构造:" + stu);}
}
②程序运行结果:
(4)读程序,写结果
①程序
文件名:PersonDemo.java
//文件名:PersonDemo.java
class Person {//姓名String name;//年龄int age;//国籍//String country;static String country;public Person(){}public Person(String name,int age) {this.name = name;this.age = age;}public Person(String name,int age,String country) {this.name = name;this.age = age;this.country = country;}public void show() {System.out.println("姓名:"+name+",年龄:"+age+",国籍:"+country);}
}class PersonDemo {public static void main(String[] args) {//创建对象1Person p1 = new Person("邓丽君",16,"中国");p1.show();//创建对象2Person p2 = new Person("杨幂",22);p2.show();//创建对象3Person p3 = new Person("凤姐",20);p3.show();p3.country = "美国";p3.show();p1.show();p2.show();}
}
②运行结果