实验3 面向对象编程练习 (2).doc
实验 3 面向对象编程练习 一、实验目的 1. 掌握如何定义类以及类的成员变量、类的方法。2. 掌握对象的创建、对象属性的引用和方法的调用。3. 理解成员的访问权限。4. 掌握如何定义和使用构造方法。5. 掌握this的使用。6. 掌握关键字static、final的使用方法。二、实验要求 1.编写一个含有简单类定义的Java应用程序。2.编写一个含有多个构造方法的类的Java应用程序。三、实验内容 5查看打印输出结果比较形参和成员变量x,yclass Point int x,y; Point(int a,int b) x=a; y=b; Point()void output() System.out.println(x); System.out.println(y);void output(int x,int y) x=x; y=y;public static void main (String args) Point pt; pt=new Point(3,3); pt.output(5,5); pt.output();6this的用法class Point int x,y; Point(int a,int b) x=a; y=b; Point() this(1,1);void output() System.out.println(x); System.out.println(y);void output(int x,int y) this.x=x; this.y=y;public static void main (String args) Point pt; pt=new Point(); pt.output(); 可以简化构造函数的调用7. 打印输出, 体会过程class Point int x,y; Point(int a,int b) x=a; y=b; Point() this(1,1);void output() System.out.println(x); System.out.println(y);void output(int x,int y) this.x=x; this.y=y;public static void main (String args) Point pt; pt=new Point(); Point pt2=new Point(); pt.x=6; pt2.x=7; System.out.println(pt.x); System.out.println(pt2.x);8静态方法编译以下语句,找出错误;并回答为什么?class Point int x,y; Point(int a,int b) x=a; y=b; Point() this(1,1);改错:static void output() System.out.println("output() called"); /System.out.println(x); /System.out.println(y);void output(int x,int y) this.x=x; this.y=y;public static void main (String args) Point.output(); 因为无法从静态上下文中引用非静态。9实例方法和静态方法以上语句编译是否有错,并回答为什么?仔细结合ppt 关键字static体会里面的内容有错,没有给z初始化。class Point int x,y; Point(int a,int b) x=a; y=b; Point() this(1,1);static void output() System.out.println("output() called"); /System.out.println(x); /System.out.println(y);void output(int x,int y,int z) :改错 output(); z=5; this.x=x; this.y=y;public static void main (String args) Point pt=new Point(); pt.output();10、简单类1. 定义一个学生类,它包括几个属性:学号(ID)、姓名(Name)、年龄(Age)、性别(Sex)。在main方法中创建一个学生类的对象,然后给这个对象赋初值,最后输出该学生的属性。2. 在记事本编辑如下源程序:class Student public int ID;public String StuName;public int Age;public boolean Sex;class Ex4 public static void main(String args) Student stu =new Student();stu.ID =410808;stu.StuName ="王杰"stu.Age =21;stu.Sex =true;System.out.println("学号"+"t"+"姓名"+"t"+"年龄"+"t"+"性别");System.out.println(stu.ID+"t"+stu.StuName+"t"+stu.Age+"t"+(stu.Sex?"男":"女");