java类和对象实验.pdf
《java类和对象实验.pdf》由会员分享,可在线阅读,更多相关《java类和对象实验.pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验八:类和对象实验目的:1掌握类的定义,熟悉属性、构造函数、方法的作用,掌握用类作为类型声明变量和方法返回值;2理解类和对象的区别,掌握构造函数的使用,熟悉通过对象名引用实例的方法和属性,理解static 的作用和使用规则;3理解访问控制修饰符的作用;实验数据记录及分析(或程序及运行结果)1.写出运行结果public class Reference public static void main(String args)double d=12.3;Decrement dec=new Decrement();dec.decrement(d);System.out.println(d);clas
2、s Decrement public void decrement(double me)/参数传递me=me-1.0;预行结果是:12.3 分析原因:me 是引用类型的参数,参数值不改变2.给出下面的类,找出后面的5 个声明中,哪些是重载后的构造函数public class ConstOver public ConstOver(int x,int y,int z)A.ConstOver()B.Protected int ConstOver()C.Private ConstOver(int z,int y,byte x)D.Public Object ConstOver(int x,int y,
3、int z)E.Public void ConstOver(byte x,byte y,byte z)A、C 是重载后的构造函数3.解释下面的程序运行的结果输出为什么是null public class My String s;public void My()s=”Constructor”;public void Go()System.out.println(s);public static void main(String args)My m=new My();m.go();因为程序中s=”Constructor”;是在方法My 中进行的,Main 方法中并没有调用方法 My,所以 s 的值
4、是 null 4.运行下面的程序,写出运行结果,写出类成员属性和实例成员属性的区别。class MyParts static/初始化先于构造方法的执行x=10;public static int x=7;public int y=3;public class JLab1101 public static void main(String args)MyParts a=new MyParts();MyParts b=new MyParts();System.out.println(输出一:a.x=+a.x);System.out.println(输出一:b.x=+b.x);a.y=5;b.y=6
5、;a.x=1;b.x=2;System.out.println(输出二:a.y=+a.y);System.out.println(输出二:b.y=+b.y);System.out.println(输出三:a.x=+a.x);System.out.println(输出三:b.x=+b.x);1)输出一的结果是什么,它的值的来源是什么,反映了什么特性?输出一:a.x=7 输出一:b.x=7 来源于 public static int x=7 在 static中定义的属性,只能通过静态方法调用2)输出二的结果是什么,它的值的来源是什么,反映了什么特性?输出二:a.y=5 输出二:b.y=6 来源于
6、a.y=5;b.y=6;实例成员的属性,可以分别对他进行赋值。3)输出三的结果是什么,它的值的来源是什么,反映了什么特性?输出三:a.x=2 输出三:b.x=2 值来源于b.x=2;类成员属性是全局变量,后面的赋值会覆盖前一个。5.写出程序运行结果class StaticDemo static int x;int y;static x=10;public static int getX()return x;public static void setX(int newX)x=newX;public int getY()return y;public void setY(int newY)y=n
7、ewY;public static void main(String args)System.out.println(静态变量 x=+StaticDemo.getX();/System.out.println(实例变量 y=+StaticDemo.getY();/非法,编译时将出错StaticDemo a=new StaticDemo();StaticDemo b=new StaticDemo();a.setX(1);a.setY(2);b.setX(3);b.setY(4);System.out.println(静态变量 a.x=+a.getX();System.out.println(实例
8、变量 a.y=+a.getY();System.out.println(静态变量 b.x=+b.getX();System.out.println(实例变量 b.y=+b.getY();运行结果:静态变量 x=10 静态变量 a.x=3 实例变量 a.y=2 静态变量 b.x=3 实例变量 b.y=4 6.编写一个圆形类Circle,定义其成员变量(半径):double radius i.该类含有两个构造函数:public Circle(double r)初始化半径为r public Circle()初始化半径为1 ii.该类含有下列方法:public double area()返回圆形的面积
9、public double circumference()返回圆形的周长public String toString()返回该类对象的文字描述,如:Circle 半径是 2.5 public void setRadius(double r)设置半径为r public double getRadius()返回半径的值。iii.编写一个含有主方法的类JLab0301,完成下列验证:1在主方法中用创建一个半径为10的Circle 类的实例 myCircle1,输出它的周长和面积;程序:Circle c1=new Circle();c1.setRadius(10);System.out.println
10、(圆的面积是:+c1.area();System.out.println(圆的周长是:+c1.circumference();运行结果:圆的面积是:314.0 圆的周长是:62.8000000000000042 在主方法中用创建一个不指定半径的Circle 类的实例myCircle2,输出它的周长和面积,然后利用修改半径的方法设置它的半径为5,再次输出它的周长和面积。程序:Circle c2=new Circle();System.out.println(圆的面积是:+c2.area();System.out.println(圆的周长是:+c2.circumference();c2.setRa
11、dius(5);System.out.println(圆的面积是:+c2.area();System.out.println(圆的周长是:+c2.circumference();运行结果:圆的面积是:3.14 圆的周长是:6.28 圆的面积是:78.5 圆的周长是:31.4000000000000027.一副牌 Deck 有 52 张扑克 Card 组成(不含王牌),每张牌有自己的牌型suit 和点数 rank,完成下面的要求。1)定义一个类Card,表示每张扑克牌public class Card char suit;String rank;public Card(char suit,Str
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 对象 实验
限制150内