Java__实验三

Java__实验三
Java__实验三

《Java程序设计》实验报告

目录:

1题目

2目的和要求

3功能说明

4设计流程图

5源程序

6数据结果

7实验心得与体会

1、题目

用户自行定义一个异常,编程创建并抛出某个异常类的实例,运行该程序并观察执行结果。例如:用户密码的合法化验证,要求密码由4-6个数字组成,若长度不落在这个范围或不是由数字组成,抛出自己的异常。

2、目的和要求

熟悉ava的异常机制处理原理,掌握用户自定义异常类,掌握如何抛出异常、捕获并处理异常。

3、功能说明

用户密码的合法化验证,密码由4-6位数字组成,若不在范围内,则抛出“密码超出范围”,若不是数字,则抛出“密码格式错误”,输入密码正确则输出“密码是”。

4、设计流程图

5、源代码

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

class passwordException extends Exception

{

public passwordException()

{

super();

}

public passwordException(String s)

{

super(s);JOptionPane.showMessageDialog(null,s);

}

}

public class WUXING

{

public static String passwordcheck()throws passwordException

{

String str=JOptionPane.showInputDialog(null,"输入密码:");

if(str.length()<4||str.length()>6)

{

throw new passwordException("密码超出范围");

}

else if (!str.matches("\\d+"))

{

throw new passwordException("密码格式错误!!");

}

return str;

}

public static void main(String args[]) {

try{

String password = passwordcheck();

JOptionPane.showMessageDialog(null,"密码是:" + password);

}catch(passwordException e){

e.printStackTrace();

—}

}

}

6、数据结果

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的两个对象并计算两个点坐标的距离。

JAVA 课后实验三

实验三类与对象 1、(1)创建一个Rectangle类,添加两个(private)属性width与height (2)创建一个构造方法,选择width与height为形式参数。 (3)在Rectangle类中添加两个方法计算矩形的周长和面积 2、创建三角形、梯形和圆形的类封装:分别定义三角形、梯形和圆形类,要求每个类中包含构造方法、求周长及面积的方法。最后在主方法main中为三角形、梯形和圆形类创建对象并打印输出各种图形的周长及面积。(一个文件中包含三个class和main) a) Trangle类具有类型为double的三个边,以及周长、面积属性,Trangle类具有返回周长、面积以及修改三个边的功能。另外,Trangle类还具有一个boolean 型的属性,该属性用来判断三个属能否构成一个三角形。 b) Lader类具有类型double的上底、下底、高、面积属性,具有返回面积的功能。 c) Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的

功能。

3、编写下面程序写出运行结果,谈谈成员变量的继承与隐藏,方法的覆盖与重载。

上例内B继承了类A,在子类B中定义变量num2与父类A 同名,故在子类中父类成员变量num2被隐藏,故sum3=10+200=210;同时在子类B中父类A方法sum2()被重写(覆盖),使num2为子类定义值200,故sum4=50+200=250. 这个例子中,B是A的一个子类。其中声明了一个和父类A同名的变量num2,并定义了与之相同的方法sum2,这时在子类B中,父类的成员变量num2被隐藏,程序第25行父类的方法sum2被重载。于是子类对象所使用的变量num2为子类中定义的num2,子类对象调用的方法sum2( )为子类中所实现的方法。 4、理解下面3个类的定义,分析它们之间的关系,写出运行结果。

JavaWeb 实验三

JavaWeb 实验三 一、JSP实验题: P105 例子4-1 P108 例4-2 P109 例4-3 P110例4-4 P111 例4-6 P115 例4-8 P118 例4-9 P124 例4-12 二、mysql实验题 1.创建student和score表 CREATE TABLE student ( id INT(10) NOT NULL UNIQUE PRIMARY KEY , name VARCHAR(20) NOT NULL , sex VARCHAR(4) , birth YEAR, department VARCHAR(20) , address VARCHAR(50) ); 创建score表。SQL代码如下: CREATE TABLE score ( id INT(10) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT , stu_id INT(10) NOT NULL , c_name VARCHAR(20) , grade INT(10) ); 2.为student表和score表增加记录 向student表插入记录的INSERT语句如下: INSERT INTO student VALUES( 901,'张老大', '男',1985,'计算机系', '北京市海淀区'); INSERT INTO student VALUES( 902,'张老二', '男',1986,'中文系', '北京市昌平区'); INSERT INTO student VALUES( 903,'张三', '女',1990,'中文系', '湖南省永州市'); INSERT INTO student VALUES( 904,'李四', '男',1990,'英语系', '辽宁省阜新市'); INSERT INTO student VALUES( 905,'王五', '女',1991,'英语系', '福建省厦门市'); INSERT INTO student VALUES( 906,'王六', '男',1988,'计算机系', '湖南省衡阳市'); 向score表插入记录的INSERT语句如下: INSERT INTO score VALUES(NULL,901, '计算机',98); INSERT INTO score VALUES(NULL,901, '英语', 80);

Java__实验三

《Java程序设计》实验报告 目录: 1题目 2目的和要求 3功能说明 4设计流程图 5源程序 6数据结果 7实验心得与体会 1、题目 用户自行定义一个异常,编程创建并抛出某个异常类的实例,运行该程序并观察执行结果。例如:用户密码的合法化验证,要求密码由4-6个数字组成,若长度不落在这个范围或不是由数字组成,抛出自己的异常。 2、目的和要求 熟悉ava的异常机制处理原理,掌握用户自定义异常类,掌握如何抛出异常、捕获并处理异常。 3、功能说明 用户密码的合法化验证,密码由4-6位数字组成,若不在范围内,则抛出“密码超出范围”,若不是数字,则抛出“密码格式错误”,输入密码正确则输出“密码是”。

— 4、设计流程图 5、源代码 import javax.swing.*; import java.awt.*; import java.awt.event.*; class passwordException extends Exception { public passwordException() { super(); } public passwordException(String s) { super(s);JOptionPane.showMessageDialog(null,s); } } public class WUXING { public static String passwordcheck()throws passwordException { String str=JOptionPane.showInputDialog(null,"输入密码:"); if(str.length()<4||str.length()>6) { throw new passwordException("密码超出范围"); } else if (!str.matches("\\d+")) { throw new passwordException("密码格式错误!!"); } return str; } public static void main(String args[]) { try{ String password = passwordcheck(); JOptionPane.showMessageDialog(null,"密码是:" + password); }catch(passwordException e){ e.printStackTrace();

(完整版)JAVA实验3答案

广东海洋大学学生实验报告书(学生用表) 实验名称实验三. 分支与循环语句课程名称Java程序设计与开发 技术 课程号16232204 学院(系) 信息学院专业计算机科学与技术班级计科 学生姓名学号实验地点钟海楼 04019 实验日期 2015年 9月22日 一、实验目的 (1)学习掌握Java中的if-else if-else多分支语句; (2)学习使用Java 程序中的if-else分支和while循环语句解决问题。 二、实验任务 完成实验三指导上实验1、实验2的实验任务。 三、实验仪器设备和材料 安装有J2SE开发工具的PC机。 四、实验内容和步骤 实验1 回文数 编写一个Java应用程序。用户从键盘输入一个1~9999之间的数,程序将判断这个数是几位数,并判断这个数是否是回文数。 代码如下: Number.java import java.util.Scanner; public class Number{ public static void main(String args[]){ int number=0,d5,d4,d3,d2,d1; Scanner reader=new Scanner(System.in); System.out.println("输入一个1至99999之间的数"); number=reader.nextInt(); if(number>=1&&number<=99999){ d5=number/10000; d4=number%10000/1000; d3=number%1000/100; d2=number%100/10; d1=number%10; if(d5!=0){ GDOU-B-11-112

java实验报告实验3答案

实验三熟悉常用java工具包并运用编程 实验目的: 本实验旨在巩固同学们对上课所讲java.util工具包中Collection,List,Set,Map加深理解,对其用法编程有一个更加深入的理解,为同学们以后的能够用Java进行独立地编写桌面程序打下一定的基础。 实验内容: 本实验的内容为:用Collection,List,Set,Map来存储数据,并进行排序,任何用Iterator,ListIterator或者Enumeration来打印其结果(按顺序和降序排列打印)。共分为四部分部分(前三部分必做,如果选第四个,前三个可以不做。。): (1)按顺序把1,10,5,7,6,2,9,20,14,存入到List中(注:允许自己自定义任何数),并对其进行排序,打印其升序和降序排列的结果。然后再向List中位置为第四位插入数35看看会有啥结果?再向List中插入字符串“ddy”,试猜想排序是否会出错?然后看看运行结果是啥? 程序: import java.util.*; public class SY3 { public SY3() { List list=new ArrayList(); list.add(1); list.add(10); list.add(5); list.add(7); list.add(6); list.add(2); list.add(9); list.add(20); list.add(14); list.add(35); list.add("ddy"); System.out.println("原序列:"); for(int i=0;i<=list.size()-1;i++) { System.out.println(list.get(i)); } System.out.println("新序列"); for(int i=0;i<=list.size()-1;i++) {

java实验答案全

实验3:Java流程控制及数组 4.编写一个Java Application程序,输出区间[200,300]上的所有素数,要求写出程序的运行结果。 实验4:Java类与对象 1.编写一个Java程序片断,以定义一个表示学生的类Student。这个类的属性有“学号”、“班号”、“姓名”、“性别”、“年龄”,方法有“获得学号”、“获得班号”、“获得性别”、“获得姓名”、“获得性别”、“获得年龄”。 2.为类Student增加一个方法public String toString( ),该方法把Student类的对象的所有属性信息组合成一个字符串以便输出显示。编写一个Java Application程序,创建Student类的

3.按下面的要求完成Java Application程序,写出程序的运行结果。 (1)定义一个Java类Point,用来描述平面直角坐标系中点的坐标,该类应该能描述点的横、纵坐标信息及一些相关操作,包括获取点的横、纵坐标,修改点的坐标,显示点的当前位置等。

实验5:Java继承与多态 2.假定根据学生的3门学位课程的分数决定其是否可以拿到学位,对于本科生,如果3门课程的平均分数超过60分即表示通过,而对于研究生,则需要平均分超过80分才能够通过。根据上述要求,请完成以下Java类的设计: (1)设计一个基类Student描述学生的共同特征。 (2)设计一个描述本科生的类Undergraduate,该类继承并扩展Student类。 (3)设计一个描述研究生的类Graduate,该类继承并扩展Student类。 (4)设计一个测试类StudentDemo,分别创建本科生和研究生这两个类的对象,并输出相

实验三 Java面向对象高级编程

实验三Java面向对象高级编程 一、实验目的 1. 掌握Java 面向对象编程技术 2. 能够使用继承创建子类并实现方法覆盖 3. 能够创建异类集合并使用多态 4. 能够创建抽象类和接口,并探究它们的多态特性 二、预备知识 1. JDK的安装设置:JDK/JRE/JVM; 2. Eclipse集成开发环境的绿色安装; 3. 掌握Java语言的面向对象特性(封装性、继承性、多态性); 4. 掌握Java语言的抽象类和接口。 三、实验描述 1. 实验类型:设计 2. 实验学时:4学时 3. 实验内容:2项(参照四) 四、实验内容 (1) 检查所使用的计算机系统: 1. 确认是否已安装JDK,并确认系统的环境变量设置; 2. 确认是否已绿色安装Eclipse集成开发环境。 (2) 实验内容一:使用继承和方法覆盖创建子类,并能够创建异类集合并使用多态 具体要求: 1. 在上述银行项目中,创建Customer类: ·位于包:com.mybank.domain中; ·向Customer类添加四个实例变量:firstName,lastName,accounts(Account对象数组,长度为10)和numberOfAccounts(记录accounts数组索引的一个整数); ·添加一个公有构造方法:两个形式参数firstName,lastname,用于初始化客户姓名、创建accounts数组和初始化accounts数组元素个数numberOfAccounts; ·添加getFirstName方法:该方法返回客户的firstName实例变量; ·添加getLastName方法:该方法返回客户的lastName实例变量; ·添加addAccount方法:该方法有一个形式参数(即Account对象),数组的下标通过实例变量numberOfAccounts实现递增,同时将该参数对象存储在accounts数组中; ·添加getNumberOfAccounts方法:该方法返回numberOfAccounts实例变量; ·添加getAccount方法:该方法返回与指定的index数组下标相关的帐户对象。 2. 创建SavingsAccount类,该类是Account类的子类: ·位于包:com.mybank.domain中; ·向SavingsAccount类中添加interestRate实例变量; ·添加一个有两个参数的公有构造方法:initBalance和interestRate。调用父类构造方法传递initBalance参数,并初始化实例变量interestRate; ·添加accumulateInterest方法:用于计算客户的利息。

Java实验三实验报告1

淮海工学院计算机工程学院实验报告书 课程名:《Java语言实验与课程设计指导》 题目:实验3——深入面向对象编程 班级: 学号: 姓名:

实验题目: 1.定义一个学生类,定义一个大学生类和小学生类,这两个类是学生类的子类;定义 一个选课接口,由大学生类实现该接口,定义一个年龄异常处理,当小学生年龄小于7岁时,弹出异常。 2.定义一个银行卡类,定义一个信用卡类和普通银行卡类,这两个类是银行卡类的子 类;定义一个透支的接口,信用卡可以透支,普通银行卡不可以透支。定义一个取款异常和透支异常,当普通银行卡取款超过银行卡余额时,弹出“取款异常”;当信用卡透支超过2万元时弹出“透支异常”。 实验代码: 题1源代码: import java.awt.*; class student { String number,name,sex,bj; int age; student(String xuehao,String xingming,String xingbie,int nianling,String banji) { number=xuehao; name=xingming; sex=xingbie; age=nianling; bj=banji; } } interface xuanke { abstract void select(String s); } interface illegal { abstract void illegal(int s); } class primary extends student implements illegal { String xx; primary(String xuehao,String xingming,String xingbie,int nianling,String banji,String xiaoxue) { super(xuehao,xingming,xingbie,nianling,banji);

Java实验三

《Java技术》实验报告 实验三:2019 年10 月

的数量=发货单中的数量),记录发货信息到Shipping.txt中。注意:Inventory.txt中的quantity不应该小于0,如果对于某一种货物,库存的数量小于发货单的数量的话,系统应该停止处理发货单,并记录出错信息到Errors.txt。如果对于某一种货物有多个发货单,而且库存总量小于这些发货单的总和的话,系统应该按照发货单中的数量从小到大的有限原则满足客户。也就是说,对于某一种货物如果一个数量Quantity少的发货单没有处理之前,数量Quantity多的发货单永远不会被处理。(这种处理原则不受发货单记录在Transactions.txt的先后顺序影响) 6.以'R'开头的事务表示这是一个到货单记录,在'R'后面是Item number和它的数量Quanlity。处理一条到货单意味着增加库存中相应货物的数量(增加的数量=到货单中的数量)。注意:如果在Transactions.txt文件中,到货单出现在发货单之后,到货单中的货物数量可以用来填补发货单中的数量(可以理解成在Transactions.txt中,优先处理到货单)。 7.以'A'开头的事务表示向库存中增加一种新的货物(即这种货物以前库存中没有),在'A'后面是Item number,供应商supplier以及货物的描述description。处理一个新增货物记录意味着向库存中增加一个数量Quantity为0的新的Item。你可以假设在一个Transactions.txt中,新增货物记录总是出现在第一个到货单之前。 8.以'D'开头的事务表示从库存中删除一种货物,在'D'后面是Item号。删除操作总是在所有的事物处理之后才被处理,以保证对于可能出现的同一种货物的发货单的操作能在删除之前被正确处理。如果要删除的某种货物的库存量Quantity不为0的话,系统应该向Errors.txt记录出错信息。 9.文件Shipping.txt中的每一行代表给某一客户的发货信息。Shipping.txt中的每一行分别是客户编号、Item号、货物数量,它们之间用tab键分隔。如果发货单中有两条客户编号和Item编号一样的记录,在Shipping.txt中应该将这两条发货信息合并(即将它们的数量相加)。 10.Errors.txt文件包含未发送的发货记录和库存量大于0的删除记录。Errors.txt 每一行包含Custom编号、Item编号以及发货单上的数量Quantity。对于删除操作,Custom 编号为0,数量Quntity为库存中的Quantity. 11.实验测试数据: Inventory.txt Transactions.txt .

Java实验3

实验3 常用类(2学时) 一、实验目的 1.熟悉Java中的String、StringBuffer、Math、包装器类、Scanner类的使用方法。 2.使用常用类解决一般性的应用问题。 3.掌握JavaSE API文档的使用方法。 二、实验内容 1.编写一个Java应用程序。用户从键盘输入一个整数,程序将判断这个数是几位数并输 出其位数,并判断这个数是否是回文数(是,则输出“是回文数”,否则输出“不是回文数”)。回文数是指将该数含有的数字逆序排列后得到的数和原数相同,例如12121、3223都是回文数。要求:定义两个方法,一个用于获取一个整数的位数,一个用于返回一个整数是否为回文数。 2.编写一个程序,由用户从键盘输入一个字符串,程序输出该字符串中的大写英文字母数, 小写英文字母数以及非英文字母数。(用户键盘输入用Scanner类实现) 3.在安排教师监考时,需要从一组教师中随机选取n个教师参加监考。要求实现一个类 RandomTeacher的静态方法public static String[] getRandomTeachers(String[] teachers, int n),能够从teachers中随机选择n个教师(名字)并返回。 4.假设某餐馆中每桌顾客点菜记录的格式为“北京烤鸭:189 西芹百合:15 清蒸鲈鱼: 80”。编写一个类的方法,能够根据点菜内容对应的字符串输出点菜记录中每种菜的价格以及总的价格。 5.编写一个方法,返回一个double型的二维数组,数组中的元素通过解析字符串参数获 得。例如,字符串参数:“1,2;3,4,5;6,7,8”,对应的数组为: d[0,0] = 1.0 d[0,1] = 2.0 d[1,0] = 3.0 d[1,1] = 4.0 d[1,2] = 5.0 d[2,0] = 6.0 d[2,1] = 7.0 d[2,2] = 8.0 三、实验要求 完成程序设计并提交代码。

JAVA实验3

《面向对象程序设计》实验三 1. 下面每个程序都有一行错误代码(在/******found*******/下)。请按要求改正并调试程序,使之正确运行。必须在原来位置修改,不得增加或删减程序行。 ⑴修改错误的代码行,使程序的运行结果为:k=7 i=-1。 【程序】 class Aaa { public static void main(String args[]) { /********found********/ long l = 0x7ffffffff; long k = l >>> 32; int i = (int)l; System.out.println("k=" + k + " i=" + i); } } ⑵类Bbb中有两个成员变量month和num,分别表示一份订单签订的月份和数量。方法method的功能是:若订单是在一季度或四季度签订的,且数量在20以上,则返回1;否则返回0。请修改错误的代码行。 【程序】 class Bbb { int month, num; public void set(int m, int n) { month = m; num = n; } public byte method() { byte x; /*************found*************/ x = month<=3 | month>=9 & num>20 ? 1 : 0; return x; } } class TestBbb { public static void main(String args[]) { Bbb o = new Bbb(); o.set(2,15); System.out.println(o.method()); } } ⑶修改错误的代码行,使程序运行时能输出以下结果: x=10 a=11 b=20 x=20 a=11 b=21 【程序】

java实验三

实验三 实验项目一 实验目的:掌握Java中包的使用。 实验要求:建立CircleUtil.java和ImportDemo.java两个源文件,编译源文件并运行主类。具体要求如下: (1)在命令窗口编译以上源文件,生成的字节码文件均存放在当前目录下。 (2)在命令窗口编译以上源文件,生成的字节码文件均存放在当前目录下的classes文件中 (需要事先在当前目录下手动建p立classes文件夹)。 (3)在命令窗口编译源文件CircleUtil.java,将生成的字节码文件存放在当前目录下的classes 文件中;编译源文件ImportDemo.java,将生成的字节码文件存放在当前目录下。

补充练习: 如果将CircleUtil类的public去掉,编译时会出现什么错误? 实验项目二 实验目的:掌握对象的组合及引用型参数。 实验要求:编写一个Java应用程序,用类描述计算机中CPU的速度和硬盘的容量。具体要求如下: 要求Java应用程序有4个类,名字分别是PC,CPU和HardDisk和Test,其中Test是主类。PC类与CPU和HardDisk类关联的UML图如下图所示。

其中,CPU类要求getSpeed()返回speed的值;要求setSpeed(int m)方法将参数m的值赋值给speed。 HardDisk类要求getAmount()返回amount的值,要求setAmount(int m)方法将参数m的值赋值给amount。 PC类要求setCUP(CPU c) 将参数c的值赋值给cpu,要求setHardDisk (HardDisk h)方法将参数h的值赋值给HD,要求show()方法能显示cpu的速度和硬盘的容量。 主类Test的要求: ①main方法中创建一个CPU对象cpu,cpu将自己的speed设置为2200, ②main方法中创建一个HardDisk对象disk,disk将自己的amount设置为200, ③main方法中创建一个PC对象pc, ④pc调用setCUP(CPU c)方法,调用时实参是cpu, ⑤pc调用setHardDisk (HardDisk h)方法,调用时实参是disk, ⑥c调用show()方法。

Java实验三Microsoft_Word_文档

Java面向对象程序设计实验报告 课程名称Java面向对象程序设计实验名称继承与接口 学院计算机专业班级计Y126 姓名 xxxx _学号20120040300 实验日期:2014 年 4月17 日 一.实验目的 1.让学生巩固子类的继承性,子类对象的创建过程以及方法的继承与重写。 2.让学生掌握上转型对象的使用,理解不同对象的上转型对象调用同一方法可能产生不同的行为,即理解上转型对象在调用方法时可能具有多种形态。 3.让学生掌握面向接口编程思想。 二.实验内容 (一)实验题目 编写程序模拟中国人、美国人、北京人。除主类外,程序中有四个类:People、ChinaPeople、AmericanPeople、BeijingPeople类。要求如下: (1)People类有权限是protected的double型成员变量:height和weight,以及public void speakHello()、public void averageHeight()、public void averageWeight()方法。 (2)ChinaPeople类是People的子类,新增了public void chinaGongfu()方法。要求ChinaPeople重写public void speakHello()、public void averageHeight()、public void averageWeight()方法。 (3)AmericanPeople类是People的子类,新增了public void americanBoxing()方法。要求AmericanPeople重写public void speakHello()、public void averageHeight()、public void averageWeight()方法。 (4)BeijingPeople类是People的子类,新增了public void beijingOpera()方法。要求AmericanPeople重写public void speakHello()、public void averageHeight()、public void averageWeight()方法。 1部分代码 public void averageWeight(){ //代码1 重写averageWeight()方法 weight=65; System.out.println("中国人的平均体重:"+weight+"公斤"); }

java实验三

《Java 语言程序设计》实验报告(三) 实验名称:___________指导教师:_______实验日期:___________ 专业:________________班级:___________姓 名:___________ Java 流程控制 张鑫 2015-10-9 电子商务 电子商务1302 李鸿儒

三、实验结果与结论:(经调试正确的源程序(核心部分)和程序的运行结果)Demo2_6.java程序执行结果如图1所示: 图1 Demo2_7.java程序执行结果如图2所示: 图2 Sum.java程序执行结果如图3所示: 图3 FindMinimalK.java程序执行结果如图5所示: 图5 Demo2_10.java程序执行结果如图7所示: 图7 1、求解0至100之间所有偶数的和。 Sum3_1.java源程序如下:

public class Sum3_1{ public static void main(String args[]){ int sum=0,i; for(i=0;i<=100;i++){ if(i%2==0) sum=sum+i; } System.out.println("0~100之间所有偶数的和为:"+sum); } } Sum3_1.java程序执行结果如图8所示: 图8 2、打印小于1000的斐波纳契数。 Fibonacci3_2.java源程序如下: public class Fibonacci3_2{ public static void main(String args[]){ int f1=1,f2=2,f3; f3=f1+f2; System.out.print("小于1000的斐波纳契数:"+f1+" "+f2); while(f3<1000){ f3=f1+f2; f1=f2; f2=f3; System.out.print(" "+f3); } } } Fibonacci3_2.java程序执行结果如图9所示: 图9

JAVA实验三

实验三 2、用类封装一个类:银行卡类,要求实现以下方法:存钱、取钱、查询、转帐、消费。package com.sd; import java.util.Scanner; public class yinhang{ private int money; private Scanner sc=new Scanner(System.in); public yinhang(int money) { this.money=money; } public void cunqian(){ System.out.println("存钱金额是"); int m; m=sc.nextInt(); System.out.println("存钱金额是"+m); money=money+m; System.out.println("当前银行卡钱数是"+money); } public void quqian(){ System.out.println("当前银行卡钱数是"+money); System.out.println("取钱的金额是"); int n; n=sc.nextInt(); System.out.println("取钱的金额是"+n); money=money-n; System.out.println("取钱后银行卡钱数是"+money); } public void chaxun(){ System.out.println("显示银行卡上的钱是"+money); } public void zhuanzhang(){ System.out.println("当前银行卡钱数是"+money); System.out.println("转账的帐号是"); int y; y=sc.nextInt(); System.out.println("转账的帐号是"+y); System.out.println("转账钱数是"); int z; z=sc.nextInt(); System.out.println("转账钱数是"+z); money=money-z; System.out.println("转账后银行卡钱数是"+money);

java实验报告3

甘肃政法学院 本科生实验报告 (三) 姓名: 俞晓 学院: 信息工程学院 专业: 信息管理与信息系统 班级: 2013级信管班 实验课程名称:Java SE程序设计 实验日期: 2015 年 5 月 5 日 指导教师及职称:李瑞生 实验成绩: 开课时间:2104-2015学年第二学期 甘肃政法学院实验管理中心印制

【代码6】//将当前窗口注册为textResult的ActionEvent事件监视器: textResult.addActionListener(this); 【代码7】//判断事件源是否是getProblem: if(e.getSource()==getProblem) 【代码8】//判断事件源是否是giveAnwser: e.getSource()==giveAnwser) 【代码9】//创建窗口,其标题为:算术测试: frame=new ComputerFrame("算数测试"); 运行结果如图所示:

2、信号灯 【代码1】//创建choice: choice=new Choice(); 【代码2】//创建choice添加itemRed: choice.addItem(itemRed); 【代码3】//创建choice添加itemYellow: choice.addItem(itemYellow); 【代码4】//创建choice添加itemGreen: choice.addItem(itemGreen); 【代码5】//将当前窗口注册为choice的ItemEvent事件监视器:choice.addItemListener(this); 【代码6】// choice返回被选中的条目: String item= choice.getSelectedItem(); 运行结果如图所示:

Java实验三 - 实验报告

实验三Java数组和方法应用 一、实验目的 1、掌握数组的定义及使用方法; 2、掌握数组的引用传递; 3、掌握方法及方法的重载。 二、实验学时 2学时 三、实验类型 验证性实验 四、实验需求 1、硬件 每位学生配备计算机一台 2、软件 Windows 7操作系统,JDK,eclipse,MySQL 3、网络 无 4、工具 无 五、实验理论与预备知识 1、数组的定义及使用方法; 2、数组的引用传递; 3、方法及方法的重载。 六、实验内容与结果 1、编程求1!+2!+3!+…+20! 的值并显示,要求使用方法完成。 public class one { public static void main(String[] args) { double n = mults(20); System.out.print("1!+2!+3!+……+20!= "+n); } //定义计算阶乘方法 public static double mults( long x ) { double n=0; long b=1; for(int i=1;i<=x;i++) { for(int j=1;j<=i;j++) { b=b*j; }

n=n+b; } return n; } } 2、输出一个乘法口诀表,需要两层循环。 public class two { public static void main(String[] args) { for(int i=1;i<=9;i++) { for(int j=1;j<=i;j++) { System.out.print(j + "*" + i + "=" + i*j+" "); } System.out.println( " "); } } } 3、编写一个方法,此方法可以将一个整数变为二进制输出。 源代码: import java.util.*; public class three { public static void main(String args[]){ System.out.println("输入一个十进制整数:"); Scanner in =new Scanner(System.in); int a=in.nextInt();//输入一个整数 String s=binary(a); System.out.println("转换后的二进制数为:"); System.out.println(""+s); } //十进制转换二进制 public static String binary(int x){ int n = x; String result = ""; boolean minus = false; while(true){ int remainder = (!minus && n % 2 == 0) || (minus && n % 2 == 1) ? 0 : 1;

Java实验三

课程名称:java程序设计开课实验室: 2012年 11月 21 日年级、专业、班2011级学号姓名成绩 实验项目名称Java面向对象程序设计指导教师张晓丽 教 师 评语 教师签名: 年月日 一、实验目的及内容 目的:掌握Java中面向对象的思想,类和对象的应用,可见性修饰符,数据域的封装, 静态变量和方法,给方法传递对象参数。 内容: 完成下面要求的程序和习题 一.复习题 1.课本P234第八章复习题8.12,给出正确的程序并显示结果,分析错误问题;正确程序: public class Circle{ public static void main(String[] args) { method1(); } public static void method1(){ method2(); } double radius; Circle(){ radius=5.0; } Circle (double newRadius){ radius=newRadius; } public static void method2(){ Circle c=new Circle(); System.out.println("what is radius "+c.getRadius()); } double getRadius(){

return radius; } } 分析:不能从静态方法中调用一个实例方法或引用实例变量,但可以从一个实例方法中调用一个静态方法或引用一个静态变量。 2.课本P235第八章复习题8.16,显示并分析结果; 正确程序: public class Test{ public static void main(String[] args){ Count myCount=new Count(); int times=0; for(int i=0;i<100;i++) increment(myCount,times); System.out.println("count is "+myCount.count); System.out.println("times is "+times); } public static void increment(Count c,int times){ c.count++; times++; } } class Count{ public int count; public Count(int c){ count=c; }

实验三 Java类编程(I)

§3 Java类编程(I) §3、1实验目的、内容及性质 掌握类的定义,类的继承等基本概念。 实验性质:验证、必做 实验学时:2学时 §3、2问题及思考 1、什么就是构造函数,如何调用? 2、类的构造方法名必须与类名相同不? 3、什么就是类属性访问器, 为什么需要? 4、类的访问控制权有哪两种? 5、什么就是包? §3、3实验指导 1、OOP:类的定义(属性与方法组成) class Student{ private String sno; /*属性变量*/ private String sname; private String sdept; /*定义Student类的一些方法*/ 、、、、 } 注意:包的概念package:(将多个类放在一起)。类只有生成对象(实例化),通过对象调用对象方法 Student s;/*声明一个,并未实例化*/ s=new Student();/*实例化*/ Student s2=new Student(); 2 构造函数(形式,作用,如何调用) 1)与类同名,没有任何返回值void都不能写一般访问修饰符public public Student(){ }

2)构造函数一般为了对对象属性赋初始值 public Student(String sno,String sname){ this、sno=sno; this、sname=sname; } 3)构造函数,当类实例化系统首先自动调用相应的构造函数、 Student s1=new Student();//调用无形式参数构造函数 Student s2=new Student(95002,"zhou"); //调用了形式参数为(String,String)构造函数 3 属性set与get方法 /*设置属性的set与get方法*/ public String getSno(){ return sno; } public void setSno(String sno){ this、sno=sno; } public String getSname(){ return sname; } public void setSname(String sname){ this、sname=sname; } 4、函数重载:在一个类中,函数名称相同,但就是形式参数的个数或形参类型不同,这样一组构成函数重载、 public class Shape{ public double area(double r){ return Math、PI*r*r; } public double area(double w,double h){ return w*h; } public double area(double a,double b,double c){ double s=(a+b+c)/2;

相关主题
相关文档
最新文档