java实验报告实验1答案.docx

上传人:b****3 文档编号:24758320 上传时间:2023-06-01 格式:DOCX 页数:21 大小:484.25KB
下载 相关 举报
java实验报告实验1答案.docx_第1页
第1页 / 共21页
java实验报告实验1答案.docx_第2页
第2页 / 共21页
java实验报告实验1答案.docx_第3页
第3页 / 共21页
java实验报告实验1答案.docx_第4页
第4页 / 共21页
java实验报告实验1答案.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

java实验报告实验1答案.docx

《java实验报告实验1答案.docx》由会员分享,可在线阅读,更多相关《java实验报告实验1答案.docx(21页珍藏版)》请在冰豆网上搜索。

java实验报告实验1答案.docx

java实验报告实验1答案

实验一熟悉NetBeansIDE平台,开发环境及Java编程

实验目的:

1、我们使用的开发平台是NetBeansIDE,希望通过本次实验同学们能对NetBeansIDE的开发环境有一个清楚的了解并能熟练运用,对Java语法进行初步运用,对面向对象的编程有一个直观的认识和深入理解,对于Java的基础知识进行理解运用和巩固。

为以后的实验中能够进行开发程序打下基础。

2、通过编程和上机实验理解Java语言是如何体现面向对象编程基本思想,了解类的封装方法,以及如何创建类和对象,了解成员变量和成员方法的特性,掌握OOP方式进行程序设计的方法,了解类的继承性和多态性的作用。

实验内容:

●1.编写一个体现面向对象思想的程序。

●2.编写一个创建对象和使用对象的方法的程序。

●3.编写一个显示当前日期和时间的程序。

●4.编写不同成员变量修饰方法的程序。

●5.编写不同成员方法修饰方法的程序。

●6.编写体现类的继承性(成员变量、成员方法、成员变量隐藏)的程序。

●7.编写体现类的多态性(成员方法重载、构造方法重载)的程序。

实验步骤:

●双击桌面上的NetBeansIDE6.5.1快捷方式或在文件菜单中打开它。

图1-1

点击文件,创建新项目,创建一个项目名:

experiment1。

点击按钮下一步:

在项目名称处输入:

experiment1然后点击完成:

项目experiment1

在experiment1下实现

程序

 

样例1:

编写应用程序输出如下三角形。

    *

   ***

  *****

 *******

【参考程序】

publicclassStar

{

   publicstaticvoidmain(Stringa[])

  {

     System.out.println(" *");

   System.out.println("***");

   System.out.println("*****");

   System.out.println("*******");

  }

}

程序运行结果如图1-2所示。

【编程技巧】

(1)main方法是应用程序执行入口;

(2)如何在命令控制台输出字符串。

(3)输出杨辉三角的前10行;进一步用参数传递的方式输出,例如,shuchu(n)表示输出杨辉三角的前n行。

样例2:

编写Applet程序绘制一个红色三角形,三角形中央绘制兰色文字“三角形”。

【参考程序】

(1)Applet程序

importjava.awt.*;

importjava.applet.Applet;

publicclasstriangleextendsApplet

{

publicvoidpaint(Graphicsg)

{

   g.setColor(Color.red); //设置画笔颜色为红色

    g.drawLine(80,20,20,100);

    g.drawLine(20,100,140,100);

    g.drawLine(140,100,80,20);

   g.setColor(Color.blue); //设置画笔颜色为兰色

    g.drawString("三角形",65,80);

  }

}

【编程技巧】

(1)如何引入某个包的类;

(2)编写Applet程序要继承Applet类;

(3)paint方法会自动执行,用画笔对象可绘制图形。

(2)HTML文件

用appletviewer查看程序运行结果如图1-3所示。

样例3:

(创建并使用对象)

1.编写Applet程序

(1)程序功能

这个Applet程序要在页面上输出两个矩形,并伴有文字输出。

(2)LX3.java程序的源代码如下:

importjava.awt.*;

importjava.applet.Applet;

publicclassLX3extendsApplet

{

MyBoxb1=newMyBox();//创建对象b1

MyBoxb2=newMyBox(170,20,60,60);//创建对象b2

publicvoidpaint(Graphicsg)

{

b1.setPosition(20,20);

b1.setSize(60,60);

b1.draw(g);

g.drawString("矩形1的X位置:

"+b1.getX(),20,100);

g.drawString("矩形1的Y位置:

"+b1.getY(),20,120);

b2.draw(g);

g.drawString("矩形2的X位置:

"+b2.getX(),b2.getX(),b2.getY()+80);g.drawString("矩形2的Y位置:

"+b2.getY(),b2.getX(),b2.getY()+100);

}

}

classMyBox

{

privateintx,y,width,height;

MyBox()

{

x=0;

y=0;

width=0;

height=0;

}

MyBox(intxPos,intyPos,intw,inth)

{

x=xPos;

y=yPos;

width=w;

height=h;

}

publicvoidsetPosition(intxPos,intyPos)

{

x=xPos;

y=yPos;

}

publicvoidsetSize(intw,inth)

{

width=w;

height=h;

}

publicintgetX()

{

returnx;

}

publicintgetY()

{

returny;

}

publicvoiddraw(Graphicsg)

{

g.drawRect(x,y,width,height);

}

}

2.编写一个浏览Applet应用程序的页面文件LX3_2.HTML

3.将LX3_2.java源程序编译为LX3.class文件

4.使用浏览器或使用小程序查看器浏览LX3.HTML文件(即在命令提示符下输入:

appletviewerLX3.HTML),运行结果如图2.2所示。

图2.2

思考:

程序的结构。

类与对象的关系。

对象创建、使用、销毁的过程。

上机练习

✧     基本题

1)编写一个程序输出如下图案

*****************************

********

********

********

**************

**********

**********

**********

*******************

代码:

classprint

{

publicstaticvoidmain(String[]args)

{

System.out.println("*****************************");

System.out.println("********");

System.out.println("********");

System.out.println("********");

System.out.println("**************");

System.out.println("**********");

System.out.println("**********");

System.out.println("**********");

System.out.println("*******************");

}

}

结果如下图:

2)编制applet程序,绘制一个长120、宽80的红色矩形,并在矩形内部绘制一个兰色内切椭圆。

代码:

importjava.awt.*;

importjava.applet.Applet;

publicclassjuxingextendsApplet

{

publicvoidpaint(Graphicsg)

{

g.setColor(Color.red);//设置画笔颜色为红色

g.drawLine(20,20,20,100);

g.drawLine(20,20,140,20);

g.drawLine(140,20,140,100);

g.drawLine(140,100,20,100);

g.setColor(Color.blue);

g.drawOval(20,20,120,80);

}

}

✧       提高题

1)编写一个应用程序绘制一个如下的操作菜单。

        *****************************

        |  1.增加1个学生  |

        |  2.显示所有学生  |

        |  3.退出程序    |

        |  请输入选择(1-3):

 |

        *****************************

代码:

publicclasscaidan

{

publicstaticvoidmain(String[]args)

{

System.out.println("*****************************");

System.out.println("|1.增加1个学生|");

System.out.println("|2.显示所有学生|");

System.out.println("|3.退出程序|");

System.out.println("|请输入选择(1-3):

|");

System.out.println("*****************************");

}

}

结果如下图:

2)创建一个applet程序,绘制两个同心圆,园心显示“同心”两个汉字。

代码:

importjava.awt.*;

importjava.applet.Applet;

publicclassyuanextendsApplet

{

publicvoidpaint(Graphicsg)

{

g.setColor(Color.red);//设置画笔颜色为红色

g.drawOval(20,20,80,80);

g.drawOval(10,10,100,100);

g.drawString("同心",60,60);

}

}

3)下面的例子将建立雇员信息类EmpInfo,并实例化对象,然后打印出若干信息。

代码:

publicclassEmpInfo

{

Stringname="Robert";//雇员的姓名

Stringdesignation="Manager";//雇员的职务

Stringdepartment="CoffeeShop";//雇员的部门

voidprint()

{//成员方法

System.out.println(name+"is"+designation+"at"+department);

}

publicstaticvoidmain(String[]args)

{

EmpInfoa=newEmpInfo();

a.print();

}

}

运行结果如下:

RobertJavamanisManageratCoffeeShop

把程序写完整,体现成员变量、方法、类和对象的定义和使用。

完整代码

publicclassEmpInfo

{

Stringname="Robert";//雇员的姓名

Stringdesignation="Manager";//雇员的职务

Stringdepartment="CoffeeShop";//雇员的部门

voidprint()

{//成员方法

System.out.println(name+"is"+designation+"at"+department);

}

publicstaticvoidmain(String[]args)

{

EmpInfoa=newEmpInfo();

a.print();

}

}

结果如下图:

4)书本P42练习。

P46练习。

第三章课后习题。

代码:

(1)多态:

publicclassduotai

{

duotai()

{

System.out.println("这是没有参数的情况。

");

}

duotai(inta,intb)

{

intc;

c=a+b;

System.out.println(a+"+"+b+"="+c+"(整数和整数的情况。

)");

}

duotai(inta,Stringb)

{

System.out.println(a+b+"(整数和字符串的情况。

)");

}

duotai(Stringa,Stringb)

{

System.out.println(a+b+"(字符串和字符串的情况。

)");

}

publicstaticvoidmain(String[]agrs)

{

duotais1,s2,s3,s4;

s1=newduotai();

s2=newduotai(11,12);

s3=newduotai(10,"eggs");

s4=newduotai("abc","efg");

}

}

(2)方法:

publicclassFangFa

{

intyear=1989;

intmonth=03;

intday=17;

inthour;

intminute;

intsecond;

//有参构造方法

FangFa(inthour,intminute,intsecond)

{

this.hour=hour;

this.minute=minute;

this.second=second;

System.out.println("现在是"+hour+"时"+minute+"分"+second+"秒。

"+"(---这是有参构造方法)");

}

//无参构造方法

FangFa()

{

System.out.println("现在是"+year+"年"+month+"月"+day+"日。

"+"(---这是无参构造方法)");

}

publicstaticvoidmain(String[]args)

{

FangFaS2;

S2=newFangFa();

FangFaS1=newFangFa(20,20,20);

}

}

(3)继承:

classfather

{

inta;

father(inta)

{

this.a=a;

}

}

publicclasssonextendsfather

{

intb;

son(inta,intb)

{

super(a);

this.b=b;

}

publicstaticvoidmain(String[]args)

{

sons=newson(1,2);

System.out.println(s.a);

System.out.println(s.b);

}

}

思考题

1)以下哪个是Java应用程序main方法的有效定义?

(C)

A.publicstaticvoidmain();

B.publicstaticvoidmain(Stringargs);

C.publicstaticvoidmain(Stringargs[]);

D.publicstaticvoidmain(Graphicsg);

E.publicstaticbooleanmain(Stringa[]);

2)编译和运行以下代码的结果为:

(D)

publicclassMyMain

{

publicstaticvoidmain(Stringargv)

{

  System.out.println("Hellocruelworld");

 }

}

A.编译错误;

B.运行输出"Hellocruelworld";

C.编译无错,但运行时指示没有定义构造方法。

D.编译无错,但运行时指示没有正确定义main方法。

3)下列选项中不属于Java虚拟机的执行特点的一项是:

(D)

A.异常处理  B.多线程  C.动态链接  D.简单易学

4)不属于Java语言特点的一项是:

(C)

A.分布式 B.安全性  C.编译执行   D.面向对象

5)以下程序的运行结果为:

(B)

 publicclassTest

{

publicstaticvoidmain(Stringargv[])

{

   System.out.println("x="+5);

}

}

A.5   B.x=5   C."x="+5   D."x="5

6)以下程序的运行结果为:

(A)

publicclassTest

{

publicstaticvoidmain(Stringargv[])

{

   System.out.println("good"+"morning");

}

}

A.goodmorning    B."good"+"morning"     

C.goodmorning   D.good+morning

   

实验总结

这次实验所使用的开发平台是NetBeansIDE,通过本次实验我们要对NetBeansIDE的开发环境有一个清楚的了解并能够熟练运用。

同时对Java语法有初步运用。

课堂上老师讲的语法比较抽象,所以只有在实验中应用我们才能深刻体会到java语言的强大。

面向对象是java语言最重要的特征,通过编程我们对它有一个比较直观的认识和理解。

实验是课堂知识学习的一个体现,课堂知识掌握的一个巩固,只有对Java的基础知识有了比较深的理解运用和巩固,我们在以后的实验中进行开发程序时才能得心应手。

通过这次实验我们理解了Java语言是如何充分体现面向对象程序编程的基本思想,,以及如何创建类和对象。

我们还了解了成员变量和成员方法的特性,并掌握就OOP方式进行程序设计的方法。

虽然我们在实验过程中对这些代码并不是很清楚,有些地方还不明白,但通过以后的学习,我想我会越来越清楚。

我们通过这次实验对java有了比较基本的认识,发现它没有想象中那么难,这对我们以后的学习增加了不少的信心和兴趣。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1