JAVA实验报告(10个小程序)

更新时间:2024-03-27 05:31:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

JAVA实验报告二

实验二

源程序:

第一个实验要求:

定义一个表示学生的student类,包括的域有学号、姓名、性别年龄,包括的方法有获得学号、姓名、性别、年龄及修改年龄。编写Java程序创建student类的对象及测试其方法的功能. 程序:

public class Test {

public static void main(String[] args) {

Student stu = new Student(\, \, \, 20);

System.out.println(stu.getId()); System.out.println(stu.getName()); System.out.println(stu.getSex()); System.out.println(stu.getAge()); stu.setAge(21);

System.out.println(stu.getAge()); } }

class Student {

private String id; private String name; private String sex; private int age;

public Student(String i, String n, String s, int a){ id = i; name = n; sex = s; age = a; }

public String getId(){ return id; }

public String getName(){ return name;

}

public String getSex(){ return sex; }

public int getAge(){ return age; }

public void setAge(int a){ age = a; } }

运行结果: 080603 XIAOYU female 20 21

第二个:

为第1题的student类定义构造函数初始化所有的域,

增加一个方法public String printInfo()把student类对象的所有域信息组合形成一个字符串,并在主类中创建学生对象及测试各方法的功能. 程序:

public class Test {

public static void main(String[] args) {

Student stu = new Student(\, “XIAOYU\, \, 20);

System.out.println(stu.printInfo()); stu.setAge(21);

System.out.println(stu.printInfo()); } }

class Student {

private String id; private String name;

}

private String sex; private int age;

public Student(String i, String n, String s, int a){ id = i; name = n; sex = s; age = a; }

public String getId(){ return id; }

public String getName(){ return name; }

public String getSex(){ return sex; }

public int getAge(){ return age; }

public void setAge(int a){ age = a; }

public String printInfo(){

return \ + id + \ + \ + name + \ + \ + sex + \ +\ + age; }

运行结果:

id = 080603,name = XIAOYU,sex = female,age = 20 id = 080603,name = XIAOYU,sex = female,age = 21

第三个:

设计一个Point类,该类包含两个int型成员变量:x、y,一个color型成员变量mycolor, 请给出此类的构造方法,分别是一个不带参数的,一个带两个

参数的,一个带三个参数的构造方法。 用下面的main方法测试:

public static void main(String[] args) {

Point A=new Point();

Point B=new Point(50,60);

Point C=new Point(100,200,Color.red);

System.out.println(“B:(”+B.getX()+”,”+B.getY()+”)”+”color: “+B.getColor());

A.setX(100);

A.setY(200);

A.setColor(Color.red);

System.out.println(“A==B?”+A.equals(B)); }

第四个:

设计一个Point类,该类包含两个int型成员变量:x、y,一个color型成员变量mycolor, 请给出此类的构造方法,分别是一个不带参数的,一个带两个参数的,一个带三个参数的构造方法。 用下面的main方法测试:

public static void main(String[] args) {

Point A=new Point();

Point B=new Point(50,60);

Point C=new Point(100,200,Color.red);

System.out.println(“B:(”+B.getX()+”,”+B.getY()+”)”+”color:

“+B.getColor());

A.setX(100);

A.setY(200);

A.setColor(Color.red);

System.out.println(“A==B?”+A.equals(B));

} */

import java.awt.Color;

public class Test {

public static void main(String[] args)

{

Point A=new Point();

Point B=new Point(50,60);

Point C=new Point(100,200,Color.red);

System.out.println(\+ B.getX() + \+B.getY() + \+ \

A.setX(100);

A.setY(200);

A.setColor(Color.red);

System.out.println(\

A.equals(B));//(”A==B?“+A.equals(B));

} }

class Point{

private int x, y; Color mycolor;

public Point(){ x = 0; y = 0; }

public Point(int xx, int yy){ x = xx; y = yy; }

public Point(int xx, int yy, Color color){ x = xx; y = yy;

mycolor = color; }

public void setX(int xx){ x = xx; }

public void setY(int yy){ y = yy; }

public void setColor(Color color){ mycolor = color; }

public int getX(){ return x; }

public int getY(){ return y; }

public Color getColor(){ return mycolor; }

public boolean equals(Object obj){//重写Object类的equals()方法

if(obj == null) return false;

else {

if(obj instanceof Point){ Point p = (Point)obj;

if(p.x == x && p.y == y && p.mycolor.equals(mycolor)) return true; } }

return false; } }

运行结果:

B:(50,60)color:null A==Bfalse

第五个:

设计一Calculator类,此类可以简单计算加减乘除运算。

(提示:用类的方法进行设计,传给参数即可得到结果) 程序:

public class Test { private float x, y;

public static void main(String[] args) { Test test = new Test();

test.setX(0.0f); test.setY(7.0f);

System.out.print(test.getX() + \ + test.getY() + \); System.out.println(Calculator.jia(test.getX(), test.getY()));

System.out.print(test.getX() + \ + test.getY() + \); System.out.println(Calculator.jian(test.getX(), test.getY()));

System.out.print(test.getX() + \ + test.getY() + \); System.out.println(Calculator.cheng(test.getX(), test.getY()));

System.out.print(test.getX() + \ + test.getY() + \); System.out.println(Calculator.chu(test.getX(), test.getY()));

test.setX(6.0f);

test.setY(0.0f);

System.out.print(test.getX() + \ + test.getY() + \); System.out.println(Calculator.chu(test.getX(), test.getY())); }

public void setX(float xx){ x = xx; }

public void setY(float yy){ y = yy; }

public float getX(){ return x; }

public float getY(){ return y; } }

class Calculator{

public static float jia(float a, float b){ return a + b; }

public static float jian(float a, float b){ return a - b; }

public static float cheng(float a, float b){//乘 return a * b; }

public static float chu(float a, float b){//除 return (float)a / b; } }

运行结果: 0.0+7.0=7.0 0.0-7.0=-7.0 0.0*7.0=0.0 0.0/7.0=0.0

6.0/0.0=Infinity

实验心得:

在本次的实验中,我们往往会遇到这样那样的一些小问题,在做这次实验之前我以为我对JAVA已有所了解,但在刚开始就遇到这样那样的小问题,比如说,我对构造函数还不是很清楚,有些地方尤其是概念那一部分我经常会混淆,但经过大家的帮忙,我最终还算是小有领悟,编程是一个的长时间练习的东西,我们只有在经常地练习中才能掌握它。要想学好JAVA就要勤动手。

本文来源:https://www.bwwdw.com/article/ra9r.html

Top