湖北理工学院Java实验2

合集下载

JavaEE实验(参考) 2

JavaEE实验(参考) 2

本科实验报告课程名称:Java EE编程技术实验项目:语法基础代码风格实验实验地点:逸夫楼404专业班级:软件1028 学号:2010005249 学生姓名:赵才轩指导教师:高保禄2013 年 4 月26 日一.实验目的熟悉Java、JSP、Servlet、Html等相关语法,培养良好的代码风格,为其他实验做好准备。

二.实验内容熟悉NetBeans开发环境,通过编写一个Jsp调用Servlet的程序,熟悉Java、JSP、Servlet、Html等相关语法,培养良好的代码风格。

可以任选以下任一题目:A.网站计数器;B.简易购物车;C.编写一个自定义标记,将Servlet返回的英文字符串转换为大写。

三、实验要求:参照课本,快速熟悉相关内容,按所需题目编写程序,熟悉Java等编程语言或技术的基本编程技巧,注重良好的代码风格(如变量命名、代码注释、Servlet 与类中代码的结构等),初步掌握编写Web应用程序的能力。

2)设法在用户主目录中以home_mycal的文件名来调用mydir/mycal文件。

四、实验环境:软件环境:Windows 7/XP/2000/2003/2008,NetBeans5.5.1/6.5/7.3;硬件环境:P4 2.4G/80G/1G/64M及较高配置的PC机。

五、实验步骤和实验结果:(A、B、C三个实验都有)A.网站计数器:(1)思维方法:首先,网页浏览次数每个用户都可以查看,所以用Servlet 上下文去保存数据;再者:网站计数器要确保在网页重新部署时或服务器重新启动时记得数不会从1开始,所以,我选择用文件把Servlet上下文的数据进行保存;最后,如果在用户访问一次就要读写文件的话,这样效率会很低,所以我利用Servlet的生命周期,把文件的读放在init()方法中,把文件的写放在destory()方法中,这样就完成了对浏览网页的计数。

(2)实现方法:(由于代码较多,所以选择重要的代码写入报告中)Init()方法:(实现了读文件,如果不存在文件则创建一个,并写入初值)public void init() throws ServletException {String counter=null;File FCounter=new File("j:\\counter.txt");if(!FCounter.exists())try {FCounter.createNewFile();FileWriter fw=new FileWriter("j:\\counter.txt");BufferedWriter bw=new BufferedWriter(fw);bw.write("0");bw.close();} catch (IOException ex) {Logger.getLogger(ZCXWebCount.class.getName()).log(Level.SEVERE, null, ex);}try {FileReader fr=new FileReader("j:\\counter.txt");BufferedReader br=new BufferedReader(fr);try {counter=br.readLine();br.close();} catch (IOException ex) {Logger.getLogger(ZCXWebCount.class.getName()).log(Level.SEVERE, null, ex);}} catch (FileNotFoundException ex) {Logger.getLogger(ZCXWebCount.class.getName()).log(Level.SEVERE, null, ex);}this.getServletContext().setAttribute("counter", counter);}●Destory()方法:(实现了跟新文件内容的功能)public void destroy() {String counter=null;try {FileWriter fw=new FileWriter("j:\\counter.txt");BufferedWriter bw=new BufferedWriter(fw);counter=(String) this.getServletContext().getAttribute("counter");bw.write(counter);bw.close();} catch (IOException ex) {Logger.getLogger(ZCXWebCount.class.getName()).log(Level.SEVERE, null, ex);}}●processRequest()方法:(实现了用户浏览后加一的功能,以及显示给用户)protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html;charset=UTF-8");PrintWriter out = response.getWriter();String counter=null;counter=(String) this.getServletContext().getAttribute("counter");int count=Integer.parseInt(counter);count++;counter=String.valueOf(count);this.getServletContext().setAttribute("counter", counter);try {out.println("<html>");out.println("<head>");out.println("<title>网站计数器</title>");out.println("</head>");out.println("<body>");out.println("<center><h1>赵才轩网页计数器</h1>");out.println("<h1>访问次数:" +this.getServletContext().getAttribute("counter") + "</h1>");out.println("</center></body>");out.println("</html>");} finally {out.close();}}(3)简易截图:B.简易购物车(1)思维方法:首先,在这个简易的购物车中我不设计数据库,只是从简单的思路中说明问题,所以我的商品数据在jsp页面中体现,并且各个商品的默认属性都是一致的,只是数据不同,这些属性用表单的形式发送处理;再者,我用对象ArrayList去收集购物车中的数据,并用会话session中的setAttribute()方法去保存用户的购物车,再用getAttribute()方法把购物车中的数据显示给用户,最后,在显示出购物车的数据后可以再放回商品页面继续购物。

实验报告Java二

实验报告Java二

JA V A实验报告系(教研室):专业:年级:实验课程:Java语言程序设计姓名:学号:实验室号:计算机号:实验时间:指导教师签字:成绩:实验2一、实验目的1.掌握声明二维数组变量,创建二维数组对象,使用二维数组解决实际问题。

2.使用构造方法创建对象,通过对象引用变量访问对象,。

3.封装数据域以便于类的维护。

二、实验要求1.(7.6)编写两个矩阵相乘的方法。

方法头如下:public static double[][] multiplyMatrix(double[][] a, double[][] b)为了是矩阵a能够和矩阵b相乘,矩阵a的列数必须与矩阵b的行数相同。

假设矩阵c是相乘的结果,而a的列数是n,那么每个元素c ij=a i1* b1j + a i2 * b2j+ …+ a in * b nj。

例如,对于两个3×3的矩阵a和b,c有:编写一个测试程序,提示用户输入两个3*3的矩阵,然后显示他们的2.(8.1)创建一个名为Rectangle的类表示矩形,这个类包括:●两个名为width和height的double型数据域,它们分别表示矩形的宽和高。

width和height的默认值都为1。

●创建默认矩形的无参构造方法:Rectangle()。

●一个创建width和height为指定值的矩形的构造方法:Rectangle(double width, double height)。

●一个名为getWidth()的方法返回宽。

●一个名为getHeight()的方法返回高。

●一个名为getArea()的方法返回这个矩形的面积。

●一个名为getPerimeter()的方法返回周长。

实现这个类,编写一个测试程序,提示用户输入两个矩形,创建两个Rectangle对象,然后显示矩形的宽,高,面积和周长。

三、实验原理1.本题通过编写Matrix类实现题目要求。

Matrix类包含三个方法:存储矩阵的方法:public static double[][] inputMatrix()用于打印矩阵的方法:public static double[][] outputMatrix(double[][] x),利用两个for循环来实现输出二维数组。

Java 2实用教程(3版)实验指导及答案

Java 2实用教程(3版)实验指导及答案

Java 2实用教程(第三版)实验指导与习题解答上机实践1 初识JA V A (4)实验1一个简单的应用程序 (4)实验2一个简单的J A V A A PPLET程序 (4)实验3联合编译 (5)上机实践2 基本数据类型与控制语句 (6)实验1输出希腊字母表 (6)实验2回文数 (7)实验3猜数字游戏 (9)上机实践3 类与对象 (10)实验1三角形、梯形和圆形的类封装 (10)实验2实例成员与类成员 (13)实验3使用PACKAGE语句与IMPORT语句 (15)上机实践4 继承与接口 (17)实验1继承 (17)实验2上转型对象 (20)实验3接口回调 (22)上机实践5 字符串、时间与数字 (24)实验1S TRING类的常用方法 (24)实验2比较日期的大小 (25)实验3处理大整数 (26)上机实践6 组件及事件处理 (27)实验1算术测试 (27)实验2信号灯 (30)实验3布局与日历 (32)上机实践7 组件及事件处理2 (36)实验1方程求根 (36)实验2字体对话框 (39)实验3英语单词拼写训练 (42)上机实践8 多线程 (46)实验1汉字打字练习 (46)实验2旋转的行星 (48)实验3双线程接力 (52)上机实践9 输入输出流 (55)实验1学读汉字 (55)实验2统计英文单词字 (58)实验2读取Z IP文件 (62)上机实践10 JAV A 中的网络编程 (63)实验1读取服务器端文件 (63)实验2使用套接字读取服务器端对象 (65)实验3基于UDP的图像传输 (68)上机实践11 数据结构 (72)实验1扫雷小游戏 (72)实验2排序与查找 (77)实验3使用T REE S ET排序 (78)上机实践12 JAV A SWING (80)实验1JL AYERED P ANE分层窗格 (80)实验2使用表格显示日历 (81)实验3多文档界面(MDI) (84)上机实践1 初识Java实验1 一个简单的应用程序1.答案:【代码1】:System.out.println("你好,很高兴学习Java") ;【代码2】:System.out.println("We are students") ;2.模板代码Hello.javapublic class Hello{public static void main (String args[ ]){【代码1】//命令行窗口输出"你好,很高兴学习Java"A a=new A();a.fA();}}class A{void fA(){【代码2】//命令行窗口输出"We are students"}}实验2 一个简单的Java Applet程序1.答案:【代码1】:g.drawString("这是一个Java Applet 程序",10,30);【代码2】:g.drawString("我改变了字体",20,50);2.模板代码FirstApplet.javaimport java.applet.*;import java.awt.*;public class FirstApplet extends Applet{public void paint(Graphics g){g.setColor(Color.blue);【代码1】//在Java Applet中绘制一行文字:“这是一个Java Applet 程序”g.setColor(Color.red);g.setFont(new Font("宋体",Font.BOLD,36));【代码2】//在Java Applet中绘制一行文字:“我改变了字体”}}实验3 联合编译1.答案:【代码1】:System.out.println("你好,只需编译我");【代码2】:System.out.println("I am A");【代码3】:System.out.println("I am B");【代码4】:System.out.println("I am C");2.模板代码模板1:Hello.javapublic class MainClass{public static void main (String args[ ]){【代码1】 //命令行窗口输出"你好,只需编译我"A a=new A();a.fA();B b=new B();b.fB();}}模板2 :A.javapublic class A{void fA(){【代码2】 //命令行窗口输出"I am A"}}模板3 :B.javapublic class B{void fB(){【代码3】 //命令行窗口输出"I am B"}}模板4 :C.javapublic class C{void fC(){【代码4】 //命令行窗口输出"I am C"}}上机实践2 基本数据类型与控制语句实验1 输出希腊字母表1.答案:【代码1】:startPosition=(int)cStart;【代码2】:endPosition=(int)cEnd ;【代码3】:c=(char)i;2.模板代码GreekAlphabet.javapublic class GreekAlphabet{public static void main (String args[ ]){int startPosition=0,endPosition=0;char cStart='α',cEnd='ω';【代码1】//cStart做int型转换据运算,并将结果赋值给startPosition【代码2】//cEnd做int型转换运算,并将结果赋值给endPositionSystem.out.println("希腊字母\'α\'在unicode表中的顺序位置:"+(int)c);System.out.println("希腊字母表:");for(int i=startPosition;i<=endPosition;i++){char c='\0';【代码3】//i做char型转换运算,并将结果赋值给cSystem.out.print(" "+c);if((i-startPosition+1)%10==0)System.out.println("");}}}实验2 回文数1.答案:【代码1】:number<=99999&&number>=1【代码2】:d5=number/10000;【代码3】:d4=number%10000/1000;【代码4】:d3=number%1000/100;【代码5】:d5!=0【代码6】:d1==d5&&d2==d4【代码7】:d4!=0【代码8】:d1==d4&&d2==d3【代码9】:d3!=0【代码10】:d1==d32.模板代码Number.javaimport javax.swing.JOptionPane;public class Number{public static void main(String args[]){int number=0,d5,d4,d3,d2,d1;String str=JOptionPane.showInputDialog("输入一个1至99999之间的数");number=Integer.parseInt(str);if(【代码1】) //判断number在1至99999之间的条件{【代码2】//计算number的最高位(万位)d5【代码3】//计算number的千位d4【代码4】//计算number的百位d3d2=number%100/10;d1=number%10;if(【代码5】) //判断number是5位数的条件{System.out.println(number+"是5位数");if(【代码6】) //判断number是回文数的条件{System.out.println(number+"是回文数");}else{System.out.println(number+"不是回文数");}}else if(【代码7】) //判断number是4位数的条件{System.out.println(number+"是4位数");if(【代码8】) //判断number是回文数的条件码{System.out.println(number+"是回文数");}else{System.out.println(number+"不是回文数");}}else if(【代码9】) //判断number是3位数的条件{System.out.println(number+"是3位数");if(【代码10】) //判断number是回文数的条件{System.out.println(number+"是回文数");}else{System.out.println(number+"不是回文数");}}else if(d2!=0){System.out.println(number+"是2位数");if(d1==d2){System.out.println(number+"是回文数");}else{System.out.println(number+"不是回文数");}}else if(d1!=0){System.out.println(number+"是1位数");System.out.println(number+"是回文数");}}else{System.out.printf("\n%d不在1至99999之间",number);}}}实验3 猜数字游戏1.答案:【代码1】:yourGuess!=realNumber【代码2】:yourGuess>realNumber【代码3】:yourGuess<realNumber2.模板代码GuessNumber.javaimport javax.swing.JOptionPane;public class GuessNumber{public static void main (String args[ ]){System.out.println("给你一个1至100之间的整数,请猜测这个数");int realNumber=(int)(Math.random()*100)+1;int yourGuess=0;String str=JOptionPane.showInputDialog("输入您的猜测:");yourGuess=Integer.parseInt(str);while(【代码1】) //循环条件{if(【代码2】) //条件代码{str=JOptionPane.showInputDialog("猜大了,再输入你的猜测:");yourGuess=Integer.parseInt(str);}else if(【代码3】) //条件代码{str=JOptionPane.showInputDialog("猜小了,再输入你的猜测:");yourGuess=Integer.parseInt(str);}}System.out.println("猜对了!");}}上机实践3 类与对象实验1 三角形、梯形和圆形的类封装1.答案:【代码1】:sideA=a;sideB=b;sideC=c;【代码2】:a+b>c&&a+c>b&&c+b>a【代码3】:boo=true;【代码4】:boo=false;【代码5】:if(boo){length=sideA+sideB+sideC;return length;}else{System.out.println("不是一个三角形,不能计算周长");return 0;}【代码6】:sideA=a;sideB=b;sideC=c;【代码7】:a+b>c&&a+c>b&&c+b>a【代码8】:boo=true;【代码9】:boo=false;【代码10】:above=a;bottom=b;height=h;【代码11】:area=(above+bottom)/2*height;return area;【代码12】:radius=r;【代码13】:return 3.14*radius*radius;【代码14】:return 3.14*2*radius;【代码15】:circle=new Circle(10);【代码16】:trangle=new Trangle(3,4,5);【代码17】:lader=new Lader(3,4,10);【代码18】:length=circle.getLength();【代码19】:area=circle.getArea();【代码20】:length=trangle.getLength();【代码21】:area=trangle.getArea();【代码22】:area=lader.getArea();【代码23】:trangle.setABC(12,34,1);【代码24】:area=trangle.getArea();【代码25】:length=trangle.getLength();2.模板代码AreaAndLength.javaclass Trangle{double sideA,sideB,sideC,area,length;boolean boo;public Trangle(double a,double b,double c){【代码1】//参数a,b,c分别赋值给sideA,sideB,sideCif(【代码2】) //a,b,c构成三角形的条件表达式{【代码3】//给boo赋值。

Java实验报告中的实验题Word版

Java实验报告中的实验题Word版

Java实验报告中的所有实验题实验一略实验二Java 基本语法练习【完成实验项目】1.输入一个整数,输出该数的二进制表示形式的字符串2.编写Java应用程序,把100~1000的自然数中能够被3整除的数输出到屏幕上。

3.打印小于1000的斐波纳契数4. 输入一个梯形的上底、下底和高,求其面积实验三面向对象基础编程【完成实验项目】1.写一个名为Rectangle的类表示矩形。

其属性包括宽width、高height和颜色color,width和height都是double型的,而color则是String类型的。

要求该类提供计算面积的方法getArea()方法,以及修改width和height的值及获得width和height当前值的方法。

要求:(1)使用构造函数完成各属性的初始赋值(2)使用getter和setter的形式完成属性的访问及修改2..请定义一个名为Card的扑克牌类,该类有两个private访问权限的字符串变量face和suit:face描述一张牌的牌面值(如:"Ace", "Deuce", "Three","Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Jack", "Queen", "King");suit描述一张牌的花色(如:"Hearts", "Diamonds", "Clubs", "Spades")。

定义Card类中的public访问权限的构造方法,为类中的变量赋值;定义protected访问权限的方法getFace(),得到扑克牌的牌面值; 定义protected访问权限的方法getSuit(),得到扑克牌的花色; 定义方法toString(),返回表示扑克牌的花色和牌面值字符串(如“Ace of Hearts”、“Ten of Clubs”等)。

Java程序设计-试验2(学生版)

Java程序设计-试验2(学生版)

Java程序设计-试验2(学生版)
华北电力大学
实验报告
实验名称Java程序面向对象设计(一)课程名称Java程序设计
专业班级:学生姓名:
学号:成绩:指导教师:张学斌实验日期:
自己的speed的值增加80
【代码10】//car2调用speedUp方法将自己的speed的值增加80
System.out.println("car1目前的速度:"+car1.getSpeed());
System.out.println("car2目前的速度:"+car2.getSpeed());
car1.speedDown(10);
car2.speedDown(20);
System.out.println("car1目前的速度:"+car1.getSpeed());
System.out.println("car2目前的速度:"+car2.getSpeed());
}
}
1.3 实验指导
●创建一个对象时,成员变量被分配空间,这些内
存空间称作该对象的实体或变量,而对象中存放着引用,以确保这些变量被该对象操作使用。

●空对象不能使用,即不能让一个空对象去调用方
法产生行为。

假如程序中使用了空对象,在运行时会产生异常:NullPointerException,对象时。

武汉理工Java实验报告(二)

武汉理工Java实验报告(二)

武汉理工Java实验报告(二)武汉理工大学学 生 实 验 报 告 书课 程 名 称 JAVA 语言程序设计 开 课 学 院 计算机科学与技术学院 指 导 老 师 学 生 姓 名 专 业 班 级学生学号实验课成绩2017 —2018 学年第一学期实验课程名称: JAVA语言程序设计实验项目名称类和对象实验成绩实验者专业班级组别同组者实验日期2017年10月2日第一部分:实验分析与设计(可加页)一、实验内容描述(问题域描述)1. 编写一个抽象的二维几何体接口Geometricinterface,其中定义求周长和求面积方法,再编写三角形类其实现Geometricinterface接口,有三个边长属性,编写矩形类继承 Geometricinterface接口,有长和宽属性。

要求输入相关属性值后,可以求得相应的周长值和面积值。

附:求三角形面积其中a,b,c分别为三角形三边长,p为半周长,S为三角形的面积。

2. 使用面向对象的思想编写计算器,改进第一次试验的第4题,实现加、减、乘、除操作。

其中包括一个运算抽象类Operation和各个运算的实现。

要求:(1)使用封装;(2)使用继承;(3)使用多态。

(4)实现表达式的加、减、乘、除运算。

计算:“3+(5*6-4)”实现思路:1)创建抽象类 Operation及其子运算类;2)利用数据结构堆栈的思想,解析表达式;(选做,如果不能实现可以定义成员变量运算数1(numA)和运算数2(numB))3)编写测试类TestCalc进行验证。

二、实验内容与设计思想1./*几何*/(1)/*三角形类*/public class Triangle implements GeomInterface {double a,b,c;//构造方法Triangle(int x,int y,int z){a=x;b=y;c=z;}//求周长public void perimeter(){System.out.println("三角形的周长为"+(a+b+c));}//求面积public void area(){double p=(a+b+c)/2;double S;S=Math.sqrt(p*(p-a)*(p-b)*(p-c));System.out.println("三角形的面积为"+S); }}(2)长方形类类似三角形类,略。

湖北理工学院Java实验2

湖北理工学院Java实验2
public static void main(String[] args) { // TODO 自动生成的方法存根 double length,area; Circle circle=null; Trangle trangle; Lader lader; circle=new Circle(5.0); //创建对象 circle trangle=new Trangle(3.2,4.2,5.2) ;//创建对象 trangle lader=new Lader(4.0,3.0,6.0);//创建对象 lader length=circle.getLength(); // circle 调用方法返回周长并赋值给 length System.out.println("圆的周长:"+length); area=circle.getArea(); // circle 调用方法返回面积并赋值给 area System.out.println("圆的面积:"+area);
fxj_stu xiaming=new fxj_stu(); xiaming.num=19; ="夏明"; xiaming.sex="男"; System.out.println("输出我的基本信息"); System.out.println("号码:"+new_student.num); System.out.println("姓名:"+new_); System.out.println("性别:"+new_student.sex); System.out.println("输出夏明的基本信息"); System.out.println("号码:"+xiaming.num); System.out.println("姓名:"+); System.out.println("性别:"+xiaming.sex); } } 运行结果:

JAVA程序设计实验

JAVA程序设计实验

JAVA程序设计实验实验1 JAVA基础一、实验目的1.掌握JA V A语言的各种数据类型2.熟悉运算符和表达式。

3.学会编写简单程序二、实验环境硬件:计算机软件:操作系统:windows98以上或LINUX、JDK 1.2以上三、实验内容:下面是一个简单的JA V A程序,将多种类型变量通过各种运算符组成不同的表达式,并将运算结果赋值给同类型的变量,使用println()方法输出各变量的值。

Public class ExampleTest(){Public static void main(String args[]){Int no=(11+20)*3/5; //A行System.out.println(“no=”+no);no++; //B行System.out.println(“no=”+no);Boolean bool=false; //C行bool=true&!bool; //D行System.out.println(“bool=”+bool);Byte bV alue=0x10; //E行System.out.println(“bV alue=”+bV alue);Bool=(no>bV alue); //F行System.out.println(“bool=”+bool);}}四、实验的主要步骤1.用edit录入以上程序内容并保存,注意文件名。

2.用javac.exe命令编译刚保存的JA V A文件。

3.如果编译通不过,用edit打开源代码进行修改。

重复第2步和第3步至到编译通过。

4.用java.exe运行编译生成的类文件。

5.查看运行结果。

实验2 JAVA流程控制一、实验目的1.掌握条件语句的使用。

2.熟悉循环语句的使用。

二、实验环境硬件:计算机软件:操作系统:windows98以上或LINUX、JDK 1.2以上。

三、实验内容1.求a+aa+aaa+…+a..a (n个)的和,其中a为1-9之间的整数。

武汉理工多线程总结实验报告

武汉理工多线程总结实验报告

武汉理工大学面向对象与多线程综合实验总结报告学院:计算机科学与技术学院指导教师: xxxx学生姓名:xxx学号: xxxx班级: xxxx2015-2016年第一学期一、功能说明这次实验主要实现一个档案管理系统,利用Java语言以及eclipse 编译器、数据库等工具来进行开发。

以下为已完成的功能:1.通过父类、子类、抽象类等实现了封装、继承与多态。

2.使用try-catch语句实现了异常处理。

3.通过输入输出流事现了文件的上传和下载。

4.用图形化用户界面事现了所有子菜单。

5.实现与Mysql数据库的连接,并且能进行基本的数据库查询、修改、录入等基本操作二、实现目录及文件说明实验工程目录如下图实现目录包文件封装、继承与多态Java.util.* DataProcessing.java User.javaAdministrator.java Main.javaOperator.java Browser.java异常处理Java.util.*Java.sql.* DataProcessing.java User.java Administrator.java Main.java Operator.java Browser.java输入输出流Java.util.*Java.sql.*Java.io.* UserManager.java Main.java User.java DocManager.java Administrator.java Doc.java Operator.java Browser.javaGUI设计Java.util.*J java.sql.*Java.io.*Java.awt.*Javax.swing.* UserManager.javaLogin.javaUser.java DocManager.java Administrator.java Doc.java Operator.java Browser.javaJDBC数据库操作Java.util.* Java.awt.*Java.sql.* Javax.swing.*Java.io.* UserManager.javaLogin.javaUser.java DocManager.java Administrator.java Doc.java Operator.java Browser.java PasswordmismatchException.j ava NoUserFoundException.java文件说明:数据库登录系统是一个工程,在工程中的包中是实现功能的java源文件,包括DocManager.java、UserManager.java、User.java、Doc.java等一系列源文件,在各个源文件中是实现功能的具体类。

实验2

实验2
<5>递归的两大要素:1,边界条件:至少有一条初始定义时非递归的。2,递推通式:由已知函数值逐步递推计算出未知函数值。
4.字符串:
<1>字符串之间一般用+连接。
<2>只有+=一个复合运算符可以用于字符串变量,其余的都不能。
<3>字符串不是字符串数组,不能以字符数组方式通过下标对指定位置的字符进行操作。
<2>选择语句:有if语句和switch语句。
<3>循环语句:有while语句,do~whiles语句,for语句。
<4>转移语句:break语句,continue语句,return语句。
PS:1.if语句一般与else连用,if~else代表这பைடு நூலகம்果,否则。
2.赋值语句用一个=而等号用两个==。
3.while语句是先判断后执行而do~while是先执行后判断且while()括号里面放的是布尔表达式
3.方法:
<1>一个方法一定要有返回值类型,但不一定要有返回值。
<2>使用final声明的形式参数为常量,在方法体中不能对其赋值
<3>参数传递:若是基本数据类型,则值传递;若是引用数据类型则是传递引用
<4>方法重载:1.方法名相同,参数个数不同,构成重载2方法名相同,参数顺序不同,构成重载3.方法名相同,参数类型不同,构成重载
Java语言程序设计实验报告
实验名称
实验2Java面向对象编程基础
实验日期
2018-04-24
专业班级
17计算机科学与技术2班
桌号
实验人
喻伟亮
学号
10

java实验报告实验原理

java实验报告实验原理

java实验报告实验原理Java实验报告实验原理一、引言Java是一种广泛使用的计算机编程语言,具有跨平台、面向对象、简单易学等特点。

在学习Java编程的过程中,实验是不可或缺的一部分。

本文将介绍Java实验的原理和相关知识。

二、实验环境搭建在进行Java实验之前,需要搭建相应的实验环境。

首先,需要安装Java Development Kit(JDK),这是Java开发的基础工具包。

其次,需要选择一个集成开发环境(IDE)来编写和运行Java程序,比如Eclipse、IntelliJ IDEA等。

最后,需要配置Java的环境变量,以便在命令行中能够直接运行Java程序。

三、实验原理1. Java的基本语法Java的语法规范包括数据类型、变量、运算符、控制语句等。

在Java实验中,我们需要掌握这些基本语法知识,以便正确编写和理解Java程序。

2. 面向对象编程Java是一种面向对象的编程语言,它支持封装、继承和多态等特性。

在实验中,我们需要理解面向对象的概念,并能够正确应用这些特性来解决实际问题。

3. 类和对象在Java中,类是对象的模板,用于描述对象的属性和行为。

对象是类的实例,具有独立的状态和行为。

在实验中,我们需要学会定义和使用类和对象,以及理解它们之间的关系。

4. 异常处理Java提供了异常处理机制,可以捕获和处理程序中的异常情况。

在实验中,我们需要学会使用try-catch语句来捕获异常,并进行相应的处理,以保证程序的稳定性和可靠性。

5. 输入输出Java提供了丰富的输入输出功能,可以从键盘读取输入,也可以将结果输出到控制台或文件中。

在实验中,我们需要学会使用Java提供的输入输出类和方法,以便与用户进行交互和展示程序的结果。

6. 集合框架Java的集合框架提供了一系列的数据结构和算法,用于存储和操作数据。

在实验中,我们需要学会使用集合框架提供的各种数据结构,比如List、Set、Map 等,以及相应的操作方法,比如添加、删除、查找等。

java实验2实验报告

java实验2实验报告

引言概述:实验目的:本次实验的主要目的是通过设计和实现一个简单的Java程序,加深对Java编程语言的理解,培养对面向对象编程思想的应用能力。

实验要求学生熟悉Java语法和类的基本概念,并能够正确运用这些知识编写出符合要求的程序。

实验过程:1.确定实验题目和要求:根据实验要求,确定需要实现的功能和要求,并理解题目中的各个概念和要求。

2.设计程序结构:根据题目要求和功能需求,设计程序的类结构、方法和变量。

要求合理设计类和对象的关系,充分运用封装、继承和多态等面向对象编程的特性。

3.编码实现:根据设计好的程序结构,使用Java语言进行编码实现。

编写各个类和方法的代码,确保代码的规范和可读性。

4.调试和测试:编写完代码后,进行充分的调试和测试工作。

确保程序能够正确运行并符合预期的功能需求。

5.优化和改进:对程序进行优化和改进,提高程序的性能和可维护性。

可以通过重构代码、增加异常处理等方式进行优化。

6.提交实验报告:实验完成后,撰写实验报告,对实验过程和结果进行总结和分析。

实验结果:实验结果表明,本次实验成功实现了所要求的功能。

通过对Java程序的设计和实现,我加深了对Java编程语言的理解,并掌握了Java程序的基本概念和语法。

同时,通过实验过程中的调试和测试工作,我对程序的错误处理和调试技巧也有了一定的了解和掌握。

实验分析:通过本次实验,我认识到了面向对象编程的重要性和优势。

在程序设计过程中,合理设计类和对象的关系,充分利用面向对象编程的特性,可以提高程序的可读性、可维护性和扩展性。

同时,对于Java编程语言的学习和理解也是很有必要的,它是一种广泛应用于软件开发的编程语言。

总结:本次实验是一次很好的学习和实践机会,通过对Java程序的设计和实现,我加深了对Java编程语言的理解,并掌握了Java程序的基本概念和语法。

在实验过程中,我收获了很多,对面向对象编程有了更深刻的理解,也对程序的调试和测试有了更多的经验。

java实验2实验报告1

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程序设计实验2
stu.age=18;
System.out.println("学号:"+stu.number);
System.out.println("年龄:"+stu.age);
System.out.println("姓名:"+);
}
}
4、为Student类添加构造方法Student(),Student(String number), Student(String number, int age), Student(String number, int age, String name),在main方法中分别利用这些构造方法进行实例化。查看其结果。
System.out.println("stu4姓名:"+);
System.out.println("stu4学号:"+stu4.number);
System.out.println("stu4年龄:"+stu4.age);
}
}
5、在Student类中添加最终(final)变量id和静态(static)变量school,对这两个变量赋初值,尝试改变id和school变量的值,在main方法中采用多种方式访问这两个变量的值。查看其结果。publicclassstudent {
finalStringid="1110012127";
staticStringschool="厦门理工学院";
publicstaticvoidshowschool(){
System.out.println(student.school);

Java程序设计实验报告_2

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语言程序设计》——软件实验指导书

《Java程序设计》实验指导书李君婵太原理工大学计算机科学与技术学院(软件学院)目录实验1 Java语言基础 (3)实验2 数组和字符串编程 (4)实验3 Java面向对象程序设计 (5)实验4 Java异常处理 (7)实验5 多线程编程 (9)实验6 图形用户界面编程 (12)实验7 输入与输出 (14)实验8 网络编程 (15)实验9 数据库编程 (16)实验1 Java语言基础1.实验目的(1)通过实验,掌握Java语言程序设计的基本方法。

(2)学会Java语言中标示符的命名、运算符和表达式的应用。

(3)熟练地掌握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整除,也是闰年。

3.实验预习(1)复习本章所学内容。

(2)写出实验内容中第(2)、(3)题两个程序的源代码,作为预习报告。

4.实验步骤及结果实验过程中,注意记录以下内容:(1)实验过程中实验步骤及其结果。

(2)遇到的问题及解决办法。

(3)实验体会。

实验2 数组和字符串编程1.实验目的(1)通过实验,掌握Java语言中数组、字符串程序设计的基本方法。

(2)较熟练地掌握Java程序数组的应用、字符串处理操作的方法应用。

java实验报告实验2答案(共5篇)

java实验报告实验2答案(共5篇)

java实验报告实验2答案(共5篇)第一篇:java实验报告实验2答案互联网软件应用与开发实验指导书实验二熟悉Applet,GUI编程实验目的:本实验旨在巩固同学们对上课所讲Applet,异常处理,java的控制加深理解,图形用户界面基本组件窗口、按钮、文本框、选择框、滚动条等的使用方法,对java的语法和编程有一个更加深入的理解,为同学们以后的能够用Java进行独立地编写桌面程序打下一定的基础。

了解如何使用布局管理器对组件进行管理,以及如何使用Java的事件处理机制。

实验内容:创建一个java项目,命名为experiment2。

(如何创建项目参考《实验一》的项目创建方法。

)(一)创建图形用户界面图形用户界面(Graphic User Interface,简称GUI)是为方便用户使用设计的窗口界面,在图形用户界面中用户可以看到什么就操作什么,取代了在字符方式下知道是什么后才能操作什么的方式。

组件(Component)是构成GUI的基本要素,通过对不同事件的响应来完成和用户的交互或组件之间的交互。

组件一般作为一个对象放置在容器(Container)内,容器是能容纳和排列组件的对象,如Applet、Panel(面板)、Frame(窗口)等。

通过容器的add方法把组件加入到容器中。

1.在Applet中添加标签、按钮并使用网格布局(1)程序功能在Applet 容器中添加组件标签、按钮,并使用网格布局管理器排列组件在容器中的位置。

(2)编写LX6_1.java 程序文件,源代码如下:import java.awt.*;import java.applet.Applet;public class LX6_1 extends Applet { Label l1;Button b1, b2, b3, b4, b5,b6;public void init(){互联网软件应用与开发实验指导书setLayout(new GridLayout(3,3));// 设置网格布局(3 行3 列共9 个网格)l1=new Label(“标签1”);b1 = new Button(“按钮1”);b2 = new Button(“按钮2”);b3 = new Button(“按钮3”);b4 = new Button(“按钮4”);add(l1);add(b1);add(b2);add(b3);add(newLabel());add(b4);add(new Button(“按钮5”));add(new Button(“按钮6”));add(new Label(“标签2”));} }(3)编译程序LX6_1.java。

实验2 Java编程基础

实验2 Java编程基础

实验2 Java编程基础一、实验目的1.熟悉基本数据类型,包括其所占字节数、数值范围及常数的后缀形式;2.掌握变量的声明、初始化方法,能够正确区分全局变量(即成员变量)和局部变量(即本地变量);3.掌握关系运算符()、>=、<、<=、==、!=)和逻辑运算符(!、&&、||)的使用;4.熟悉Java程序的常用输入输出格式。

二、实验内容与步骤说明:①实验报告必须完成的是基础题,提交课外完成题及提高题的可以加分;②本实验的操作环境是:文本编辑器(如写字板等)、javac和java命令;③可先建立F:\myjava目录,再在其中建立java源程序,并编译、运行。

1.(基础题)应用程序若要输出如图2-1所示结果,请将程序所缺代码填充完整,并加以运行,然后完成实验报告相关内容:图2-1程序运行结果程序代码:________________ Diamond {_____________________ main(__________ args[]) {System.out.println(" *");System.out.println(" * *");System.out.println(" * *");System.out.println("* *");____________________________;____________________________;____________________________;}}2.(基础题)请按下列要求,将程序代码填充完整,并加以运行:public class Test {// 初始值为0的整型变量 b1// 初始值为10000的长整型变量b2// 初始值为3.4的浮点型变量b3// 初始值为34.45的双精度型变量b4// 初始值为’4’的字符型变量b5// 初始值为true的布尔型变量b6public static void main(String ________) {// 输出变量b1——b6的值}}3.(基础题)输入下列程序内容,运行程序,并回答相关问题:public class DataType {public static void main(String args[]) {byte a1 = 126, a2 = (byte) 256, a3 = 'A';System.out.println("a1=" + a1 + "\ta2=" + a2 + "\ta3=" + a3);int b1 = 12345, b2 = (int) 123456789000L, b3 = '0', b4 = 0xff;System.out.println("b1=" + b1 + "\tb2=" + b2 + "\tb3=" + b3 + "\tb4="+ b4);char c1 = 'a', c2 = 98, c3 = '\u0043', c4 = '\n';System.out.println("c1=" + c1 + "\tc2=" + c2 + c4 + "c3=" + c3);}}问题:(1)变量a2、a3的输出内容是什么?为何出现这种变化?(2)变量b2、b3的输出内容是什么?为何出现这种变化?(3) '\t'、'\n'各有什么特殊用途?(4)System.out的println()方法与print()方法有什么不同?(5)如何声明、初始化一个变量?(6)b4初始化时,被赋予什么进制的数?(7)写出声明ch为字符型变量、并初始化为'c'的三种不同写法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

错?为什么? 会,类方法只能调用类变量
3.使用package语句与import语句。 实验要求: 创建一个java包,名为“chan”;定义一个学生类student1,分别定义num,name,sex 三个属性,访问修饰符分别是private、无修饰符和public修饰符。在主类student中创建学生 类的对象,并且分别设置学号,姓名和性别的初始值,在主类中调用对象。用import语句 导入学生包fxj_stu,分别定义num,name,sex三个属性,访问修饰符分别是private、无修 饰符和public修饰符,然后在主类中创建对象,修改其属性值,看能否成功,如果不能, 改变其访问修饰符,然后再观察结果。
length=trangle.getlength(); // trangle 调用方法返回周长并赋值给 length System.out.println("三角形的周长:"+length); area=trangle.getArea(); // trangle 调用方法返回面积并赋值给 area System.out.println("三角形的面积:"+area); area=lader.getArea(); // lader 调用方法返回面积并赋值给 area System.out.println("梯形的面积:"+area); trangle.setABC(12, 34, 1); // trangle 调用方法设置三个边,要求将三个边修改为 12,34,1。 area=trangle.getArea(); // trangle 调用方法返回面积并赋值给 area System.out.println("三角形的面积:"+area); length=trangle.getlength(); // trangle 调用方法返回周长并赋值给 length System.out.println("三角形的周长:"+length);
程序源代码 public class A {
float a; static float b; void setA(float a) {
this.a=a; } void setB(float b) {
this.b=b; } float getA() {
return a; } float getB() {
fxj_stu xiaming=new fxj_stu(); xiaming.num=19; xห้องสมุดไป่ตู้="夏明"; xiaming.sex="男"; System.out.println("输出我的基本信息"); System.out.println("号码:"+new_student.num); System.out.println("姓名:"+new_); System.out.println("性别:"+new_student.sex); System.out.println("输出夏明的基本信息"); System.out.println("号码:"+xiaming.num); System.out.println("姓名:"+); System.out.println("性别:"+xiaming.sex); } } 运行结果:
} public double getRadius() {
return radius; }
}
public class Lader { double above,bottom,height,area; public Lader(double a,double b,double h) { above=a; bottom=b; height=h; } public double getArea() { double m=0; m=(above+bottom)*height/2.0; return m; }
}
}
运行结果:
实验后的练习: 1. 将inputA()方法中的System.out.println(a);改写为System.out.println(a+b);编译是否出 错?为什么? 不会,非非方法可以用类变量 2. 将inputB()方法中的System.out.println(b);改写为System.out.println(a+b);编译是否报
4. 给Trangle类增加3个方法,分别用来返回3个边:sideA、sideB和sideC。 double getsideA() { return sideA; } double getsideB() { return sideB;
} double getsideC() { return sideC; }
boo=false; } else {
sideA=a; sideB=b; sideC=c; boo=true; } } public double getlength() { return(sideA+sideB+sideC); }
public double getArea() { if(boo) {
把这些代码增加到Trangle类里面就行了 5.让AreaAndLength类中的circle对象调用方法修改半径,然后输出修改后的 半径以 及 修改半径后的圆的面积和周长。 在主函数中 circle=new Circle(5.0);下面增加一句circle.setRadius(8); 运行结果:
2.实例成员与类成员。 实验要求: 按程序模板的要求编写源文件,要特别注意程序的输出结果,并能正确解释输出的结 果。 程序模板:
double p=(sideA+sideB+sideC)/2.0; area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC)); return area; } else { System.out.println("这 3 条边不能组成三角形,不能计算面积"); return 0; } } public void setABC(double a,double b,double c) { if((a-b)>c||(a-c)>b||(b-c)>a) { boo=false; } else { sideA=a; sideB=b; sideC=c; boo=true; } } } public class AreaAndLength {
return b;
} void inputA() {
System.out.println(a); } static void inputB() {
System.out.println(b); }
} public class Example {
public static void main(String[] args) { // TODO 自动生成的方法存根 A.b=100; A.inputB(); A cat=new A(); A dog=new A(); cat.setA(200); cat.setB(400); dog.setB(300); dog.setA(150); cat.inputA(); cat.inputB(); dog.inputA(); dog.inputB();
} public class Trangle {
double sideA,sideB,sideC,area,length; boolean boo; public Trangle(double a,double b,double c) { if((a-b)>c||(a-c)>b||(b-c)>a) {
package fxj;
public class fxj_stu { public static int num=17; public static String name="付小姐"; public static String sex="女"; public static void main(String[] args) { // TODO 自动生成的方法存根 System.out.println("输出付小姐的信息:"); fxj_stu fuxiaojun=new fxj_stu(); System.out.println("号码 :"+fuxiaojun.num); System.out.println("姓名:"+); System.out.println("性别:"+fuxiaojun.sex); }
} package chan;
import fxj.fxj_stu;
class student1{ public int num; String name; public String sex;
}
public class student {
public static void main(String[] args) { // TODO 自动生成的方法存根 student1 new_student=new student1(); new_student.num=14; new_="chan"; new_student.sex="男";
}
} 运行结果:
} 实验后的练习:
1. 程序中仅仅省略【代码15】,编译能通过吗? 不能,没有给circle 分配Circle 申请空间,不能直接调用该类的方法
2. 程序中仅仅省略【代码16】,编译能通过吗? 不能,没有给trangle分配Trangle 申请空间,不能直接调用该类的方法 3. 程序中仅仅省略【代码15】,运行时出现怎样的异常提示? Exception in thread "main" ng.NullPointerException at AreaAndLength.base.AreaAndLength.main(AreaAndLength.java:14)
相关文档
最新文档