当前位置:文档之家› 南昌大学java实验报告4

南昌大学java实验报告4

南昌大学java实验报告4
南昌大学java实验报告4

南昌大学实验报告

学生姓名:学号:专业班级:网络工程091

实验类型:□验证□综合□设计□创新实验日期:2012.5.18 实验成绩:

实验四简单的万年历

一、实验目的

学习使用布局类。

二、实验任务

编写一个应用程序,有一个窗口,该窗口为BorderLayout布局。窗口的中心添加一个Panel容器:pCenter,pCenterd的布局是7行7列的GridLayout布局,pCenter中放置49个标签,用来显示日历。窗口的北面添加一个Panel容器pNorth,其布局是FlowLayout布局,pNorth放置两个按钮:nextMonth和previousMonth,单击nextMonth按钮,可以显示当前月的下一月的日历;单击previousMonth按钮可以显示当前月的上一月的日历。窗口的南面添加一个Panel容器pSouth,起布局是FlowLayout,pSouth中放置一个标签用来显示一些信息。

三、实验内容

编译并运行程序,查看结果。

程序如下:

CalendarFRame.java

package calendar;

import java.awt.BorderLayout;

import java.awt.Button;

import java.awt.GridLayout;

import https://www.doczj.com/doc/d618305069.html,bel;

import java.awt.Panel;

import java.awt.ScrollPane;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JFrame;

public class CalendarFrame extends JFrame implements ActionListener { Label labelDay[]=new Label[42];

Button titleName[]=new Button[7];

String name[]={"日","一","二","三", "四","五","六"};

Button nextMonth,previousMonth;

int year=2012,month=5;

CalendarBean calendar;

Label showMessage=new Label("",Label.CENTER);

public CalendarFrame()

{

Panel pCenter=new Panel();

pCenter.setLayout(new GridLayout(7,7));

//将pCenter的布局设置为7行7列的GridLayout 布局。

for(int i=0;i<7;i++)

{

titleName[i]=new Button(name[i]);

pCenter.add(titleName[i]);//pCenter添加组件titleName[i]。

}

for(int i=0;i<42;i++)

{

labelDay[i]=new Label("",Label.CENTER);

pCenter.add(labelDay[i]);//pCenter添加组件labelDay[i]。

}

calendar=new CalendarBean();

calendar.setYear(year);

calendar.setMonth(month);

String day[]=calendar.getCalendar();

for(int i=0;i<42;i++)

{ labelDay[i].setText(day[i]);

}

nextMonth=new Button("下月");

previousMonth=new Button("上月");

nextMonth.addActionListener(this);

previousMonth.addActionListener(this);

Panel pNorth=new Panel(),

pSouth=new Panel();

pNorth.add(previousMonth);

pNorth.add(nextMonth);

pSouth.add(showMessage);

showMessage.setText("日历:"+calendar.getYear()+"年"+ calendar.getMonth()+"月" );

ScrollPane scrollPane=new ScrollPane();

scrollPane.add(pCenter);

add(scrollPane,BorderLayout.CENTER);// 窗口添加scrollPane在中心区域

add(pNorth,BorderLayout.NORTH);// 窗口添加pNorth 在北面区域

add(pSouth,BorderLayout.SOUTH);// 窗口添加pSouth 在南区域。

}

public void actionPerformed(ActionEvent e)

{ if(e.getSource()==nextMonth)

{ month=month+1;

if(month>12)

month=1;

calendar.setMonth(month);

String day[]=calendar.getCalendar();

for(int i=0;i<42;i++)

{ labelDay[i].setText(day[i]);

}

}

else if(e.getSource()==previousMonth)

{ month=month-1;

if(month<1)

month=12;

calendar.setMonth(month);

String day[]=calendar.getCalendar();

for(int i=0;i<42;i++)

{ labelDay[i].setText(day[i]);

}

}

showMessage.setText("日历:"+calendar.getYear()+"年"+calendar.getMonth()+"月" );

}

}

CalendarBean.java

package calendar;

import java.util.Calendar;

public class CalendarBean

{

String day[];

int year=2005,month=0;

public void setYear(int year)

{ this.year=year;

}

public int getYear()

{ return year;

}

public void setMonth(int month)

{ this.month=month;

}

public int getMonth()

{ return month;

}

public String[] getCalendar()

{ String a[]=new String[42];

Calendar 日历=Calendar.getInstance();

日历.set(year,month-1,1);

int星期几=日历.get(Calendar.DAY_OF_WEEK)-1;

int day=0;

if(month==1||month==3||month==5||month==7||month==8||month==10||m onth==12)

{ day=31;

}

if(month==4||month==6||month==9||month==11)

{ day=30;

}

if(month==2)

{ if(((year%4==0)&&(year%100!=0))||(year%400==0))

{ day=29;

}

else

{ day=28;

}

}

for(int i=星期几,n=1;i<星期几+day;i++)

{

a[i]=String.valueOf(n) ;

n++;

}

return a;

}

}

CalendarMainClass.java

package calendar;

public class CalendarMainClass

{ public static void main(String args[])

{

CalendarFrame frame=new CalendarFrame();

frame.setBounds(100,100,360,300);

frame.setVisible(true);

frame.validate();

frame.addWindowListener(new java.awt.event.WindowAdapter() { public void

windowClosing(java.awt.event.WindowEvent e)

{ System.exit(0);

}

}

);

}

}

运行结果:

四、实验小结

本次实验的主要目的是学习使用布局类,在本程序中CalendarFrame()是构造方法,负责完成窗口的初始化;actionPerformed(ActionEvent)方法是CalendarFrame类实现的ActionListener接口中的方法;CalendarFrame创建的窗口时nextMonth,previousMonth按钮的ActionEvent事件监听器,当用户单击按钮时,窗口将执行actionPerformed(ActionE vent)方法进行相应的操作。实现起来并不复杂。

有难度的地方在于判断闰年还是平年,判断相应天数和算出日期分布等函数的算法实现。

五、思考题

在CalendarFrame类中增加一个TextField文本框,用户可以通过在文本框中输入年份来修改calender对象的int成员year。

答:实现该功能需用TextField类创建showYear和showMonth文本框,用来显示年份和月份(可以用Button创建nextYear,previousYear实现“上年”和“下年”,使界面更加友好)。

添加的主要代码如下:

1) TextField showYear,showMonth;

2) showYear=new TextField(“”+year,6);

showYear.setHorizontalAlingnment(TextField.CENTER);

showMonth=new TextField(“”+month,4);

showMonth.setHorizontalAlingnment(TextField.CENTER);

nextYear=new Button(“下年”);

previousY ear=new Button(“上年”);

nextYear.addActionListener(this);

previousY ear.addActionListener(this);

……

JPanel north=new Panel();

north.add(previousYear);

north.add(showYear);

north.add(nextYear);

if(e.getSourse==previousYear){

year--;

showYear.setText(“”+year);

calendarMessage.setYear(year);

calendarFrame.setCalendarMessage(calendarMessage);

calendarFrame.showMonthCalendar();

}

if(e.getSourse==nextYear){

year++;

showYear.setText(“”+year);

calendarMessage.setYear(year);

calendarFrame.setCalendarMessage(calendarMessage);

calendarFrame.showMonthCalendar();

}

结果略。

南昌大学WEB实验报告

实验报告 实验课程:《 WEB编程》 学生姓名: 学号: 专业班级: 2010年 12 月 20 日

目录 ●实验一 .............................................. ●实验二 ............................................. ●实验三 ............................................. ●实验四 ............................................. ●实验五 ............................................. ●实验六 ............................................. ●实验七 ..............................................

南昌大学实验报告 学生姓名:学号:专业班级: 实验类型:□验证□综合■设计□创新实验日期:2010年9月15 日实验成绩:实验一 Web编程环境 一、实验目的 1.搭建Web编程环境,能正确安装配置java运行环境、WEB服务器和数据库服务器 2.熟悉WEB编程集成环境MYEclipse. 3.熟练掌握WEB工程的创建、发布、运行流程。 二、实验内容 1.安装并配置java运行环境JDK和JRE 2.安装Web服务器tomcat, 配置Tomcat服务器 3.安装并配置数据库MySQL. 4.安装MyEclispe,熟悉各项菜单项 5.为MyEclispe集成配置JDK和Tomcat 6.创建、发布、运行一个WEB工程。 三、实验仪器及耗材 计算机,JDK,TOMCAT, MySQL, MyEclipse等软件。 四、实验步骤 1、安装并配置JDK和JRE 2、设置好classpath和path路径 3、安装Tomcat5.5 4、设置Tomcat的配置属性 5、安装并配置MySQL数据库 6、安装MySqL Administrator工具 7、安装MyEclipse 8、新建并配置一个工程,运行发布一个新的工程。 五、实验结果 1、JDK、JRE安装结果:

JAVA实验报告一

Java语言程序设计实验报告一 班级:姓名:学号: 一、实验教学目的与基本要求 Java程序设计的实验是Java程序设计课程重要的实践教学环节。实验的目的不仅仅是验证理论知识,更重要的是通过上机加强学生的动手能力,掌握常用Java开发环境的使用方法,培养学生分析问题、解决问题、应用知识的能力和创新精神。充分放手让学生自行设计、自主调试,真正培养学生的实践动手能力,全面提高学生的综合素质。 本课程是一门程序设计语言课程,通过本课程的学习,学生能够掌握Java 语言程序的基本特点、基本编程方法和基本开发技巧,培养学生阅读、分析、设计和调试Java语言的能力,并具备一定的面向对象程序设计思想。 本课程的主要任务是在已学习的编程语言基础上,讲述Java语言的数据结构和语法规则;基本控制结构和编程技巧;Java语言面向对象的特点、编程方法和程序设计思路;Java语言的GUI程序和文件及I/O流的编程方法;能够正确配置Java开发环境,并使用相关的编辑、编译、调试、运行命令。 (1)掌握Java语言的编程技巧,能够独立进行面向对象的开发能力。 (2)具有根据编程需求独立查询Java类库文档及相关资料,完成系统的能力。 (3)具有分析、寻找和排除程序中常见问题的能力。 二、实验内容与收获 (1)Java的安装与配置。熟悉语言环境及简单程序设计的使用练习,正确配置Java 开发环境(Eclipse 集成开发环境的安装、配置与使用) a)安装JDK Sun公司为所有的Java程序员提供了一套免费的Java开发和运行环境。 可以通过IE或Netscape浏览器浏览网址:https://www.doczj.com/doc/d618305069.html,/j2se,根据提示

JAVA实验报告四(实现String类)

JA V A实验报告实验四运用JavaFx实现时钟动画 班级:计算机科学与技术1306 学号: 00 姓名:王雨思 指导教师:鲁鸣鸣 2014 年 12 月 1 日

目录 一.概述 (6) 二.总体方案设计 (7) 三.详细设计 (8) 四.程序的调试与运行结果说明 (9) 五.课程设计总结 (10) 六.后记 (11) 七.附录 (12) 参考文献 (13)

一概述 1.课程设计的目的 了解和掌握String类的实现原理 2.课程设计的要求 基于ArrayList实现可以深度复制(Deep Copy)的栈结构。1.首先用ArrayList实现栈结构 2.接着将第1步实现的栈通过Clonable接口实现深度复制 3.课程设计的主要设计思想 基于ArrayList实现可以深度复制(Deep Copy)的栈结构。二总体方案设计 编写程序实现MyString类的下列操作: public MyString(char[] chars); public char charAt(int index); public int length(); public MyString substring(int begin, int end); public MyString toLowerCase(); public boolean equals(MyString s); public static MyString valueOf(int i); public int compare(String s); public MyString substring(int begin); public MyString toUpperCase(); public char[] toChars();

南昌大学《编译原理》实验报告(用Java编写)

实验报告 学院:信息工程学院系计算机系 专业班级:计算机科学与技术 学生姓名:学号: 任课教师:

目录 实验1 词法分析程序的设计 (3) 实验2 语法分析程序的设计 (9) 实验3 逆波兰式的翻译和计算 (17)

南昌大学实验报告 学生姓名:学号:专业班级: 实验类型:□验证□综合■设计□创新实验日期:实验成绩: 实验1 词法分析程序的设计 一、实验项目名称 词法分析程序的设计 二、实验目的 掌握计算机语言的词法分析程序的开发方法。 三、实验基本原理 编制一个能够分析三种整数、标识符、主要运算符和主要关键字的词法分析程序。 1、根据以下的正规式,编制正规文法,画出状态图; 标识符<字母>(<字母>|<数字字符>)* 十进制整数0 | ((1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)*) 八进制整数0(1|2|3|4|5|6|7)(0|1|2|3|4|5|6|7)* 十六进制整数0x(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)* 运算符和界符+ - * / > < = ( ) ; 关键字if then else while do 2、根据状态图,设计词法分析函数int scan( ),完成以下功能: 1)从文本文件中读入测试源代码,根据状态转换图,分析出一个单词, 2)以二元式形式输出单词<单词种类,单词属性> 其中单词种类用整数表示: 0:标识符 1:十进制整数 2:八进制整数 3:十六进制整数 运算符和界符,关键字采用一字一符,不编码 其中单词属性表示如下: 标识符,整数由于采用一类一符,属性用单词表示 运算符和界符,关键字采用一字一符,属性为空 3、编写测试程序,反复调用函数scan( ),输出单词种别和属性。

java——实验报告

public class Hello { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("大家好!");//向控制台输出语句 System.out.println("Nice to meet you");//向控制台输出语句 Student stu = new Student();//类确定对象 stu.speak("We are students");//stu对象向控制台输出语句} } class Student { public void speak (String s){//创建新的类 System.out.println(s); } } class Student { public void speak (String s){//创建新的类 System.out.println(s); 例子2 public class People {//定义一个公共访问权限的类People /** * @param args

int height;//定义浮点型数据height String ear;//定义浮点型数据heightear void speak(String s){ //定义speak()方法,该方法的功能是输出参数的值 System.out.println(s); } } class A { public static void main(String[] args) { // TODO Auto-generated method stub People zhubajie;//声明一个People类的对象zhubajie zhubajie = new People(); //为对象zhubajie分配储存空间(通过关键字new和构造方法) zhubajie.height =170; //给对象zhubajie的height变量赋值1.7 zhubajie.ear = "两只大耳朵"; System.out.println("身高:"+zhubajie .height); System.out.println(zhubajie.ear); //调用对象zhubajie的speak()方法 zhubajie.speak("师傅,咱们别去西天了,改去月宫吧"); } }

java第二次实验报告

java实验报告 实验题目运用JavaFx实现时钟动画学生姓名 指导教师 学院 专业班级 完成时间2014年12

目录 一、实验目的 (3) 二、实验开发环境和工具 (3) 三、实验内容 (3) 四.实际简要描述: (3) 五.程序清单 (4) 六.结果分析 (10) 七.调试报告 (11) 八.实验心得 (11)

一、实验目的 1.了解和掌握JavaFx动画基本概念和相关用法 二、实验开发环境和工具 可以在Linux或者Windows操作系统上搭建开发环境,可使用集成开发环境Eclipse,使用Java语言,工具包使用JDK1.8。 三、实验内容 基于JavaFx画出如下所示可动态变化的时钟。要求按‘start’按钮可启动时钟,按‘stop’按钮可让时钟暂停。时钟初始时显示当前时间并开始动态变化。 四.实际简要描述: 1.新建一个动态时针 EventHandlereventHandler = e -> { clock.setCurrentTime(); // 设置时钟时间 }; 2.建立一个动画使时钟走起来 Timeline animation = new Timeline( newKeyFrame(https://www.doczj.com/doc/d618305069.html,lis(1000), eventHandler)); animation.setCycleCount(Timeline.INDEFINITE); animation.play(); // 开始动画

3.建立按钮 HBoxhbox=new HBox();//新建HBOX布局 hbox.setSpacing(20); hbox.setLayoutX(310); hbox.setLayoutY(520); Start = new Button("Start");//建立start按钮 Start.setPrefSize(80, 40); Stop = new Button("Stop");//建立stop按钮 Stop.setPrefSize(80, 40); hbox.getChildren().addAll(Start,Stop);//将按钮加入HBOX getChildren().add(hbox); 五.程序清单 importjavafx.application.Application; importjava.util.Calendar; importjava.util.GregorianCalendar; https://www.doczj.com/doc/d618305069.html,yout.Pane; importjavafx.scene.paint.Color; importjavafx.scene.shape.Circle; importjavafx.scene.shape.Line; importjavafx.scene.text.Text; importjavafx.application.Application; importjavafx.stage.Stage; importjavafx.animation.KeyFrame; importjavafx.animation.Timeline; importjavafx.event.ActionEvent;

java实验报告4

一.实验目的 (1)学习类的成员变量和成员方法的声明格式 (2)学习java对象的创建和调用 (3)学习参数传递 (4)学习类的私有成员的定义、访问方法已经共有成员的定义 (5)理解类的构造方法、构造方法的调用 (6)理解方法重载 (7)掌握静态成员和非静态成员的访问方式 (8)学习对象的赋值以及比较 二.实验软件环境 jdk1.6.0_18、windows 7 三.实验内容 (1)编写一个java程序,在程序中创建Student类的两个实例并访问他们的属性以及方法package https://www.doczj.com/doc/d618305069.html,.javaoo.class070120; //Student.java class Student { String name; int age; int Chinese; int Math; int English; int total() { return Chinese+Math+English; } int average() { return (Chinese+Math+English)/3; } } package https://www.doczj.com/doc/d618305069.html,.javaoo.class070120; //MyObject.java

class MyObject { public static void main(String args[]) { Student s1=new Student(); https://www.doczj.com/doc/d618305069.html,="张三"; s1.age=13; s1.Chinese=80; s1.Math=90; s1.English=85; System.out.println("你好,我叫"+https://www.doczj.com/doc/d618305069.html,+","+"我今年"+s1.age+"岁"); System.out.println("我的总分是"+s1.total()); System.out.println("我的平均分是"+s1.average()); Student s2=new Student(); https://www.doczj.com/doc/d618305069.html,="李四"; s2.age=12; s2.Chinese=80; s2.Math=90; s2.English=90; System.out.println("你好,我叫"+https://www.doczj.com/doc/d618305069.html,+","+"我今年"+s1.age+"岁"); System.out.println("我的总分是"+s2.total()); System.out.println("我的平均分是"+s2.average()); if(s1.total()>s2.total()) System.out.println(https://www.doczj.com/doc/d618305069.html,+"的成绩好"); else if(s1.total()

WEB编程实验报告---南昌大学

实验报告 实验课程:JA V A WEB编程技术 学生姓名: 学号: 专业班级:物流101班 2013年 06 月 12 日 目录

实验一WEB编程环境......................... 错误!未定义书签。实验二HTML和CSS编程技术 (7) 实验三JA V ASCRIPT编程技术 (10) 实验四SERVLET编程技术 (13) 实验五JSP编程技术 (16) 实验六JA V ABEAN编程技术 (21) 实验七基于MVC模式构建系统 (25) 南昌大学实验报告 学生姓名:学号:专业班级:物流101班

实验类型:□验证□综合■设计□创新实验日期:实验成绩: 一、实验项目一Web编程环境 二、实验目的 第1章搭建Web编程环境,能正确安装配置java运行环境、WEB服务器和数据库服务器 第2章熟悉WEB编程集成环境MYEclipse. 第3章熟练掌握WEB工程的创建、发布、运行流程。 三、实验内容 1.安装并配置java运行环境JDK和JRE 2.安装Web服务器tomcat, 配置Tomcat服务器 3.安装并配置数据库MySQL. 4.安装MyEclispe,熟悉各项菜单项 5.为MyEclispe集成配置JDK和Tomcat 6.创建、发布、运行一个WEB工程。 四、实验仪器及耗材 计算机,JDK,TOMCA T, MySQL, MyEclipse等软件。 五、实验步骤 1.先安装jdk1.6,选择自定义安装,安装到C:\JDK 2.配置环境变量,class:.;C:\JDK\bin , classpath:.;C:\JDK\lib ,java_home: C:\JDK 安装tomcat,安装在C:\ Tomcat 下,配置tomcat_home环境变量,CATALINA_HOME: C: \Tomcat,CATALINA_BASE: C: \Tomcat,TOMCAT_HOME: C:\Tomcat 然后修改环境变量中的classpath,把tomat安装目录下的common\lib下的servlet.jar 追加到classpath中去,修改后的classpath如下: classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\c ommon\lib\servlet.jar;

java实验报告完整版

实验报告 (计算机与信息工程学院实验中心) 学期: 2014-2015 课程名称:《Java程序设计实验》 班级:信息1202 姓名:方逸梅 学号: 31 指导老师:费玉莲

《Java程序设计》 独立实验教学安排 一、实验的教学方式、安排及实验环境 (一)教学方式 对照本课程的实验教材,实验一至实验十一,由教师提示实验原理、方法、步骤等内容,在教师的指导下,学生独立完成程序设计及调试工作。实验十二的内容由学生自行设计完成。 (二)教学安排 学时数:30课时 学时安排:每次实验3学时,从学期第五周开始,共十次上机实验。 (三)实验环境 实验环境为JDK 。 (四)具体安排 地点:信息大楼实验室。 辅导:每个班次一名辅导老师,原则上由任课老师担任。 登记:实验完成,由辅导老师登记实验纪录。 学生:实验做完,完成实验报告内容,并在学期末上交实验册。 老师:批改实验,成绩与平时成绩一起占期末的30%。 二、实验的具体内容和要求 见实验报告。

浙江工商大学 计算机与信息工程学院实验报告(1)日期:地点:成绩: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 实验目的、实验原理和内容: 一、实验目的:熟悉Java开发环境及简单程序Java设计。 二、实验原理:SDK 的下载与安装,设置环境变量,安装java 虚拟机,使用Eclipse,编译Java 源程序,运行Java 程序。 三、实验内容及要求: 1.下载、安装并设置Java SDK 软件包。 2.熟悉Eclipse 编辑软件。 3.掌握运行Java 程序的步骤。 4.分别编写Application和Applet程序,显示字符串”Hello Java!欢迎使用!”。 要求:请同学把预备知识、步骤、程序框图、调试好的程序及存在的问题写在下面(不够可以附页)。 程序一 public class hello { public static void main(String[] args) { for(int i=0;i<=4;i++) { "Hello java! 欢迎使用!"); } }

java实训总结

实习报告 学生姓名:陈育伟 学号:20096361 专业班级:信息与计算科学1班 实习单位:高博教育 实习时间:2012-7-1——2012-7-14 2012年 7 月 14 日

一、实习目的 通过对java语言、JavaWeb、Oracle数据库应用设计及SQL语言的复习和锻炼,并且通过使用MyEclipse 开发平台设计库存管理系统项目,以达到充分熟悉开发平台及其应用设计。同时掌握并实践软件项目设计规范及其开发流程:需求分析、概要设计、详细设计、代码编写、系统测试及软件手册编写,以便提前适应软件公司开发流程、环境和工作要求进一步了解java开发的相关知识,掌握java开发的基本技术,丰富java开发的实战经验。学习SQL的基础知识及正确的运用方法,和有用的相关技术,提高自己的工作效率。通过实习,培养我们综合运用已学知识Java语言的面向对象编程能力;培养我们动手能力;培养我们良好编程规范、编程方法;以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力;增强自己的团队协作意识,了解软件开发的思考角度和主要流程。为毕业之后能够更快地进入工作状态并且能够更好的工作,打好一定的基础。 二、实习主要流程 1、公司管理规则,程序员素质,程序员编码规范; 2、需求开发与管理; 3、面向对象分析与设计,面向对象编程的特性; 4、javaSE、javaWeb 、页面设计-JSP页面; 5、数据库设计、SQL应用; 6、软件需求分析与设计; 7、项目实战 三、实习内容 Oracle数据库 数据库是数据的结构化集合。计算机是处理大量数据的理想工具,因此,数据库管理系统在计算方面扮演着关键的中心角色,或是作为独立的实用工具,或是作为其他应用程序的组成部分。 Oracle服务器还有一套实用的特性集合,这些特性是通过与我们用户的密切合作而开发的。在我们的基准测试主页上,给出了Oracle服务器和其他数据库管理器的比较结

JAVA实验报告参考

实验报告 实验名称工资管理程序第 2 次实验实验日期 2009- - 指导教师 班级 04软件工程学号姓名成绩 一、实验目的 1、掌握类的定义、域的定义及方法的定义。 2、掌握对象的定义与使用 3、掌握抽象类的用法 二、实验内容 1、建立一个抽象类Employee类 至少包括成员变量: 名、姓、年龄、性别 至少包括构造函数: 名和姓作为参数 至少包括方法: 取名称 至少包括抽象方法: 取收入earnings() 重写Object的toString()方法,返回Employee类的描述信息如名称信息 2、建立老板类Boss类继承Employee类 至少构造函数以名和姓及周工资作为参数 老板的工资是周工资 3、建立销售人员类 销售人员的收入= 销售量* 单价 要求:每个销售人员对象都能知道当前共有多少个销售人员 ... ... 4、在main函数中,分别创建老板对象、销售人员对象 三、实验步骤 3.1 进入eclips,创建一个名为employ的工程,新建一个抽象类Employee类 类中的成员变量有private String firstname; private String lastname; private String sex; private String age; 构造函数为employee(){} //无参数的构造函数 employee(String fn,String ln) //以名和姓为参数的构造函数 { this.firstname=fn; https://www.doczj.com/doc/d618305069.html,stname=ln; } employee(String fn,String ln,String s,String a)//参数完整的构造函数 { this(fn,ln);

南昌大学JAVA期末复习题及答案

一、填空题 1.对象之间可能存在的关系有三种:_包含_、_继承__和_关联_。2.面向对象的软件开发过程大体可分为 __面对对象分析、__面对对象设计_和_面对对象测试__三个阶段。 3. Java 语言中实现多态的方法有 __继承__、_方法重载_ 和_成员覆盖__。 4. Java 语言具有可移植性、高性能、健壮性、安全性和独立于体系结构的__跨平台_特点。 5. JAVA语言规定object类是JAVA 程序中所有类的父类,当前类的构造方法用this()表示,直接父类的构造方法用super()表示。 6.如果一个Java Applet 源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet 必须是Applet类的子类并且存储该源程序文件的文件名为MyApplet.java。 7.如果一个Java Applet 程序文件中定义有3 个类,则使用Sun 公司的JDK 编译器javac.exe编译该源程序文件将产生3个文件名与类名相同而扩展名为.class的字节码文件。 8.在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2 字节内存空间,这样,无论是中文字符还是英文字符,都是占用2字节内存空间。 10. Applet 是能够嵌入到HTML格式的文件中,并能够在浏览器中运行的Java。

11.在Java 中,线程的模型就是一个CPU、程序代码和数据的封装体。 12.键盘键入字符串并在计算机屏幕上显示,这时的数据源是键盘。13. JAVA语言是第一个语言本身就支持线程的编程语言,其对线程的支持主要通过 https://www.doczj.com/doc/d618305069.html,ng.Thread类和https://www.doczj.com/doc/d618305069.html,ng.Runnable接口来实现。14.设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。 int s = 0 ; for ( int i = 0 ; i < MyIntArray.length ; i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] ; System.out.println( s ); 15. JVM 是Java Virtual Machine的缩写; AWT 是abstrac window toolkit的缩写。 16.单重继承是指只有一个父类的继承;多重继承是指有一个以上父类的继承;Java 语言出于安全、可靠的考虑,仅支持单重继承;但Java 语言可通过接口来实现多重继承。 17. Java 中构成图形用户界面的元素和成分可分为 _容器_、_控制组件_和___用户自定义________________等三类。 18.一个线程的完整生命周期包括如下 5 种状态 _新生_、__就绪_、_运行_、_阻塞_和_死亡_。

实验二 Java类-实验报告

南京信息工程大学实验(实习)报告 实验(实习)名称Java类实验(实习)日期 10.17 得分指导教师刘文杰院计算机与软件学院专业软件工程年级 2017级班次 1 姓名张成学号20171344024 1.实验目的: 1)熟练MyEclipse工具的使用与调试; 2)掌握Java类、方法和变量的定义和使用; 3)熟悉方法重载和覆盖、掌握this和supper关键字使用; 4)掌握4类访问控制符的使用。 2.实验内容: (1)定义一个类Circle,实现其面积计算功能getArea(); (2)编写程序,读入一个正整数并按降序显示它的所有最小因子。(教材第3章习题9)(3)利用多态性编程,实现求三角形、正方形和圆形的面积。(教材第4章习题6) 3.实验步骤 1、 public class Circle { public double radius; public Circle(double r) { radius= r; } public double getArea() { return radius*radius*Math.PI; } public static void main(String[] args) { Circle area1 = new Circle(5); System.out.println("The area is " + area1.getArea()); } }

2、 import java.util.Scanner; public class Read { public static void main(String[] args) { Scanner input =new Scanner(System.in); System.out.print("输入一个正整数:"); int n=input.nextInt(); int []a=new int[n]; int []b=new int[n]; int p,q=0,m=0; for(p=2;p<=n;p++) { while(n%p==0) { n=n/p; if(n!=1) { a[q]=p; q++; } else { a[q]=p; } } } while(q!=-1) { b[m]=a[q]; m++; q--; } for(p=0;p

JAVA实验报告

目录实验1 Java语言基础 实验2 数组和字符串编程 实验3 Java面向对象程序设计 实验4 Java异常处理 实验5 多线程编程 实验6 图形用户界面编程 实验7 输入与输出 实验8 网络编程 实验9 数据库编程

实验1 Java语言基础 一、实验目的和要求 1.实验目的 通过实验,掌握Java语言程序设计的基本方法。 学会Java语言中标示符的命名、运算符和表达式的应用。 熟练地掌握Java程序流程控制语句的应用。 2.实验内容 1.编写应用程序,计算100(含100)以内所有偶数的和。 2.“水仙花数”是指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。编写程序,求所有的水仙花数。 3.编写一个程序,求1-100间的素数。 4.有一函数: x (x<1) Y= 3x-2 (1≤x<10) 4x (x≥10) 写一程序,给定x值,输出y值。 5.使用for循环语句,编写程序输出以下图案。 ☆ ☆☆☆ ☆☆☆☆☆ ☆☆☆☆☆☆☆ ☆☆☆☆☆ ☆☆☆ ☆ 6.编写程序,输出从公元1900年到2100年所有闰年的年号,每输出5个年号换一行。判断年是否为闰年的条件是:①若年号可以被4整除,而不能被100整除,则是闰年;②若年号可以被400整除,也是闰年。 二、源代码 1.package addsum; public class addsum { public static void main(String s[])

{ int sum=0; for(int i=0;i<=100;i=i+2) sum=sum+i; System.out.println(sum); } } 2.package addsum; public class shuixianhua { public static void main(String[] args) { int i, j, k; for (i = 1; i <= 9; i++) { for (j = 0; j <= 9; j++) { for (k = 0; k <= 9; k++) { if ((i * 100 + j * 10 + k) == (i * i * i + j * j * j + k * k * k)) System.out.println(i * 100 + j * 10 + k + "=" + i + "*" + i + "*"+i+"+" + j + "*" + j+ "*" + j + "+" + k+ "+" + k+ "+" + k); } } } } } 3.package addsum; public class prime { public static void main(String[] args) { System.out.println("100内的素数为:"); loop: for (int i = 2; i < 100; i++) { for (int j = 2; j < i; j++) { if (i % j == 0) { continue loop; } } System.out.print(" " + i); } } } 4.package addsum; import java.util.Scanner; public class question4 { public static void main(String[] args) { double x,y; System.out.print("请输入x:");

南昌大学JavaWeb实验报告

实验一Java Web开发环境配置 学生姓名:学号:专业班级: 实验类型:□验证□综合□设计□创新实验日期: 2018.04.11 实验成绩:一、实验目的 1.掌握设置JDK环境。 2.掌握设置Tomcat环境。 3.安装、掌握Eclipse,MyEclipse 或IntellijIDEA软件,为学习 JSP和进行 JSP的实验做好准备工作。 4.编写JSP 程序并运行JSP页面。 二、实验要求 1.安装并设置 Java SDK 软件包。 2.安装并设置Tomcat软件包。 3.安装并设置 Eclipse软件、MyEclipse或IntellijIDEA软件。 4.编写一个简单的JSP,并在浏览器中浏览。 5.创建一个Web项目,并进行部署运行。 三、实验步骤 (一) JDK安装与配置 (二) Tomcat安装与配置 (三) IDE(Eclipse、MyEclipse、或IntelliJ IDEA)的安装与配置 (四)在IDE中建立一个jsp (五)部署JSP工程文件 (六)启动Tomcat服务器 (七)浏览JSP 四、实验数据 (一)JDK安装与配置 首先去oracle官方网站下载jdk的压缩包,根据自己的系统类型选择合适的版本即可.我的系统是Linux,于是选择Linux x64版本的下载即可.

下载后,将压缩包解压,下面是我解压的路径,以及压缩包中的内容 然后就是进行环境变量的配置,将jdk关键组件添加到环境变量.我使用的是zsh,在/home/.zshrc配置文件中添加下面三行即可: 验证是否安装成功: (二)Tomcat安装与配置 首先去apache的官网下载适合自己系统的tomcat版本,进行解压即可. 在bin目录下有一些可执行脚本,运行startup.sh,就可以成功开启tomcat服务器.

java实验报告(全)

学生学号0120910680526 实验课成绩 武汉理工大学 学生实验报告书 实验课程名称软件工具与环境 开课学院计算机科学与技术学院 指导老师姓名付国江 学生姓名 学生专业班级软件工程0905 2011— 2012学年第1学期

实验课程名称: java语言程序设计 实验项目名称JDK安装与配置、简单的程序编写实验成绩 实验者专业班级软件0905 组别 同组者实验日期年月日第一部分:实验分析与设计(可加页) 一、实验内容描述(问题域描述) 实验目的: 熟悉JDK的安装、配置和使用,掌握Java Application程序的基本结构。 实验内容: (1)安装JDK,并练习设置JAVA_HOME、path和classpath环境变量; (2)编写一个打印出”HelloWorld”的Java Application程序,并编译运行; 二、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或 者算法描述) (1)jdk的安装 (2)”HelloWorld”的编译运行 三、主要仪器设备及耗材 个人计算机,jdk 第二部分:实验调试与结果分析(可加页) 一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)(1)jdk的安装步骤: 1:双击jdk-6u10-windows-i586.exe安装文件 2:点击接受 3:点击下一步 4:选择JRE路径 5:点击下一步 6:完成 配置环境变量: 1:右键我的电脑,找到属性,高级中的环境变量 2:点击环境变量:3:系统变量针对所有用户,这里找到系统变量中的Path 点击编辑: 3:系统变量针对所有用户,这里找到系统变量中的Path 点击编辑: 4:在变量值末尾打上分号分隔,加入JDK库路径。 点击确定,完成! 5:变量配置好后。 6:测试环境是否好 在控制台中 输入javac指令,能显示参数,说明成功。

JAVA第四版实验2实验报告

实验1 1.实验要求: 编写一个Java应用程序,该程序在命令行窗口输出希腊字母表。 2.实验内容: 3.实验分析: (1)将一个double型数据直接赋值给float型变量,程序编译时提示怎样的错误。 可能损失精度。 (2)在应用程序的main()方法中增加语句:float x=0.618,程序能编译通过吗? 不能通过编译,提示可能损失精度。 (3)在应用程序的main()方法中增加语句:byte b=128编译能通过吗?在应用程序的main()方法中增加语句:int z=(byte)128;程序输出变量z的值是多少? 增加byte b=128时编译不能通过,提示可能损失精度。 增加int z=(byte)128时结果如下所示。 实验2 1.实验要求: 编写一个Java应用程序,该程序在命令行窗口输出数组的引用以及元素的值。 2.实验内容:

3.实验分析: (1)在程序的【代码4】之后增加语句”a[3]=200;”,编译是否有错?运行是否有错? (2)在程序的【代码4】之前输出二维数组b的各个一维数组的长度和引用。

(3)在程序的【代码4】之后输出二维数组b的各个一维数组的长度和引用。

实验3 1.实验要求: 编写一个Java应用程序,输出数组a的全部元素,并将数组a的全部或部分元素复制到其他数组中,然后改变其他数组的元素的值,再输出数组a的全部元素。 2.实验内容: 3.实验分析:

(1)在程序的【代码4】之后增加语句:int []tom=Arrays.copyOf(c,6); System.out.println(Arrays.toString(tom)); (2)在程序的最后一个语句之后增加语句:int []jerry=Arrays.copyOf(d,1,8); System.out.println(Arrays.toString(jerry));

java实验报告4

实验4 Java 语言面向对象基础编程 一.实验目的 (1)通过编程和上机实验理解Java语言是如何体现面向对象编程基本思想 (2)如何创建类和对象 二、实验要求 1、编写一个体现面向对象思想的程序; 2、编写一个创建对象和使用对象的方法的程序; 3、编写体现构造方法重载的程序; 三.实验内容 1、定义类创建类对象 设计类来描述真实客观世界中的事物,使用类的成员变量来表示事物的属性和状态,使用类的成员方法来提供对成员变量的访问或修改 (1)程序功能:设计一个用来描述汽车的类,使用类的非静态成员变量来表示汽车的车主姓名、当前的速率和当前方向盘的转向角度,使用类的非静态成员方法来表示改变汽车的速率和停车两个操作。 源代码:(自己编写) 创建类的对象,使用对象的方法(类的非静态方法)来访问或修改对象的变量(类的非静态变量) (1)创建上面第一步的类的对象,在调用类的构造函数时指定对象的变量的初始值,以后再使用对象的方法来访问或修改对象的变量的值。 源代码: 2、构造方法重载 构造方法的名称和类同名,没有返回类型。尽管构造方法看起来和一般的成员方法没有差别,但它不是方法,也不是类的成员。因此,构造方法不能直接调用,只能由new 操作符调用。构造方法对于类是十分重要的,对象的初始化任务要靠构造方法来完成。重载构造方法的目的是提供多种初始化对象的能力,使程序员可以根据实际需要选用合适的构造方法来初始化对象。 源代码如下: class RunDemo { private String userName, password; 在该处编写不带参数的构造方法

在该处编写带一个参数的构造方法 在该处编写带两个参数的构造方法 } public class EXP2 { public static void main(String[] args) { //使用不同的构造方法进行对象的初始化 } } 3、调用方法时参数传递的练习 在Java 中,方法中的参数传递可以分为传值调用或对象方法调用等方式。传值调用即传递的参数是基本数据类型,调用方法时在方法中将不能改变参数的值,这意味着只能使用它们。 3.1 编写一个传值调用的程序 (1) 程序功能:程序首先给整型变量x 和y 赋一个初值10,然后使用传值调用方式调用方法ff1对x 和y 做乘方及输出x 和y 的乘方值,最后再输出x 和y 的乘方值。 (2)编写源代码 (3)编译、运行源代码

Java实验三实验报告

实验报告 课程名称面向对象课程设计 实验项目名称类的继承 班级与班级代码13计算机科学与技术1班实验室名称(或课室)SS1 205 专业计算机科学与技术 任课教师尹华 学号:12251102120 姓名:林淑英 实验日期:2014 年4 月28 日 广东财经大学教务处制

姓名林淑英实验报告成绩 评语: 指导教师(签名) 年月日说明:指导教师评分后,实验报告交院(系)办公室保存。

实验三类的继承、多态、接口、访问控制符与修饰符 实验目的:通过编程练习掌握类的继承,多态,接口,访问控制符与修饰符的使用方法。 实验原理:类的继承,接口。 实验设备:计算机,Eclipse。 实验题目: 1.设计一个Person 类,其成员变量有:姓名(name)、性别(gender)、年 龄(age);再设计一个Student类,它是类Person的子类,其成员变量有:学号(id)、班名(cname)、成绩(score),类Student中要有一个方法 display(),用来显示一个学生的信息。 编写一个测试程序,创建一个Student类的对象,要求name和id 是自己的姓名和学号,输出学生的各种信息,学生的基本信息在类Student的带参数的构造方法中设定。 2.定义一个类A,该类有一个方法f,方法f可以输出英文字母,再定义 一个类B是A的子类,子类B不能重写父类A的方法f,子类有一个方法g,可以输出中文字符串。 编写测试程序,创建B的对象,输出英文字母和中文字符串。 3.定义一个坐标类Pointer,成员变量包括x和y;成员方法有: (1)构造方法 (2)setX、setY、getX、getY、display方法 (3)类方法distance用来计算两点之间的距离 编写测试程序,创建Pointer的两个对象并计算两个点坐标的距离。

相关主题
文本预览
相关文档 最新文档