java实验报告样本2
实验报告(二)
北京信息科技大学信息管理学院实验报告课程名称java程序设计实验项目实验二类和对象实验仪器PC、jdk、jcreator专业_______ _________班级/学号________ ___学生姓名_______ __________实验日期实验地点成绩_______________________指导教师_____李春强_____________return p;}int getPower(int q){return q;}}Lab2_2:public class TV {void play(){System.out.println("正在播放动物世界");}}public class Family {TV homeTV;void buyTV(TV tv){tv=this.homeTV;System.out.println("购买一台电视");}}public class MainClass {public static void main(String args[]){ TV haierTV=new TV();Family zhangsanFamily =new Family();zhangsanFamily.buyTV(haierTV);haierTV.play();}}Lab2_3:public class Land {public static void main(String args[]){ Village.WaterAmount=200;System.out.println("水井中有水"+Village.WaterAmount+"升");Village v1=new Village();Village v2=new Village();int m=50;System.out.println("v1从水井中取水"+m+"升");v1.WaterAmount-=m;System.out.println("v2发现水井中有水"+Village.WaterAmount+"升");System.out.println("v2从水井中取水"+m+"升");v2.WaterAmount-=m;System.out.println("v1发现水井中有水"+Village.WaterAmount+"升");}}public class Village {public static int WaterAmount;}Lab2_4:import wukong.xiyou.*;public class SunRise{public static void main(String args[]){SquraEquation sq=new SquraEquation();sq.getRoot(100);System.out.println("此数的平方根为"+"sq.getRoot()");}}package java.wukong.xiyou;public class SquraEquation{public double getRoot(double num){ return Math.sqrt(num);}}1.实验名称、实验目的、实验内容、实验要求由教师确定,实验前由教师事先填好,然后作为实验报告模版供学生使用;2.实验准备由学生在实验或上机之前填写,教师应该在实验前检查;3.实验过程由学生记录实验的过程,包括操作过程、遇到哪些问题以及如何解决等;4.实验总结由学生在实验后填写,总结本次实验的收获、未解决的问题以及体会和建议等;5.源程序、代码、具体语句等,若表格空间不足时可作为附录另外附页。
java实验报告(二)
实验报告(二)姓名:学号:日期:2015.4.10实验名称:面向对象编程一、实验目的及要求实验目的:通过编程和上机实验理解Java语言是如何体现面向对象编程基本思想,熟悉类的封装方法以及如何创建类和对象,熟悉成员变量和成员方法的特性,熟悉类的继承性和多态性的作用,熟悉包、接口的使用方法,掌握OOP方式进行程序设计的方法。
实验要求:1、编写程序实现类的定义和使用。
2、编写不同成员和不同成员方法修饰方法的程序。
3、编写体现类的继承性(成员变量、成员方法、成员变量隐藏)的程序和多态性(成员方法重载、构造方法重载)的程序。
4、编写接口的定义和使用的程序。
5、编写包的定义和使用的程序。
二、实验环境Windows XP操作系统,JA V A运行环境实验感想1. java编辑环境中蓝色的是关键字,绿色的是注释,红色的是系统已经定义的包、类或变量; 学习一门语言应该经常性的上机练习,而不是一段时间集中练习几个小时;2. 参数间应该以','隔开;3.java中规定必须要写返回值类型,即Java没有规定方法的默认返回值类型;4. java区分大小写;5. 用户标识第一个字符不应该为数字,Java文件名应该与Java文件内的主类保持一致;6.类只能使用静态方法,对象既可以使用静态方法又可以使用实例方法;静态变量是属于类的,为所有对象共同拥有,实例变量则属于各个对象本身;7.子类的构造方法应通过super()的方式调用父类构造方法;8.在一个类中,方法名可以重名,只要参数不一样就可以了,但变量即使类型不一样,变量名也不能一样;9.在java中,变量必须先要初始化后才能使用;三、实验源程序及运行结果1、(1)定义一个满足如下要求的Date类:a.用下面的格式输出日期:日/月/年b.可运行在日期上加一天操作c.设置日期并用该类编写一个显示当前日期的程序。
class Date1{int date,month,year;public void ShowDate()//以固定格式显示日期{System.out.println(date+"/"+month+"/"+year);}public void AddDate()//在目前日期下加一天{date=date+1;switch(month){ case 1:case 3:case 5:case 7:case 8:case 10:if(date>31){date=date-31;month=month+1;}break;case 12:if(date>31)//当月份为12月31号时,日期加1,年份也应该加1{date=date-31;month=1;year=year+1;}break;case 2: if(this.IsLeapYear())//以是否为闰年为依据进行处理{if(date>29){date=date-29;month=month+1;}}else{if(date>28){date=date-28;month=month+1;}}break;case 4:case 6:case 9:case 11:if(date>31){date=date-31;month=month+1;}break;default:}}public void SetDate(int date,int month,int year)//设置日期{this.date=date;this.month=month;this.year=year;}public Date1(int date,int month,int year)//构造方法{this.date=date;this.month=month;this.year=year;}public boolean IsLeapYear()//判断是否为闰年{boolean x=year%400==0||year%100!=0&&year%4==0;return x;}}public class Test11{public static void main(String args[])//Java文件内的主类只能有一个{Date1 a=new Date1(28,2,2100);System.out.print("目前日期为:");a.ShowDate();a.AddDate();System.out.print("加完一天后的日期为:");a.ShowDate();}}1、(2)创建一个桌子Table类,该类中有桌子名称、重量、桌面宽度、长度及桌子高度属性。
java实验报告 2
实验报告课程:Java 编程技术班级:网络1203班学号:姓名:实验4 面向对象编程一、实验目的通过编程和上机实验理解Java 语言是如何体现面向对象编程基本思想,了解类的封装方法,以及如何创建类和对象,了解成员变量和成员方法的特性,掌握OOP 方式进行程序设计的方法,了解类的继承性和多态性的作用。
二、实验内容1.创建一个名为Dog的类,它具有重载的bark()方法。
bark()方法应根据不同的基本数据类型的参数来进行重载,bark()方法可根据参数输出狗吠(barking)、咆哮(howling)等信息。
编写main()方法来调用不同的bark()方法。
源代码如下:public class Dog {void f(int m){System.out.println("barking!");}void f(double n){System.out.println("hoeling!");}public static void main(String[] args){Dog d=new Dog();d.f(2);d.f(2.2);}}运行界面如下:2.创建Rodent(啮齿动物)类,其子类有Mouse(老鼠)、Mole(鼹鼠)、Hamster(大颊鼠)。
在父类中,提供对所有的Rodent通用的方法。
在子类中,根据该子类特定的行为习性来覆盖这些方法。
例如老鼠属杂食(omnivorous),鼹鼠主食昆虫(insect),大颊鼠主食植物种子(plant seed)。
创建一个Rodent 数组,填充不同的数据类型,然后调用父类的方法,观察会发生什么情况。
源代码如下:public class Rodent {void eat(){System.out.println("zhushi");}public static void main(String[] args){Rodent r[]=new Rodent[4];Rodent rodent=new Rodent();Mouse mouse=new Mouse();Mole mole=new Mole();Hamster hamster=new Hamster();r[0]=rodent;r[1]=mouse;r[2]=mole;r[3]=hamster;r[0].eat();r[1].eat();r[2].eat();r[3].eat();}}class Mouse extends Rodent{void eat(){System.out.println("omniovrous!");}}class Mole extends Rodent{void eat(){System.out.println("insect!");}}class Hamster extends Rodent{void eat(){System.out.println("plant seed!");}}运行界面如下:3.3.修改上述第9题中的Rodent类,使其成为一个抽象类。
JAVA实验报告 (2)
附件2:实验报告封皮2015—2016学年第1学期Java应用程序设计课程实验报告学院:计算机科学技术专业:软件工程班级:14402姓名:邵磊学号:041440230任课教师:王薇实验日期:2015年11月02日实验题目Java简介及开发环境搭建实验内容1.熟悉Java开发环境2.Java程序的编辑和运行实验目的1.熟悉Java开发环境(1)熟悉JDK工具包的下载及安装过程。
(2)掌握JAVA_HOME、CLASSPATH及Path的配置内容。
(3)掌握Java程序运行原理及javac、java命令的使用。
2.Java程序的编辑和运行(1)熟悉用记事本编写Java程序的过程。
(2)了解Java程序的基本结构。
(3)掌握javac及java命令的使用。
(4)熟悉MyEclipse集成开发环境的使用。
实验步骤1.熟悉Java开发环境(1)登录Oracle官方网站Java首页/technetwork/java/index.html并下载最新版JDK工具包。
(2)将JDK工具包安装在D:\java\jdk1.6.0_18\文件夹中。
(3)完成JDK环境配置。
创建JAVA_HOME变量并设置其值为”D:\java\jdkl1.6.0_18”,创建CLASSPATH 变量并设置其值为”D:\java\jdkl1.6.0_18\lib”文件夹中的dt.jar、tools.jar及当前目录,在Path变量原有值的基础上增加”D:\java\jdk1.6.0_18\bin”。
(4)验证JDK是否配置正确。
2.Java程序的编辑和运行(1)创建D:\javaExecise文件夹。
(2)设置显示已知文件夹类型的扩展名。
(3)利用记事本完成Java程序的编写。
(4)利用命令编译运行Javs程序(5)在MyEclipse中编译并运行Java程序实验结果1.熟悉Java开发环境单击【开始】|【运行】命令打开【运行】对话框。
JAVA实验报告(2)
实验报告一、实验目的巩固复习课上所讲内容,进一步熟悉面向对象编程。
二、实验内容编写一个Shape类及其子类,它们代表一些基本的图形,定义一个常量PI。
给出能描述这些图形所必须的属性及必要的方法,包括:Shape类中定义一个求面积和一个求周长的方法,在子类里面重写这两个方法。
三、程序清单及运行结果package homework;public abstract class Shape{String lineColor,fillColor;double pi=3.14;public abstract float calCirum();public abstract float calSquare();public Shape(String lc,String fc){lineColor=lc;fillColor=fc;}public void print(){System.out.println("Linecoler is:"+lineColor+"\tFillcolor is:"+fillColor);}public static void main(String[]args){float radius=1.5f;MyCricle mc=new MyCricle(radius,"black","white");float rWidth=1.0f;float rLong=2.0f;MyRectangle mr=new MyRectangle(rLong,rWidth,"red","blue");System.out.println("显示圆的信息:");System.out.println("圆的周长为:"+mc.calCirum());System.out.println("圆的面积为:"+mc.calSquare());mc.print();System.out.println("矩形的信息:");System.out.println("矩形的周长为:"+mr.calCirum());System.out.println("矩形的面积为:"+mr.calSquare());mr.print();}}class MyCricle extends Shape{float radius;public MyCricle(float radius,String lc,String fc){super(lc,fc);this.radius=radius;}public float calCirum(){return((float)(radius*pi*2));}public float calSquare(){return((float)(radius*radius*pi));}}class MyRectangle extends Shape{float rLong,rWidth;public MyRectangle(float rLong,float rWidth,String lc,String fc){super(lc,fc);this.rLong=rLong;this.rWidth=rWidth;}public float calCirum(){return ((float)(this.rLong+this.rWidth)*2);}public float calSquare(){return ((float)(this.rLong*this.rWidth));}}运行结果:显示圆的信息:圆的周长为:9.42圆的面积为:7.065Linecolor is:black Fillcolor is:white矩形的信息:矩形的周长为:6.0矩形的面积为:2.0Linecolor is:red Fillcoler is:blue四、实验中出现的问题及解决方法问题1:将MyCricle和MyRectangle两个子类和主函数一起写在父类里面,导致整个程序结构混乱,可读性差。
java实验二试验报告
姓名学号:班级:说明:实验2(类的继承,与接口的实现)1. 编一程序,求两个正整数m、n的最大公约数。
要求程序中有两个方法,分别使用循环和递归,最后在主方法中两次求解并输出最大公约数。
截图:代码:public class gcd {public static void main(String[] args) {int a = 6, b = 9;System.out.printf("two nums:%d %d\n", a, b);System.out.println("递归: " + gcd1(a, b));System.out.println("辗转相除: " + gcd2(a, b));}public static int gcd1(int m, int n){return m % n == 0 ? n : gcd1(n, m%n);}public static int gcd2(int m, int n){while(n != 0){int t = m;m = n;n = t % n;}return m;}}2. 使用类编写程序(在程序中定义类,然后在主方法中创建类的对象,并调用该类中的方法,观察所得结果。
)截图:代码:public class Date {public static void main(String[] args) {Date d = new Date();System.out.println(d);d.setYear(2011);d.setMonth(10);d.setDay(3);System.out.println(d);}public Date(){}public Date(int y, int m, int d){year = y; month = m; day = d;}public void setYear(int new_year){ this.year = new_year;} public void setMonth(int m){ this.month = m; }public void setDay(int d){ this.day = d; }public String toString(){return new String("" + year + "/" + month + "/" + day);}public int year = 2000, month = 1, day = 1;}3. 编写一个包含圆类的程序,并为圆类设计几个构造方法,编译并运行它。
java实验2实验报告
reader=new Scanner(System.in); standard=reader.nextLine(); }while(!"no".equals(standard)); } } 四、运行结果与测试分析 1.程序分析: 首先,在 TestException 这个类中除了 main 方法和一个无参数构造函数之外,还有另外 3 个方法:testEx()、testEx1()和 testEx2()。它们的返回值都是布尔型,且都可能抛出异 常。程序从 main 方法开始执行,首先创建了一个 TestException 类的对象 testException1, 然后进入 try 语句块,用对象 testException1 调用函数 testEx,程序开始执行 testEx 函 数的函数体。在函数 testEx 的 try 块中调用了函数 testEx1,于是又转向执行 testEx1 的 函数体,但在它的 try 块中又调用了 testEx2(),于是程序转向执行 testEx2 的函数体。 在 testEx2 的 try 块中的 for 循环中,前两次循环正常执行,分别输出 i=2 和 i=1,但第 三次循环时出错(出现了除数 i 为 0 的情况),抛出异常并被本函数中的 catch 语句捕获, 输出“testEx2,catch exception”,把 ret 的值赋成 false,并抛出原异常,但在离开本 函数之前还要执行 finally 中的语句,于是输出“testEx2,finally; return value=false” 并返回 ret 的值 false,由于 finally 语句中使用了 return 语句,所以导致异常丢失,接 着程序返回 testEx2 的调用者 testEx1 中,由于 testEx2 的返回值为 false,故 testEx1 中的 ret 为 false,if 语句条件为真,返回 false,但在离开 testEx1 之前,要执行 finally 中的语句,于是输出“testEx1,finally; return value=false”并返回 ret 的值 false (由于 finally 语句中使用了 return 语句,所以 try 区域中 return 语句的返回值被覆盖)。 流程转到 testEx 中,由于 testEx1 返回 false,故 testEx 中的 ret 为 false,接着执行 finally 中的语句,输出“testEx,finally;return value=false”并返回 ret 的值 false。 接着流程返回到 main 函数中,程序正常结束。运行结果截图如下:
JAVA实验报告_2
} } 实验三 1.实验要求: 使用 Java 编写控制台应用程序 用户从键盘输入月份,使用 switch 语句输出该月份的天数 如果输入月份为 2 月份,则程序提示让用户输入年份,再输出结果 import java.util.*; public class Experiment3_1 { public static void main(String args[]){ Scanner reader=new Scanner(System.in); int month,day,year; System.out.printf("请用户输入月份:"); month=reader.nextInt(); switch(month){ case 1: case 3: case 5: case 7: case 8: case 10: case 12:System.out.println("本月 31 天");break; case 4: case 6: case 9: case 11:System.out.println("本月 30 天");break; case 2: System.out.printf("请用户输入年份:"); year=reader.nextInt(); if(year%4==0&&year%100!=0||year%400==0){ System.out.printf("本月 29 天"); } else{ System.out.printf("本月 28 天"); } } } } 2.实验要求: 使用 Java 编写控制台应用程序 输出九九乘法表 public class Experiment3_2 { public static void main(String args[]){ for(int i=1;i<=9;i++){
JAVA实验报告_实验2__
Java Object-Oriented Programming Experimental ReportStudent ID Name ClassLocation Teacher Time1.Experimental purposes and requirements1.1 Print and println, String literals, String concatenation, Escape sequences1.2 Variables, Constants, Assignment, Integers and Floating point, Arithmetic Expressions, Operator Precedence, Input using the Scanner class1.3 HTML, Applets, Graphics, Colors2.Experimental equipment (environment) and requirements2.1 Eclipse2.2 Window XPb Exercises(Please see Lab Manual)3.1 Names and Places(Choose to do)3.1.13.1.23.1.33.2 Table of Student Grades(Choose to do)/\\\\\\\\\\\\\\\\\\\\\\\ (1)(2)(3)3.3 Two Meanings of Plus(1)(2)(3)解释语句一:第一个输出结果是85,没加括号从左到右运算前第一句为字符串则8和5为字符串,有85(4)解释语句二:第二个输出结果为13,在输出语句中默认优先进行带括号的运算,8和5为整型,变成数字之后在从左到右运算,左面第一个为字符串则运算完的13也为字符型(5)解释语句三:无括号,从左到右运算,其中第三句为字符串则从左到右全识别为字符型则853.4 Pre-lab Exercises(1)常量是静态变量,不会更改,全程序共用同一个常量名变量可以在不同类中同时存在不属于本类的变量名,值可以不同(2)第一句:定义变量x第二句:定义整型变量x值为3第三句:啥都不是(3)(4)A 73B -14C 0.3D 3.333E 1.57F 4.03G 0.248H 4.29I 0.31J 1K 1(5)修改语法错误(已修改完)import java.util.Scanner;public class errors{public static void main (String[] args){String Name; // Name of the userint number;int numSq;Scanner scan = new Scanner(System.in);System.out.print ("Enter your name, please: ");Name = scan.nextString();System.out.print ("What is your favorite number?“);number = scan.nextInt();numSq = number * number;System.out.println (Name +", the square of your number is "+numSquared);}}3.5 Area and Circumference of a Circle(1)(2)(3)3.6 Painting a Room(Choose to do) (1)(2)3.7 Ideal Weight(1)(2)3.8 Lab Grades(Choose to do)3.9 Base Conversion(Choose to do)3.10 Introduction to HTML(Choose to do) 3.11 Drawing Shapes(2)x,y修改为0(3)高和宽改为200 300(4)400 40 50 200(4)矩形打印(5)椭圆3.12 The Java Coordinate System(Choose to do)3.13 Drawing a Face(Choose to do)3.14 Creating a Pie Chart(Choose to do)3.15 Colors in Java(Choose to do)4.Experimental results and data processing5.Analysis and discussionScore: 6.Teacher ReviewsExperimental Report List1 Names and Places1) Source code list3.1package test_java_01;//*************************************************************** //Names.java////Prints a list of student names with their hometowns//and intended major//*************************************************************** public class Test_java_01_1{// ------------------------// main prints the list// ------------------------public static void main (String[] args){System.out.println ();System.out.println ("\tName\t\tHometown");System.out.println ("\t====\t\t========");System.out.println ("\tprince\t\tblack_dragon_river_province"); System.out.println ("\tcircle\t\tWashington");System.out.println ();}}package test_java_01;//*************************************************************** //Names.java////Prints a list of student names with their hometowns//and intended major//*************************************************************** public class Test_java_01_1{// ------------------------// main prints the list// ------------------------public static void main (String[] args){System.out.println ();System.out.println ("\tName\t\tHometown\t\tmajor\t");System.out.println ("\t====\t\t========\t\t==========="); System.out.println ("\tprince\t\tblack_drass\t\tcomputer");System.out.println ("\tcircle\t\tWashington\t\tghhhh");System.out.println ();}}3.2public class Test_java_01_1{// ------------------------// main prints the list// ------------------------public static void main (String[] args){System.out.println("\t//////////////////////\t"+"\t\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\ \t");System.out.println ("\t======\t\tStudent Points\t\t=====\t ");System.out.println ("\tName\t\tLab\t\tBonus\t\tTotal ");System.out.println ("\t----\t\t---\t\t-----\t\t----- ");System.out.println ("\tJoe\t\t43\t\t7\t\t50\t ");System.out.println ("\tWiam\t\t50\t\t8\t\t58 ");System.out.println ("\tMaue\t\t3\t\t1\t\t4 ");System.out.println ("\tMarSue\t\t9\t\t10\t\t9 ");System.out.println ("\tMSue\t\t39\t\t10\t\t49 ");}}3.3(3)package test_java_01;import java.util.Scanner;public class PlusTest {public static void main (String[] args){int vail1,vail2,vail3;double average;Scanner scan=new Scanner(System.in);vail1=scan.nextInt();vail2=scan.nextInt();vail3=scan.nextInt();average=((double)vail1+(double)vail2+(double)vail3)/3;System.out.println("Please enter three integers and " +"I will compute their average :"+average);}}3.43.5(1)package test_java_01;public class sdd_3_5 {public static void main(String[] args){final double PI = 3.14159;int radius = 10;double area = PI * radius * radius;double line = PI * 2 * radius;System.out.println("The area of a circle with radius " + radius + " is " + area);radius = 20;area = PI * radius * radius;area = PI * radius * radius;System.out.println("The area of a circle with radius " + radius + " is " + area);}}(2)package test_java_01;public class sdd_3_5 {public static void main(String[] args){final double PI = 3.14159;int radius = 10;double area = PI * radius * radius,area2=4*area,area3;double line = PI * 2 * radius,line2=2*line,line3;double a,a1;a=line2-line;a1=area2/area;System.out.println("The area of a circle with radius " + radius + " is " + area);System.out.println("The line of a circle with radius " + radius + " is " + line);System.out.println(a+" "+a1);radius = 20;line3 = PI * 2 * radius;area3 = PI * radius * radius;System.out.println("The line of a circle with radius " + radius + " is " + line3);System.out.println("The area of a circle with radius " + radius + " is " + area3);}}(3)package test_java_01;import java.util.Scanner;public class sdd_3_5 {public static void main(String[] args){final double PI = 3.14159;Scanner scan=new Scanner(System.in);System.out.println("put in two number:");int a=scan.nextInt(),b=scan.nextInt();int c=a*b;System.out.println("number :"+c);}}3.6(1)package test_java_01;import java.util.Scanner;public class Area_jisuan_2 {public static void main(String[] args) {final int COVERAGE = 350;Scanner scan = new Scanner(System.in);System.out.print("put in length width and height:");int length = scan.nextInt(),width = scan.nextInt(),height =scan.nextInt();double totalSqFt,paintNeeded;paintNeeded = height*width*2 + width*length*2 + length*height*2;totalSqFt = paintNeeded/COVERAGE;System.out.print("the paintNeeded:"+ paintNeeded+" the totalSqFt:" +totalSqFt);}}(2)package test_java_01;import java.util.Scanner;public class Area_jisuan_2 {public static void main(String[] args) {final int COVERAGE = 350,doorsarea = 20,windowarea = 15 ;Scanner scan = new Scanner(System.in);System.out.println("put in length width and height:");int length = scan.nextInt(),width = scan.nextInt(),height =scan.nextInt();int doors,window;System.out.println("windows number and doors number:");window=scan.nextInt();doors=scan.nextInt();char i;double totalSqFt,paintNeeded;paintNeeded = height*width*2 + width*length*2 + length*height*2 - doors*doorsarea - windowarea*window;totalSqFt = paintNeeded/COVERAGE;System.out.print("the paintNeeded:"+ paintNeeded+" the totalSqFt:" +totalSqFt);}}3.7package test_java_01;import java.util.Scanner;public class weight {public static void main(String[] args) {int male1 = 14, female1 = 5;int weightreall,i=0,l;System.out.print("put in male or female:");Scanner scan = new Scanner(System.in);String c=scan.next();String b=new String("male");System.out.print("put in your height:");double height=scan.nextDouble(),ol,k;ol=height%1;ol=(2*ol*100+1)/20;if(b.equals(c)){weightreall = male1*(int)ol + 100;}else{weightreall = female1*(int)ol + 100;}System.out.print(weightreall);}}(2)package test_java_01;import java.util.Scanner;public class weight {public static void main(String[] args) {int male1 = 14, female1 = 5;int weightreall,i=0,l,weightreallf;System.out.print("put in male or female:");Scanner scan = new Scanner(System.in);String c=scan.next();String b=new String("male");System.out.println("put in your height:");double height=scan.nextDouble(),ol,k;ol=height%1;ol=(2*ol*100+1)/20;weightreall = male1*(int)ol + 100;double wei=weightreall,min,max;min=wei*0.85;max=wei*1.15;System.out.println("最佳体重范围男"+min+"-----"+max);weightreallf =female1*(int)ol +100;wei = weightreallf;min=wei*0.85;max=wei*1.15;System.out.println("最佳体重范围男"+min+"-----"+max);if(b.equals(c)){System.out.print("你的体重"+weightreall);}else{System.out.print("你的体重"+weightreallf);}}}3.8(1)四矩形打印//********************************************//Hello.java////Print a Hello, World message.//********************************************package test_java_01;import javax.swing.JApplet;import java.awt.*;public class hello extends JApplet{public void paint (Graphics page){final int MAX_SIZE = 300;final int PAGE_WIDTH = 600;final int PAGE_HEIGHT = 400;int x, y;int width, height;setBackground (Color.yellow);page.setColor (Color.blue);x = 400;y = 400;width = 150;height = 150;// Draw the rectanglepage.fillRect(x, y, width, height);page.setColor (Color.cyan);page.fillRect(x, y, width-50, height-50);page.setColor (Color.green);page.fillRect(x, y-40, width-100, height+50);page.fillRect(x-200, y-200, width-100, height+50);}}(2)来两个椭圆//********************************************//Hello.java////Print a Hello, World message.//******************************************** package test_java_01;import javax.swing.JApplet;import java.awt.*;public class hello extends JApplet{public void paint (Graphics page){final int MAX_SIZE = 300;final int PAGE_WIDTH = 600;final int PAGE_HEIGHT = 400;int x, y;int width, height;setBackground (Color.yellow);page.setColor (Color.blue);x = 400;y = 400;width = 150;height = 150;// Draw the rectanglepage.fillOval(x, y, width, height);page.setColor (Color.cyan);page.fillRect(x, y, width-50, height-50);page.setColor (Color.green);page.fillRect(x, y-40, width-100, height+50);page.fillOval(x-200, y-200, width-10, height+50);}}2) Results data processing3)Answer questions4)Error Analysis and Discussion。
Java实验二实验报告
本科学生实验报告(二)姓名学院计算机科学学院专业计算机科学与技术班级实验课程名称Java面向对象设计试验时间2012年10 月14日指导教师及职称实验成绩开课时间2012—2013学年第一学期实验管理中心印制实验题目类与对象小组合作是○否⊙姓名班级学号一、实验目的1、熟悉Java面向对象程序设计的基本思想。
2、掌握类与对象的定义及使用方法。
3、掌握package语句与import语句的用法。
4、掌握java 继承中父类及其子类的定义方法。
5、掌握子类重写父类同名方法的方法。
6、掌握用法。
二.实验环境JDK1.6和Eclipse3.4.1开发环境三、实验内容与步骤一、分别定义三角形、梯形和圆形类,要求每个类中包含构造方法、求周长及面积的方法1、程序代码如下class Trangle {double sideA,sideB,sideC,area,length;boolean boo;public Trangle(double a,double b,double c){sideA=a;sideB=b;sideC=c;//参数a,b,c分别赋值给sideA,sideB,sideCif(a+b>c&&a+c>b&&c+b>a) //a,b,c构成三角形的条件表达式{boo=true; //给boo赋值。
}else{boo=false; //给boo赋值。
}}double getLength(){if(boo){length=sideA+sideB+sideC;return length;}else{System.out.println("不是一个三角形,不能计算周长");return 0;}//方法体,要求计算出length的值并返回}public double getArea(){if(boo){double p=(sideA+sideB+sideC)/2.0;area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC)) ;return area;}else{System.out.println("不是一个三角形,不能计算面积");return 0;}}public void setABC(double a,double b,double c){sideA=a;sideB=b;sideC=c; //参数a,b,c分别赋值给sideA,sideB,sideCif(a+b>c&&a+c>b&&c+b>a) //a,b,c构成三角形的条件表达式{boo=true; //给boo赋值。
《Java语言程序设计》实验报告二
《Java技术》实验报告—实验(二)实验室:C207 2018 年10 月13日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。
java实验报告2
一练习while语句1.【实验目的】(1)为了熟练掌握java课程中的基础知识,了解java语言的灵活性和可操作性;(2)提高大家的实践操作能力;(3)通过此次实验上机,对已学知识加以运用,从而更加深刻的理解和认识老师所讲过的内容。
2.【实验算法】(1)先用小的一个数除大的一个数,得第一个余数;(2)再用第一个余数除小的一个数,得第二个余数;(3)又用第二个余数除第一个余数,得第三个余数;(4)这样逐次用后一个数去除前一个余数,直到余数是0为止。
那么,最后一个除数就是所求的最大公约数(如果最后的除数是1,那么原来的两个数是互质数)。
3.【实验要求】(1)按照题目要求编写java程序代码,并得到正确的运算结果,以达到实验的目的;(2)编写程序代码的过程中,不允许使用java语言以外的其他程序语言;(3)在调试过程中,若出现错误,必须重新修改程序,并将出错的原因写在实验总结中,做出适当的解释;(4)能熟练掌握jdk6.ZH_cn的使用方法。
4.【问题与解决方法】题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
解决方法:辗转相除法程序:import java.util.Scanner;public class cl {public static void main(String[] args) { System.out.println("请输入两个数:");Scanner in=new Scanner(System.in);int m=in.nextInt();int n=in.nextInt();int r;int t;int a,b;int s;a=m;b=n;if(a<a){t=a;a=b;b=t;}r=a%b;if(r==0){System.out.println("最大公约数为:"+b);System.out.println("最小公倍数为:"+a);}else{while(r!=0){a=b;b=r;r=a%b;}s=m*n/b;System.out.println("最大公约数为:"+b);System.out.println("最小公倍数为:"+s);}}}测试结果:(1)请输入两个数:948最大公约数为:3最小公倍数为:144(2)请输入两个数:88最大公约数为:8最小公倍数为:8二练习for语句1.【实验目的】(1)为了熟练掌握java课程中的基础知识,了解java语言的灵活性和可操作性;(2)提高大家的实践操作能力;(3)通过此次实验上机,对已学知识加以运用,从而更加深刻的理解和认识老师所讲过的内容。
Java实验报告
引言概述:Java实验报告(二)是对Java编程语言的实验进行的总结与分析。
本文将通过对实验过程中的操作和结果进行详细阐述,对Java的特性和应用进行深入探索,以及提供了一系列实验结果和实验过程中的问题及解决方案。
本文共分为引言概述、正文内容、总结三个部分。
正文内容:一、Java语言基础1.1Java的历史和特点1.2Java语言的基本特性1.3Java的运行机制1.4Java的数据类型和变量1.5Java中的运算符和表达式二、控制流语句与循环结构2.1条件控制语句2.2循环结构2.3跳转语句三、面向对象编程3.1类与对象3.2封装、继承与多态3.3抽象类与接口3.4异常处理3.5文件操作与IO流四、Java核心技术4.1Java集合框架4.2多线程编程4.3网络编程4.4GUI开发4.5数据库连接和操作五、Java应用案例分析5.1图书管理系统5.2学生信息管理系统5.3电子商务系统5.4银行管理系统5.5在线聊天程序总结:在Java实验报告(二)中,我们系统地学习了Java语言的基础知识、控制流语句与循环结构、面向对象编程、Java核心技术以及Java应用案例分析。
通过实验和实践,我们提高了对Java编程语言的理解和应用能力,为今后的学习和工作奠定了坚实的基础。
希望通过这次实验报告的撰写,能够对读者们对Java编程语言有更全面和深入的认识,激发对于编程的兴趣和灵感。
引言:Java是一种面向对象的编程语言,具有跨平台、高性能和可靠性等优点。
本文将对Java实验进行详细报告,包括实验目的、实验方法、实验结果及分析、问题和解决方案等方面。
概述:本次实验旨在通过编写Java程序,加深对Java语言及其相关知识的理解和掌握。
实验主要分为五个大点,包括环境搭建、基本语法、面向对象编程、异常处理和文件操作。
每个大点将分别进行详细阐述。
正文内容:1.环境搭建1.1安装JDK1.2配置环境变量1.3设置IDE2.基本语法2.1数据类型2.2变量和常量2.3运算符2.4控制语句2.5循环语句3.面向对象编程3.1类和对象3.2继承3.3多态3.4封装3.5接口和抽象类4.异常处理4.1异常的概念4.2异常处理机制4.3trycatch语句4.4finally语句4.5自定义异常5.文件操作5.1文件的读写5.2文件的创建和删除5.3文件的复制和移动5.4文件的压缩和解压缩5.5文件的读写性能优化实验结果及分析:通过实验,我们成功搭建了Java开发环境,并学习了Java的基本语法、面向对象编程、异常处理和文件操作等知识。
java实验2实验报告
引言概述:实验目的:本次实验的主要目的是通过设计和实现一个简单的Java程序,加深对Java编程语言的理解,培养对面向对象编程思想的应用能力。
实验要求学生熟悉Java语法和类的基本概念,并能够正确运用这些知识编写出符合要求的程序。
实验过程:1.确定实验题目和要求:根据实验要求,确定需要实现的功能和要求,并理解题目中的各个概念和要求。
2.设计程序结构:根据题目要求和功能需求,设计程序的类结构、方法和变量。
要求合理设计类和对象的关系,充分运用封装、继承和多态等面向对象编程的特性。
3.编码实现:根据设计好的程序结构,使用Java语言进行编码实现。
编写各个类和方法的代码,确保代码的规范和可读性。
4.调试和测试:编写完代码后,进行充分的调试和测试工作。
确保程序能够正确运行并符合预期的功能需求。
5.优化和改进:对程序进行优化和改进,提高程序的性能和可维护性。
可以通过重构代码、增加异常处理等方式进行优化。
6.提交实验报告:实验完成后,撰写实验报告,对实验过程和结果进行总结和分析。
实验结果:实验结果表明,本次实验成功实现了所要求的功能。
通过对Java程序的设计和实现,我加深了对Java编程语言的理解,并掌握了Java程序的基本概念和语法。
同时,通过实验过程中的调试和测试工作,我对程序的错误处理和调试技巧也有了一定的了解和掌握。
实验分析:通过本次实验,我认识到了面向对象编程的重要性和优势。
在程序设计过程中,合理设计类和对象的关系,充分利用面向对象编程的特性,可以提高程序的可读性、可维护性和扩展性。
同时,对于Java编程语言的学习和理解也是很有必要的,它是一种广泛应用于软件开发的编程语言。
总结:本次实验是一次很好的学习和实践机会,通过对Java程序的设计和实现,我加深了对Java编程语言的理解,并掌握了Java程序的基本概念和语法。
在实验过程中,我收获了很多,对面向对象编程有了更深刻的理解,也对程序的调试和测试有了更多的经验。
java实验2实验报告1
java实验2实验报告1Java 实验 2 实验报告一、实验目的本次 Java 实验 2 的主要目的是通过实际编程操作,深入理解和掌握Java 语言中的一些重要概念和技术,包括面向对象编程的基本思想、类和对象的创建与使用、方法的定义与调用,以及异常处理等方面的知识。
通过实践,提高我们的编程能力和解决问题的能力。
二、实验环境本次实验使用的开发工具是 IntelliJ IDEA,Java 版本为 JDK 18。
操作系统为 Windows 10。
三、实验内容1、设计一个简单的学生类(Student)包含学生的姓名(name)、学号(studentID)、年龄(age)等属性。
定义构造方法用于初始化学生对象的属性。
定义获取和设置学生属性的方法。
2、实现一个计算学生平均年龄的方法接受一个学生对象数组作为参数。
计算并返回学生的平均年龄。
3、异常处理在计算平均年龄的方法中,处理可能出现的除数为 0 的异常情况。
四、实验步骤1、创建学生类(Student)```javapublic class Student {private String name;private int studentID;private int age;public Student(String name, int studentID, int age) {thisname = name;thisstudentID = studentID;thisage = age;}public String getName(){return name;}public void setName(String name) {thisname = name;}public int getStudentID(){return studentID;}public void setStudentID(int studentID) {thisstudentID = studentID;}public int getAge(){return age;}public void setAge(int age) {thisage = age;}}```2、计算平均年龄的方法```javapublic class AverageAgeCalculator {public double calculateAverageAge(Student students) {int totalAge = 0;int studentCount = studentslength;for (Student student : students) {totalAge += studentgetAge();}if (studentCount == 0) {throw new ArithmeticException("除数不能为 0,学生数组为空。
Java程序设计实验报告_2
Java程序设计实验报告姓名:学号:班级:课题名称(附程序名):JAVA计算器(Calculator.java)一、实验目的通过JAVA图形接口的应用,编写出一图形界面的科学计算器;熟悉JAVA程序开发的一般步骤,掌握事件驱动,并能掌握一定的Java 编程能力,在实践中能感受Java的奥秘!同时检验自己的学习成果。
二、实验任务具有加减乘除的计算器,可以延伸到开方等其他的一些计算。
三、开发工具与平台Microsoft Visual Studio 2005四、设计思路:1)界面设计2)逻辑设计首先明确该实验设计的要求实现的基本功能,其次设计布局,将空间划分为由行和列组成的网格单元,每个单元放一个组件,网格单元大小可以不同,尽量将相同属性的按钮放在一个区域,方便操作。
3)软件调试与测试经过调试之后,能实现基本的四则运算,并能实现开方和消除错误的数。
4)软件设计优化该软件的界面应该更加流畅,同时我相信随着自己只是的日益丰富,开发软件的速度更快,效率更高,功能更加全面!5)实验总结不足:没有实现Mc,MR,MS,M+以及菜单栏几个功能,有待进一步完善。
这样才能够完成自己的第一个应用软件设计!优点:通过本次实验设计,大体了解了Java图形接口的应用,并在过程中增强了对程序的调试能力。
对JAVA有了更深一步的理解,学会如何解决问题,如何坚持对程序的调试,同时也增强了自己学习Java的信心。
五、附录源程序如下:import java.awt.BorderLayout;import java.awt.Container;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.GridLayout;import java.awt.Insets;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JPanel;import javax.swing.JTextField;public class Calculator extends JFrame implements ActionListener { boolean init = true;boolean isMath = false;boolean clear = true;boolean clickable = true;double qian;String fuhao;int all = 0;JTextField text = new JTextField(25);JButton bM = new JButton();JButton bMC = new JButton("MC");JButton bMR = new JButton("MR");JButton bMS = new JButton("MS");JButton bMADD = new JButton("M+");JButton b0 = new JButton("0");JButton b1 = new JButton("1");JButton b2 = new JButton("2");JButton b3 = new JButton("3");JButton b4 = new JButton("4");JButton b5 = new JButton("5");JButton b6 = new JButton("6");JButton b7 = new JButton("7");JButton b8 = new JButton("8");JButton b9 = new JButton("9");JButton bNOP = new JButton("+/-");JButton bDot = new JButton(".");JButton bDiv = new JButton("/");JButton bMul = new JButton("*");JButton bSub = new JButton("-");JButton bAdd = new JButton("+");JButton bSprt = new JButton("sprt");JButton bMod = new JButton("%");JButton bDao = new JButton("1/x");JButton bEqual = new JButton("=");JButton bBackspace = new JButton("Backspace"); JButton bCE = new JButton("CE");JButton bC = new JButton("C");public Calculator() {this.setTitle("计算器");JMenuBar mainMenu = new JMenuBar();setJMenuBar(mainMenu);JMenu editMenu = new JMenu("编辑");JMenu viewMenu = new JMenu("查看");JMenu helpMenu = new JMenu("帮助");mainMenu.add(editMenu);mainMenu.add(viewMenu);mainMenu.add(helpMenu);JPanel jpDisplay = new JPanel();JPanel jpInput = new JPanel();JPanel jpLeft = new JPanel();JPanel jpRight = new JPanel();text.setText("0.");text.setHorizontalAlignment(JTextField.RIGHT); jpDisplay.add(text);bM.addActionListener(this);bMC.addActionListener(this);bMS.addActionListener(this);bMR.addActionListener(this);bMADD.addActionListener(this);jpLeft.setLayout(new GridLayout(5, 1)); jpLeft.add(bM);jpLeft.add(bMC);jpLeft.add(bMR);jpLeft.add(bMS);jpLeft.add(bMADD);JPanel jpInnerN = new JPanel();JPanel jpInnerS = new JPanel();bBackspace.addActionListener(this);bCE.addActionListener(this);bC.addActionListener(this);jpInnerN.setLayout(new GridLayout(1, 3)); jpInnerN.add(bBackspace);jpInnerN.add(bCE);jpInnerN.add(bC);b0.addActionListener(this);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);b4.addActionListener(this);b5.addActionListener(this);b6.addActionListener(this);b7.addActionListener(this);b8.addActionListener(this);b9.addActionListener(this);bNOP.addActionListener(this);bDot.addActionListener(this);bDiv.addActionListener(this);bMul.addActionListener(this);bSub.addActionListener(this);bAdd.addActionListener(this);bSprt.addActionListener(this);bMod.addActionListener(this);bDao.addActionListener(this);bEqual.addActionListener(this);jpInnerS.setLayout(new GridLayout(4, 5));jpInnerS.add(b7);jpInnerS.add(b8);jpInnerS.add(b9);jpInnerS.add(bDiv);jpInnerS.add(bSprt);jpInnerS.add(b4);jpInnerS.add(b5);jpInnerS.add(b6);jpInnerS.add(bMul);jpInnerS.add(bMod);jpInnerS.add(b1);jpInnerS.add(b2);jpInnerS.add(b3);jpInnerS.add(bSub);jpInnerS.add(bDao);jpInnerS.add(b0);jpInnerS.add(bNOP);jpInnerS.add(bDot);jpInnerS.add(bAdd);jpInnerS.add(bEqual);jpRight.setLayout(new BorderLayout());jpRight.add(jpInnerN, BorderLayout.NORTH);jpRight.add(jpInnerS, BorderLayout.CENTER);jpInput.setLayout(new BorderLayout());jpInput.add(jpLeft, BorderLayout.WEST);jpInput.add(jpRight, BorderLayout.CENTER);Container pane = this.getContentPane();pane.setSize(333, 208);this.setLocation(300, 200);this.setLayout(new BorderLayout());pane.add(jpDisplay, BorderLayout.CENTER);pane.add(jpInput, BorderLayout.SOUTH);this.setDefaultCloseOperation(EXIT_ON_CLOSE);this.pack();this.setVisible(true);}public void actionPerformed(ActionEvent e) {if (init)this.text.setText("0.");init = false;Object source = e.getSource();if (source == bBackspace) {String s = text.getText();text.setText("");for (int i = 0; i < s.length() - 1; i++) { char a = s.charAt(i);text.setText(text.getText() + a);}System.out.println("backspace");}if (source == bCE) {text.setText("0.");clear = true;init = true;System.out.println("CE");}if (source == bC) {text.setText("0.");clear = true;init = true;System.out.println("C");}if (source == bM) {System.out.println("M");}if (source == bMC) {System.out.println("MC,功能末实现");}if (source == bMR) {System.out.println("MR,功能末实现");}if (source == bMS) {System.out.println("MS,功能末实现");}if (source == bMADD) {System.out.println("M+,功能末实现");}if (source == b0) {System.out.println("0");if (clear == false)// 判断是否点击了符号位text.setText("");text.setText(text.getText() + "0");}if (source == b1) {if (clear == false)text.setText("");text.setText(text.getText() + "1");clear = true;// 第二次不在清空(前二句)}if (source == b2) {System.out.println("2");if (clear == false)text.setText("");text.setText(text.getText() + "2");clear = true;}if (source == b3) {System.out.println("3");if (clear == false)text.setText("");text.setText(text.getText() + "3");clear = true;}if (source == b4) {System.out.println("4");if (clear == false)text.setText("");text.setText(text.getText() + "4");clear = true;}if (source == b5) {System.out.println("5");if (clear == false)text.setText("");text.setText(text.getText() + "5");clear = true;}if (source == b6) {System.out.println("6");if (clear == false)text.setText("");text.setText(text.getText() + "6");clear = true;}if (source == b7) {System.out.println("7");if (clear == false)text.setText("");text.setText(text.getText() + "7");clear = true;}if (source == b8) {System.out.println("8");if (clear == false)text.setText("");text.setText(text.getText() + "8");clear = true;}if (source == b9) {System.out.println("9");if (clear == false)text.setText("");text.setText(text.getText() + "9");clear = true;}try{if (source == bNOP) {System.out.println("+/-");boolean isNumber = true;String s = text.getText();for (int i = 0; i < s.length(); i++)if (!(s.charAt(i) >= '0' && s.charAt(i) <= '9'|| s.charAt(i) == '.' || s.charAt(i) == '-')) {isNumber = false;break;}if (isNumber == true) {// 如果当前字符串首字母有'-'号,代表现在是个负数,再按下时,则将首符号去掉if (s.charAt(0) == '-') {text.setText("");for (int i = 1; i < s.length(); i++) {char a = s.charAt(i);text.setText(text.getText() + a);}}// 如果当前字符串第一个字符不是符号,则添加一个符号在首字母处elsetext.setText('-' + s);}}if (source == bDot) {System.out.println(".");clickable = true;for (int i = 0; i < text.getText().length(); i++)if ('.' == text.getText().charAt(i)) {clickable = false;break;} // 第一层判断是否里面含有小数点;if (clickable == true)// 第二层判断text.setText(text.getText() + ".");}if (source == bDiv) {System.out.println("/");qian = Double.parseDouble(text.getText());fuhao = "/";clear = false;}if (source == bMul) {System.out.println("*");qian = Double.parseDouble(text.getText());fuhao = "*";clear = false;}if (source == bSub) {System.out.println("-");qian = Double.parseDouble(text.getText());fuhao = "-";clear = false;}if (source == bAdd) {System.out.println("+");qian = Double.parseDouble(text.getText());fuhao = "+";clear = false;}if (source == bSprt) {System.out.println("sprt");String s = text.getText();if (s.charAt(0) == '-') {text.setText("负数不能开根号");} elsetext.setText(Double.toString(ng.Math.sqrt(Double.parseDouble(text.getText()))));clear = false;}if (source == bMod) {System.out.println("%,功能末实现");}if (source == bDao) {System.out.println("1/x");if (text.getText().charAt(0) == '0'&& text.getText().length() == 1) {text.setText("除数不能为零");} else {boolean isDec = true;int i, j, k;String s= Double.toString(1 / Double.parseDouble(text.getText()));for (i = 0; i < s.length(); i++)if (s.charAt(i) == '.')break;for (j = i + 1; j < s.length(); j++)if (s.charAt(j) != '0') {isDec = false;break;}if (isDec == true) {String stemp = "";for (k = 0; k < i; k++)stemp += s.charAt(k);text.setText(stemp);} elsetext.setText(s);}clear = false;}if (source == bEqual) {System.out.println("=");Double ss=Double.parseDouble(text.getText());text.setText("");if (fuhao == "+")text.setText(qian + ss + "");if (fuhao == "-")text.setText(qian - ss + "");if (fuhao == "*")text.setText(qian * ss + "");if (fuhao == "/")text.setText(qian / ss + "");clear = false;// 要清空前一次的数据;}}catch (Exception ee) {System.out.println("请正确输入");text.setText("运算出错,给您带来不便,sorry");clear = false;}}public static void main(String[] args) {new Calculator();}}11。
Java实验报告_实验二
Java实验报告_实验⼆实验2 类和对象【实验宗旨】每天做⼀点编程练习。
【实验⽬的】1、学习和掌握Java创建对象的⽅法。
2、学习和掌握通过创建对象、使⽤类的⽅法。
3、学习和掌握Java类定义的⽅法。
4、了解类设计的⼀般原则。
【实验内容】1、(Java API类的应⽤)使⽤java.util.Random类,创建种⼦是1000的Random对象,然后使⽤nextInt(100)⽅法显⽰0到100 之间前50个随机整数。
【实验预习】创建Random对象,含有1000个种⼦,然后输出其中的前50个⽆输⼊,创建Random random = new Random(1000);利⽤for循环输出前50的随机数。
【实验过程及结果记录】import java.util.Random;public class JavaText {public static void main(String[] args) {Random random = new Random(1000);for (int i = 0; i < 50; i++)System.out.print(random.nextInt(100) + " ");}}【实验总结】练习产⽣随机数的⽅法(Random).2.(使⽤StackOfIntegers类,显⽰素数因⼦)编写⼀个程序,提⽰⽤户输⼊⼀个正整数,然后以降序显⽰它的所有最⼩因⼦。
例如:如果整数为120,那么显⽰的最⼩因⼦为5、3、2、2、2。
使⽤StackOfIntegers类存储因⼦(如:2、2、2、3、5),获取之后按倒序显⽰这些因⼦。
【实验预习】练习类的调⽤,使⽤StackOfIntegers类【实验过程及结果记录】import java.util.*;import java.awt.*;import javax.swing.*;public class zhiyinshu{public static void main (String[] args) {StackOfIntegers h1 =new StackOfIntegers(); StackOfIntegers h2 =new StackOfIntegers();String str=JOptionPane.showInputDialog(null,"请输⼊⼀个正整数","分解质因数",JOptionPane.QUESTION_MESSAGE); int yuanshu = Integer.parseInt(str);int i=2;int b=0;int c=0;do{i=2;b=0;do{if(yuanshu%i==0){yuanshu=yuanshu/i;h1.jilu(i);b=1;}i++;}while(b==0&&i}while(ih1.jilu(yuanshu);c=h1.getsize();for(int v=0;vh2.jilu(h1.esc());for(int v=0;vSystem.out.print(""+h2.esc()+"\n"); }}class StackOfIntegers {private int size;private int[] zhan;public static final int a=16;public StackOfIntegers(){this(a);}public StackOfIntegers(int n){zhan = new int[n];}public void jilu(int up) {if(size>=zhan.length){int[] temp = new int[zhan.length * 2];System.arraycopy(zhan,0,temp,0,zhan.length);zhan=temp;}zhan[size++]=up;}public int esc(){return zhan[--size];}public int getsize(){return size;}}【实验总结】练习了创建随机数的⽅法以及Java的输出⽅法,在编码的过程中还是经常出现⼤⼩写打错的情况。
java实验二实验报告模板
实验二:java 程序设计一、实验目的与要求一、实验目的与要求1、了解、了解Java Java 的数据类型;的数据类型;2、掌握各种变量的声明方式;、掌握各种变量的声明方式;3、理解运算符的优先级;、理解运算符的优先级;4、掌握、掌握Java Java 基本数据类型、运算符与表达式、数组的使用方法;基本数据类型、运算符与表达式、数组的使用方法;5、理解理解Java Java 程序语法结构,掌握顺序结构、选择结构和循环结构语法的程序设计方法;6、通过以上内容,掌握、通过以上内容,掌握Java Java语言的编程规则。
二、实验内容二、实验内容读入一个浮点数值,将其转换为中文金额的大写方式,如123.45,123.45,转换为转换为转换为::壹佰贰拾叁元肆角伍分。
要求:肆角伍分。
要求:(1)当金额为整数时,当金额为整数时,只表示整数部分,只表示整数部分,只表示整数部分,省略小数部分,省略小数部分,省略小数部分,并添加并添加“整”字。
例如,123123表示为表示为表示为::壹佰贰拾叁元整;壹佰贰拾叁元整;(2)当金额中含有连续的当金额中含有连续的00时,只需写一个“零”即可,例如, 10005表示为:表示为:壹万零伍元整; (3)1010的表示方式,例如,的表示方式,例如,的表示方式,例如,110110110元表示为:壹佰壹拾元整,而元表示为:壹佰壹拾元整,而元表示为:壹佰壹拾元整,而101010则表示为:拾元整。
则表示为:拾元整。
则表示为:拾元整。
提示:将字符串型转换为浮点型可以用提示:将字符串型转换为浮点型可以用Float.parseFloat(s)Float.parseFloat(s)Float.parseFloat(s)函数转换。
函数转换。
函数转换。
三、实验器材三、实验器材微机微机+windows +windows +windows操作系统操作系统操作系统+eclipse +eclipse +eclipse四、实验步骤四、实验步骤1、程序代码、程序代码import java.io.*;import java.util.Scanner; public class ee { /*** @param args*/ public static void main(String[] args) { // TODO Auto-generated method stub /** * 数据输入*/ System.out .println(.println(""请输入一个实数"); InputStream is=System.in ; Scanner scan=new Scanner(is); float y=scan.nextFloat(); System.out .println(.println("y=""y="+y);float x=y; int ix=(int )x;)x;////整数部分float px=x-ix; px=x-ix;////小数部分String cx=ix+String cx=ix+""""; String cy=px+String cy=px+""""; /*** 处理整数部分,采用二进制转换思想*/ int []zhengshu=new int [cx.length()]; int i=0;if (cx.length()<=4) { while (ix>0) { zhengshu[i]=ix-ix/10*10;zhengshu[i]=ix-ix/10*10;////求出余数,并赋给数组zhengshui++;ix=ix/10;ix=ix/10;////商}} /*** 整数钱币输出*/for (int ii=cx.length()-1;ii>=0;ii--) { if (zhengshu[ii]==0) { if (ii!=0) { if (zhengshu[ii-1]!=0) {System.out .println(.println(""零");}}if (ii==0) {System.out .print(.print(""圆");}}if(zhengshu[ii]!=0){if(ii==3){.print(""壹仟");if(zhengshu[ii]==1) System.out.print(.print(""贰仟"); if(zhengshu[ii]==2) System.out.print(.print(""叁仟"); if(zhengshu[ii]==3) System.out.print(.print(""肆仟"); if(zhengshu[ii]==4) System.out.print(.print(""伍仟"); if(zhengshu[ii]==5) System.out.print(.print(""陆仟"); if(zhengshu[ii]==6) System.out.print(.print(""柒仟"); if(zhengshu[ii]==7) System.out.print(.print(""捌仟"); if(zhengshu[ii]==8) System.out.print(.print(""玖仟"); if(zhengshu[ii]==9) System.out.print(}if(ii==2){.print(""壹佰");if(zhengshu[ii]==1) System.out.print(.print(""贰佰"); if(zhengshu[ii]==2) System.out.print(.print(""叁佰"); if(zhengshu[ii]==3) System.out.print(.print(""肆佰"); if(zhengshu[ii]==4) System.out.print(.print(""伍佰"); if(zhengshu[ii]==5) System.out.print(.print(""陆佰"); if(zhengshu[ii]==6) System.out.print(.print(""柒佰"); if(zhengshu[ii]==7) System.out.print(.print(""捌佰"); if(zhengshu[ii]==8) System.out.print(.print(""玖佰"); if(zhengshu[ii]==9) System.out.print(}if(ii==1){.print(""壹拾");if(zhengshu[ii]==1) System.out.print(.print(""贰拾"); if(zhengshu[ii]==2) System.out.print(.print(""叁拾"); if(zhengshu[ii]==3) System.out.print(.print(""肆拾"); if(zhengshu[ii]==4) System.out.print(.print(""伍拾"); if(zhengshu[ii]==5) System.out.print(.print(""陆拾"); if(zhengshu[ii]==6) System.out.print(.print(""柒拾"); if(zhengshu[ii]==7) System.out.print(.print(""捌拾"); if(zhengshu[ii]==8) System.out.print(.print(""玖拾"); if(zhengshu[ii]==9) System.out.print(}if(ii==0){.print(""壹圆");if(zhengshu[ii]==1) System.out.print(.print(""贰圆"); if(zhengshu[ii]==2) System.out.print(.print(""叁圆"); if(zhengshu[ii]==3) System.out.print(.print(""肆圆"); if(zhengshu[ii]==4) System.out.print(.print(""伍圆"); if(zhengshu[ii]==5) System.out.print(.print(""陆圆"); if(zhengshu[ii]==6) System.out.print(.print(""柒圆"); if(zhengshu[ii]==7) System.out.print(.print(""捌圆"); if(zhengshu[ii]==8) System.out.print(.print(""玖圆"); if(zhengshu[ii]==9) System.out.print(}}}/*** 处理小数部分*/float yushu;int xiaoshu[]=new int[2];xiaoshu[0]=(int)(px*10);yushu=px*10-xiaoshu[0];xiaoshu[1]=(int)(yushu*10);if(xiaoshu[0]!=0){.print(""壹角");if(xiaoshu[0]==1) System.out.print(.print(""贰角");if(xiaoshu[0]==2) System.out.print(.print(""叁角");if(xiaoshu[0]==3) System.out.print(.print(""肆角");if(xiaoshu[0]==4) System.out.print(.print(""伍角");if(xiaoshu[0]==5) System.out.print(.print(""陆角");if(xiaoshu[0]==6) System.out.print(.print(""柒角");if(xiaoshu[0]==7) System.out.print(.print(""捌角");if(xiaoshu[0]==8) System.out.print(.print(""玖角");if(xiaoshu[0]==9) System.out.print(}else{if(xiaoshu[0]==0){if(xiaoshu[1]!=0).println(""零");System.out.println(}}if(xiaoshu[1]!=0){if (xiaoshu[1]==1) System.out .print(.print(""壹分"); if (xiaoshu[1]==2) System.out .print(.print(""贰分"); if (xiaoshu[1]==3) System.out .print(.print(""叁分"); if (xiaoshu[1]==4) System.out .print(.print(""肆分"); if (xiaoshu[1]==5) System.out .print(.print(""伍分"); if (xiaoshu[1]==6) System.out .print(.print(""陆分"); if (xiaoshu[1]==7) System.out .print(.print(""柒分");if (xiaoshu[1]==8) System.out .print(.print(""捌分");if (xiaoshu[1]==9) System.out .print(.print(""玖分"); }}}五、实验结果五、实验结果请输入一个实数请输入一个实数 34.678 y=34.678 叁拾肆圆陆角柒分叁拾肆圆陆角柒分请输入一个实数请输入一个实数 123.23 y=123.23壹佰贰拾叁圆贰角叁分壹佰贰拾叁圆贰角叁分请输入一个实数请输入一个实数 110.00 y=110.0 壹佰壹拾圆壹佰壹拾圆六、实验小结六、实验小结1、通过这个实验巩固了、通过这个实验巩固了java java java的基础知识:包括数据类型、变量的声明方式、运算符的的基础知识:包括数据类型、变量的声明方式、运算符的优先级、表达式的应用、数组的使用。
Java实验报告2.doc
《Java语言程序设计》实验报告实验名称:实验二:Scanner类的用法专业班级:组别:姓名:学号:合作者:日期:实验内容及步骤1 破解MyEclipse10;2 实验内容(1) 实验目的:掌握从键盘输入简单数据。
(2) 实验要求:编写程序,使用Scanner类输入学生信息,并输出基本信息。
(3) 代码框架⏹import java.util.Scanner;⏹public class InputMess {⏹public static void main(String[] args) {⏹// TODO Auto-generated method stub⏹【代码1】 //利用Scanner类获取信息⏹System.out.println("输入姓名(按Enter确认)");⏹String name=【代码2】 //获取姓名⏹System.out.println("输入年龄(按Enter确认)");⏹byte age=【代码3】 //获取年龄⏹System.out.println("输入身高(按Enter确认)");⏹float height=reader.nextFloat();⏹System.out.println("------基本信息------");⏹System.out.print("姓名:"+name+"---年龄:"+age+"---身高:"+height);⏹}⏹}(4) 最终效果知识改变命运。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验项目名称:继承和多态
(所属课程:Java语言程序设计)
院系:计算机科学与信息工程专业班级:12级物联网工程姓名:张懿
学号:201203040042 实验地点:A-06 411 指导老师:张阳
本实验项目成绩:教师签字:日期:
1.实验目的
(1)掌握类的继承机制。
(2)熟悉类中成员变量和方法的访问控制。
(3)熟悉方法或构造方法多态性。
2.实验内容
(1)模拟编写程序,理解类的继承、多态、继承和多态规则。
(2)独立编程,实现类的继承和多态。
3.实验作业
设计一个类Shape(图形)包含求面积和周长的area()方法和perimeter()方法以及设置颜色的方法SetColor(),并利用Java多态技术设计其子类Circle (圆形)类、Rectangle(矩形)类和Triangle(三角形)类,并分别实现相应的求面积和求周长的方法。
每个类都要覆盖toString方法。
海伦公式:三角形的面积等于s(s-a)(s-b)(s-c)的开方,其中s=(a+b+c)/2 4.实验程序
import java.util.Scanner;
public class TEST {
public static void main(String[] args) {
float radius;
float chang,kuan;
float a,b,c;
Scanner input = new Scanner(System.in);
System.out.print("请输入圆的半径:");
radius = input.nextFloat();
Circle circle = new Circle(radius);
System.out.println("圆的面积为:"+circle.area()+" 圆的周长为:"+circle.perimeter()+"\n"+circle.toString());
System.out.print("请输入矩形的长:");
chang = input.nextFloat();
System.out.print("请输入矩形的宽:");
kuan = input.nextFloat();
Rectangle rectangle = new Rectangle(chang,kuan);
System.out.println("矩形的面积为:"+rectangle.area()+" 矩形圆的周长为:"+rectangle.perimeter()+"\n"+rectangle.toString());
System.out.print("请输入三角形的第一条边:");
a = input.nextFloat();
System.out.print("请输入三角形的第二条边:");
b = input.nextFloat();
System.out.print("请输入三角形的第三条边:");
c = input.nextFloat();
Triangle triangle = new Triangle(a,b,c);
System.out.println("三角形的面积为:"+triangle.area()+" 三角形圆的周长为:"+triangle.perimeter()+"\n"+triangle.toString());
}
}
class Shape{
private String color;
public Shape(){
}
public double area(){
return 0;
}
public double perimeter(){
return 0;
}
public void Setcolor(String color){
this.color = color;
}
}
class Circle extends Shape{
private float radius;
public Circle(float radius){
this.radius = radius;
}
public double area(){
return 3.14 * radius * radius;
}
public double perimeter(){
return 3.14 * 2 * radius;
}
public String toString(){
return super.toString() + "这是一个描述该对象的字符串";
}
}
class Rectangle extends Shape{
private float chang;
private float kuan;
public Rectangle(float chang,float kuan){
this.chang = chang;
this.kuan = kuan;
}
public double area(){
return chang * kuan;
}
public double perimeter(){
return (chang+kuan) * 2;
}
public String toString(){
return super.toString() + "这是一个描述该对象的字符串";
}
}
class Triangle extends Shape{
private float a;
private float b;
private float c;
public Triangle(float a,float b,float c){
this.a = a;
this.b = b;
this.c = c;
}
public double area(){
float s = (a+b+c)/2;
return Math.sqrt(s * (s-a) * (s-b) * (s-c));
}
public double perimeter(){
return a+b+c;
}
public String toString(){
return super.toString() + "这是一个描述该对象的字符串";
}
}
程序输出结果:
:
5.实验总结
(1)掌握了类的继承机制。
(2)熟悉了类中成员变量和方法的访问控制。
(3)熟悉了方法和构造方法多态性。