java上机实验答案与解析
java实验报告实验1答案

实验一熟悉NetBeans IDE 平台,开发环境及Java编程实验目的:1、我们使用的开发平台是NetBeans IDE,希望通过本次实验同学们能对NetBeans IDE 的开发环境有一个清楚的了解并能熟练运用,对Java语法进行初步运用,对面向对象的编程有一个直观的认识和深入理解,对于Java的基础知识进行理解运用和巩固。
为以后的实验中能够进行开发程序打下基础。
2、通过编程和上机实验理解Java语言是如何体现面向对象编程基本思想,了解类的封装方法,以及如何创建类和对象,了解成员变量和成员方法的特性,掌握OOP方式进行程序设计的方法,了解类的继承性和多态性的作用。
实验内容:● 1. 编写一个体现面向对象思想的程序。
● 2. 编写一个创建对象和使用对象的方法的程序。
● 3. 编写一个显示当前日期和时间的程序。
● 4. 编写不同成员变量修饰方法的程序。
● 5. 编写不同成员方法修饰方法的程序。
● 6. 编写体现类的继承性(成员变量、成员方法、成员变量隐藏)的程序。
●7. 编写体现类的多态性(成员方法重载、构造方法重载)的程序。
实验步骤:●双击桌面上的NetBeans IDE 6.5.1快捷方式或在文件菜单中打开它。
图1-1点击文件,创建新项目,创建一个项目名:experiment1。
点击按钮下一步:在项目名称处输入:experiment1 然后点击完成:项目experiment1在experiment1 下实现程序样例1:编写应用程序输出如下三角形。
****************【参考程序】public class Star{public static voidmain(String a[]){System.out.println(" *");System.out.println(" ***");System.out.println(" *****");System.out.println("*******");}}程序运行结果如图1-2所示。
java实验报告上机过程遇到的问题及解决方法

java实验报告上机过程遇到的问题及解决方法Java实验报告上机过程遇到的问题及解决方法在进行Java实验时,往往会遇到各种问题,这些问题可能与代码编写、调试、环境配置等方面有关。
在本文中,我将分享一些我在实验过程中遇到的常见问题以及相应的解决方法,希望能够帮助读者更好地进行Java实验。
1. 编译错误在编写Java代码时,经常会碰到编译错误。
编译错误可能是由于语法错误、缺少库文件、命名冲突等问题导致的。
解决这类问题的方法有:- 仔细检查代码,确保语法正确且符合Java语法规范。
常见的错误包括缺少分号、拼写错误等。
- 确保所使用的库文件已正确导入,并在代码中进行正确的引用。
- 对于命名冲突问题,可以尝试修改变量名或使用全限定名来解决。
2. 运行时错误在代码编译通过后,运行程序时可能会出现各种错误。
空指针异常、数组越界等。
解决这类问题的方法有:- 对于空指针异常,可以通过添加空指针判断来避免。
使用if语句判断对象是否为null再进行操作。
- 对于数组越界错误,需要确保访问数组元素时的索引值在合法范围内。
可以使用条件语句或循环来进行检查。
3. 调试问题在调试Java程序时,可能遇到程序无法正常运行或结果不符合预期的情况。
以下是一些解决方法:- 使用调试工具,如Eclipse、IntelliJ IDEA等,设置断点进行代码逐行调试。
通过观察变量的值和程序执行流程,可以找到问题所在。
- 添加日志输出语句,可以帮助我们查看程序在执行过程中的状态,从而找到错误原因。
- 使用try-catch块捕获异常,并在异常处理代码中添加适当的逻辑,以保证程序的正常运行。
4. 环境配置问题在进行Java实验时,可能需要进行一些环境配置,如设置类路径、引入第三方库等。
解决环境配置问题的方法有:- 确认所使用的开发工具是否已正确配置,并且已安装Java JDK和相应版本的JRE。
- 检查类路径是否正确设置,确保能够正确引用所需的库文件。
java上机实验报告

Java与面向对象程序设计上机报告第一题:修改第五章中StyleOptions程序,允许用户指定字体大小,用单行文本框得到字体大小。
源程序:import javax.swing.*;import java.awt.*;import java.awt.event.*;public class StyleOptionsPanel extends JPanel{private JLabel saying,inputLabel,resultLabel;private JCheckBox bold, italic;private JTextField num;public StyleOptionsPanel(){String numStr;inputLabel=new JLabel("Font Size:");num=new JTextField(8);num.addActionListener(new TempListener());saying = new JLabel ("Say it with style!");saying.setFont (new Font ("Helvetica", Font.PLAIN, 36));bold = new JCheckBox ("Bold");bold.setBackground (Color.green);italic = new JCheckBox ("Italic");italic.setBackground (Color.green);StyleListener listener = new StyleListener();bold.addItemListener (listener);italic.addItemListener (listener);add (saying);add (bold);add (italic);add(inputLabel);import javax.swing.JFrame;public class StyleOptions{public static void main (String[] args){JFrame frame = new JFrame ("Style Options");frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);StyleOptionsPanel panel = new StyleOptionsPanel();frame.getContentPane().add (panel);frame.pack();frame.setVisible(true);}}运行情况及结果截图:完成情况说明:第二题:PP6.1 修改第四章的Account类,使其也允许仅使用账户名和账号建立账户,并假设初始余额为0。
山建java上机实验报告及答案

实验二:Java基本语法练习之迟辟智美创作一、实验目的及任务熟悉Java法式结构,掌握基本数据类型的使用方法,熟练运用分支、循环的使用方法.二、实验环境主机把持系统为Windows2000或Windows XP,已经配置好的JDK及Java编纂软件UltraEdit、Editplus或者TextPad 等软件中一种或多种.三、实验步伐1、使用Java编纂软件验证教材例题,参照教材对例题进行编写、编译并执行.2、课下在实验陈说纸上编写以下法式,并在上机课时编译并执行你所编写的法式,将编译及执行结果写在实验陈说纸上.1)设i是一个整数类型变量,写出下列问题对应的法式.(1)判断i为奇数或偶数;(2)判断i的值是否在0~9之间.public class Shu {public static void main(String[] args) {Scanner input = new Scanner(System.in);int i;System.out.println("请输入一个整数:(按回车)");i = input.nextInt();if(i % 2==0){System.out.println(i+"是一个偶数.");}elseSystem.out.printf(i+"是一个奇数.");if(0<=i&&i<=9){System.out.println(i+"在0~9之间");}elseSystem.out.println(i+"不在0~9之间");}}2)设ch是一个字符变量,写出下列问题对应的法式.(1)判断ch是一个十进制的数字字符;(2)判断ch是一个英文字母,不论年夜写或者小写;(3)将一个十进制的数字字符ch转换成对应的整数类型值.public class fun{public static void main(String[] args){char ch='A';if(ch>='0' && ch<='9'){System.out.println(ch+"是十进制数字符\n");}else if(ch>='a' && ch<='z'){System.out.println(ch+"是小写字母\n");}else if(ch>='A' && ch<='Z'){System.out.println(ch+"是年夜写字母\n");}}}public class haha2 {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubchar a='h';if((a>=65 && a<=90)||(a>=97 && a<=122)){ System.out.println("a是字母");}if(a>=48 && a<=57){System.out.println("a是数字");}System.out.println("a转化为整形是"+(a+0));}}3、输出下列数字形式:11 2 11 2 3 2 11 2 3 4 3 2 1public class haha3 {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubint[][] a=new int[4][7];for(int i=0;i<4;i++){a[i][3]=i+1;a[i][2]=a[i][4]=i;a[i][1]=a[i][5]=i-1;a[i][0]=a[i][6]=i-2;for(int j=0;j<7;j++){if(a[i][j]>=1)System.out.print(a[i][j]);else{if(j==6){System.out.println(" ");}else{System.out.print(" ");}}}}}}四、实验陈说内容1、步伐2中所编写的法式,并将执行结果写在实验陈说纸上.实验三:数组和字符串练习一、实验目的及任务掌握Java数组、字符串的使用.二、实验环境主机把持系统为Windows2000或Windows XP,已经配置好的JDK及Java编纂软件UltraEdit、Editplus或者TextPad 等软件中一种或多种.三、实验步伐1、使用Java编纂软件验证教材例题,参照教材对例题进行编写、编译并执行.2、课下在实验陈说纸上编写以下法式,并在上机课时编译并执行你所编写的法式,将编译及执行结果写在实验陈说纸上.1)设一个一维数组的元素值为:7 4 8 9 1 5,请输出具有以下内容的方阵:2)找出两个字符串中所有共同的字符.public class e32 {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubString a="hf",b="hfhh";for(int i=0;i<a.length();i++){for(int j=0;j<b.length();j++){if(a.charAt(i)==b.charAt(j)){System.out.print(b.charAt(j));}}}}}3)读入一个字符串str,判断其是否为标识符. import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;public class e33 {public static void main(String[] args) {BufferedReader str=new BufferedReader( new InputStreamReader(System.in));try {String a=str.readLine();} catch (IOException e) {e.printStackTrace();}}}public class e3 {/*** @param args*/public static void main(String[] args) { // TODO Auto-generated method stubint[] a={7,4,8,9,1,5};for(int i=0;i<a.length;i++){System.out.print(a[i]);}System.out.println();System.out.print(a[5]);for(int i=0;i<a.length-1;i++){System.out.print(a[i]);}System.out.println();System.out.print(a[4]);System.out.print(a[5]);for(int i=0;i<a.length-2;i++){System.out.print(a[i]);}System.out.println();for(int i=3;i<a.length;i++){System.out.print(a[i]);}System.out.print(a[0]);System.out.print(a[1]);System.out.println(a[2]);for(int i=2;i<a.length;i++){System.out.print(a[i]);}System.out.print(a[0]);System.out.println(a[1]);for(int i=1;i<a.length;i++){System.out.print(a[i]);}System.out.println(a[0]);}}3、提高练习.根据题意边思考边将法式使用Java编纂软件编写出来.题意:读入一个浮点数值,将其转化为中文金额的年夜写方式,如123.45,转化为:壹佰贰拾叁元肆角伍分.编写法式实现题意并调试通过,针对以下多种数据情况下进一步完善法式.1)当金额为整数时,只暗示整数部份,省略小数部份,并添加“整”字.如123暗示为壹佰贰拾叁元整.2)当金额中含有连续的0时,只需写一个“零”即可.例如,10005暗示为:壹万零伍元整. 3)10的暗示方式.例如,110暗示为:壹佰一拾元整,而10暗示为拾元整.金额的中文年夜写方式.四、实验陈说内容1、步伐2、3中所编写的法式及其编译及执行结果写在实验陈说纸上.实验四:类和对象法式设计一、实验目的及任务理解面向对象封装性、继承性和多态性的基本概念,掌握声明类、封装类、继承类以及运行时多态性的实现方法.二、实验环境主机把持系统为Windows2000或Windows XP,已经配置好的JDK及Java编纂软件UltraEdit、Editplus或者TextPad 等软件中一种或多种.三、实验步伐1、使用Java编纂软件验证教材例题,参照教材对例题进行编写、编译并执行.2、课下在实验陈说纸上编写以下法式,并在上机课时编译并执行你所编写的法式,将编译及执行结果写在实验陈说纸上.1)界说一个类People,成员变量有姓名、出身日期、性别、身高、体重等,成员方法有计算年龄,并创立该类的对象. public class People {String name;String birth;String sex;Double hight;double weight;public People(){}public void age(){System.out.print(2012-Integer.parseInt(birth));}/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubPeople p=new People();}}2)设已有类声明如下:public class Date1{int year, month, day;public void tomorrow() { }public void yestoday() { }}请写出实现其中tomorrow()方法和yestoday()方法的代码. public class Date1 {/*** @param args*/int year, month, day;public void tomorrow() {day++;System.out.println(year+":"+month+":"+day);}public void yestoday() {day--;System.out.println(year+":"+month+":"+day);}public static void main(String[] args) {// TODO Auto-generated method stub}}3)设计Number类(1)设计一个类Number1,有一个方法:求n的阶乘.(2)设计一个类Number2 ,它是Number1的子类,它有一个方法:求1+2+3+…+n.public class Number1 {int n;public int jiecheng(int n){int result;if(n==0){return 1;}else{return jiecheng(n-1)*n;}}/*** @param args*/public static void main(String[] args) { // TODO Auto-generated method stubNumber1 a=new Number1();System.out.print(a.jiecheng(4));}}public class Number2 {public void sum(int n){System.out.print(n*(n+1)/2);}/*** @param args*/public static void main(String[] args) { // TODO Auto-generated method stubNumber2 a=new Number2();a.sum(4);}}3、提高练习.根据题意边思考边将法式使用Java编纂软件编写出来.题意:设计银行账户类及存取款把持方法.设计一个银行账户类,其中包括:1)账户信息:账号、姓名、开户时间、身份证号码等.2)存款方法.3)取款方法.银行账户类声明为public,其中的功效变量声明为private,方法声明为public.public class Bank {private String name;private String bankno;private String idno;private String time;private static double moneny;public void add(double savemoney){this.moneny=this.moneny+savemoney;}public void fetch(double fetchmoney){this.moneny=this.moneny-fetchmoney;}/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stub}}四、实验陈说内容1、步伐2、3中所编写的法式及其编译及执行结果写在实验陈说纸上.。
JAVA实验7

浙江经贸职业技术学院实训报告系部______________ 班级____________ 姓名____________ 学号_______________日期______________ 地点____________ 指导教师_____________ 成绩实验七JAVA 面向对象编程(3)【实验目的】1.掌握JAVA语言类的定义和使用。
2.掌握JAVA语言对象的声明和使用。
3.掌握JAVA语言构造方法的概念和使用。
4.掌握类及其成员的访问控制符的区别和使用。
【预习内容】1. JAVA 类的定义格式;2.JAVA对象的使用三步骤:声明、创建以及初始化;3.访问控制修饰符:public、private和protected的功能和区别;4.JAVA构造方法的概念和特点;5.JAVA多态的概念,及重载和覆盖的区别;【实验内容及步骤】1.上机验证题1.阅读下面的程序,在main()方法里添加语句完成如下功能:(1)创建一个MyValue类的对象myValue.(2)为myValue对象中的value域赋值10。
(3)使用getVaule()方法获得myValue对象中的数据并将它打印在屏幕上。
class MyValue {private int value;public void setValue(int x) {value = x;}public int getValue() {return value;}}public class UseValue {public static void main(String args[]) {MyValue myvalue = new MyValue();myvalue.setValue(10);System.out.println(myvalue.getValue());}}[程序运行过程]2.(1)程序功能:通过LX7_1_P类产生子类LX7_2,其不仅具有父类的成员变量xm(姓名)、xh(学号),还定义了新成员变量xy(学院)、xi(系)。
Java上机实验报告(3)

Java上机实验报告(3)任务简要描述⼀、⼀、任务简要描述1、集合类的使⽤举例Collection接⼝ Collection是最基本的集合接⼝,⼀个Collection代表⼀组Object,即Collection的元素(Elements)。
⼀些 Collection允许相同的元素⽽另⼀些不⾏。
⼀些能排序⽽另⼀些不⾏。
Java SDK不提供直接继承⾃Collection的类,Java SDK提供的类都是继承⾃Collection的“⼦接⼝”如List和Set。
所有实现Collection接⼝的类都必须提供两个标准的构造函数:⽆参数的构造函数⽤于创建⼀个空的Collection,有⼀个 Collection参数的构造函数⽤于创建⼀个新的Collection,这个新的Collection与传⼊的Collection有相同的元素。
后⼀个构造函数允许⽤户复制⼀个Collection。
如何遍历Collection中的每⼀个元素?不论Collection的实际类型如何,它都⽀持⼀个iterator()的⽅法,该⽅法返回⼀个迭代⼦,使⽤该迭代⼦即可逐⼀访问Collection中每⼀个元素。
典型的⽤法如下:1 Iterator it = collection.iterator(); // 获得⼀个迭代⼦2 while(it.hasNext()) {3 Object obj = it.next(); // 得到下⼀个元素 由Collection接⼝派⽣的两个接⼝是List和Set。
List接⼝ List是有序的Collection,使⽤此接⼝能够精确的控制每个元素插⼊的位置。
⽤户能够使⽤索引(元素在List中的位置,类似于数组下标)来访问List中的元素,这类似于Java的数组。
和下⾯要提到的Set不同,List允许有相同的元素。
除了具有Collection接⼝必备的iterator()⽅法外,List还提供⼀个listIterator()⽅法,返回⼀个 ListIterator接⼝,和标准的Iterator接⼝相⽐,ListIterator多了⼀些add()之类的⽅法,允许添加,删除,设定元素,还能向前或向后遍历。
JAVA上机实验参考分析

《JAVA上机实验参考》目录实验一JDK开发工具 (1)向生成的源文件中添加代码 (4)编译并运行程序 (5)构建并部署应用程序 (6)实验二Java语言基础 (7)实验三控制语句 (10)实验四类与对象 (11)实验五接口、包与泛型 (12)实验六字符串处理 (16)实验七异常处理 (18)实验八输入与输出处理 (21)实验九多线程 (23)实验十Applet (25)实验十一Swing图形界面设计 (28)实验一JDK开发工具一、实验目的1.熟悉JDK开发环境。
2.熟悉Netbeans IDE的使用。
二、实验内容要学完本教程,您需要具备以下软件和资源。
软件或资源要求的版本NetBeans IDE版本7.2、7.3、7.4 或8.0Java 开发工具包(JDK)版本6、7 或8设置项目要创建IDE 项目,请执行以下操作:1. 启动NetBeans IDE。
2. 在IDE 中,选择"File"(文件)> "New Project"(新建项目),如下图所示。
3. 在新建项目向导中,展开"Java" 类别,然后选择"Java Application"(Java 应用程序),如下图所示。
然后,单击"Next"(下一步)。
4. 在向导的"Name and Location"(名称和位置)页中,执行以下操作(如下图所示):•在"Project Name"(项目名称)字段中,键入HelloWorldApp。
•将"Use Dedicated Folder for Storing Libraries"(使用专用文件夹存储库)复选框保留为取消选中状态。
•在"Create Main Class"(创建主类)字段中,键入helloworldapp.HelloWorldApp。
java实验报告实验1答案

实验一熟悉NetBeans IDE 平台,开发环境及Java编程实验目的:1、我们使用的开发平台是NetBeans IDE,希望通过本次实验同学们能对NetBeans IDE 的开发环境有一个清楚的了解并能熟练运用,对Java语法进行初步运用,对面向对象的编程有一个直观的认识和深入理解,对于Java的基础知识进行理解运用和巩固。
为以后的实验中能够进行开发程序打下基础。
2、通过编程和上机实验理解Java语言是如何体现面向对象编程基本思想,了解类的封装方法,以及如何创建类和对象,了解成员变量和成员方法的特性,掌握OOP方式进行程序设计的方法,了解类的继承性和多态性的作用。
实验内容:● 1. 编写一个体现面向对象思想的程序。
● 2. 编写一个创建对象和使用对象的方法的程序。
● 3. 编写一个显示当前日期和时间的程序。
● 4. 编写不同成员变量修饰方法的程序。
● 5. 编写不同成员方法修饰方法的程序。
● 6. 编写体现类的继承性(成员变量、成员方法、成员变量隐藏)的程序。
●7. 编写体现类的多态性(成员方法重载、构造方法重载)的程序。
实验步骤:●双击桌面上的NetBeans IDE 6.5.1快捷方式或在文件菜单中打开它。
图1-1点击文件,创建新项目,创建一个项目名:experiment1。
点击按钮下一步:在项目名称处输入:experiment1 然后点击完成:在experiment1 下实现程序项目experiment1样例1:编写应用程序输出如下三角形。
****************【参考程序】public class Star{public static void main(Stringa[]){System.out.println(" *");System.out.println(" ***");System.out.println(" *****");System.out.println("*******");}}程序运行结果如图1-2所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
protected double y;
public double r;
Circle(double r){
this.r=r;
}
void setRadius(double r){
this.r=r;
}
double getRadLeabharlann us(){return r;
}
double getArea(){
return (3.14*r*r);
}
double getCircumference(){
return 3.14*2*r;
}
void setCenter(double x,double y){
this.x=x;
this.y=y;
}
double getCenterx(){
return x;
}
double getCentery(){
public class Circle {
double s,r;
static double pi=3.14159265;
public Circle(double r){
this.r=r;
}
double getArea(){
this.s=pi*r*r;
return s;
}
public static void main(String[] args) {
第一步编写
import java.awt.*;
import java.applet.*;
public class MyApplet extends Applet{
public void paint(Graphics g){
g.drawString("我一边听音乐,我一边做java",25,25);
}
在主方法中产生半径为5的圆。
interface ShapePara {
double getArea(double r);
double getCircumference(double r);
}//注:Circle是在接口中建立的calss,即先建立接口,在建立接口的类
class Circle implements ShapePara{
Circle c1=new Circle(3);
Circle c2=new Circle(5.5);
System.out.println(c1.getArea());
System.out.println(c2.getArea());
}
}
实验三 类的继承和多态性
1.(1)编写一个接口ShapePara,要求: 接口中的方法: int getArea():获得图形的面积。int getCircumference():获得图形的周长
}
第二步在DOS环境中编译(....javac MyApplet.java)
第三步使用记事本编写
<applet code=MyApplet.class height=200 width=120>
</applet>
第四步将记事本文件名命名为MyApplet.html
第五步打开MyApplet.html
包含的方法有:
Circle(double radius) 有参构造方法。以形参表中的参数初始化半径,圆心为坐标原点。 double getRadius():获取半径为方法的返回值。void setCenter(double x, double y):利用形参表中的参数设置类Circle的圆心坐标。void setRadius(double radius):利用形参表中的参数设置类Circle的radius域。
public class Point {
double x,y;
Point(double x,double y){
this.x=x;
this.y=y;
}
double getX(){
return x;
}
double getY(){
return y;
}
void setX(double x){
this.x=x;
实验二 类的定义
1.编写Java应用程序,自定义Point类,类中有两个描述坐标位置的double变量x,y,利用构造方法,实现对Point 对象p1,p2初始化,p1和p2对应坐标分别为(15,20),(10,30);定义方法getX(),getY()分别获得点的横坐标和纵坐标;定义方法setX(),setY()分别获得点的横坐标和纵坐标;并且把p1和p2输出;
}
void setY(double y){
this.y=y;
}
public static void main(String[] args) {
Point p1=new Point(15,20);//初始化
Point p2=new Point(10,30);
System.out.println("横坐标为"+p1.x+"纵坐标为"+p1.y);
JAVA上机实验题答案与解析
实验一 Java程序编程
1.编写一个Java应用程序,输出容为Hello!。
注:文件位置位于e:\2:\Hello.java编译:(1)e:(2)cd 2 (3)javac Hello.java(4)java Hello
2.编写一个Java小应用程序,输出容为我一边听音乐,一边学Java。
System.out.println("横坐标为"+p2.getX()+"纵坐标为"+p2.getY());
}
}
运行结果:横坐标为15.0纵坐标为20.0
横坐标为10.0纵坐标为30.0
2.编写Java应用程序,自定义Circle类,类中有两个double 变量r,s,一个类变量pi,利用构造方法实现对半径是3和5.5的初始化,自定义getArea方法实现圆面积求解;
(2)编写一个圆类Circle,要求:圆类Circle实现接口ShapePara。
该类包含有成员变量:
radius:public 修饰的double类型radius,表示圆的半径。
x:private修饰的double型变量x,表示圆心的横坐标。
y:protected修饰的double型变量y,表示圆心的纵坐标。
return y;
}
}
public class A {
public static void main(String[] args) {
Circle ci=new Circle(5);
ci.setRadius(5);