Java教学实习报告.docx
- 文档编号:11156008
- 上传时间:2023-02-25
- 格式:DOCX
- 页数:21
- 大小:183.80KB
Java教学实习报告.docx
《Java教学实习报告.docx》由会员分享,可在线阅读,更多相关《Java教学实习报告.docx(21页珍藏版)》请在冰豆网上搜索。
Java教学实习报告
新疆农业职业技术学院
《Java程序设计》
教学实习报告
部门:
软件技术学院
专业:
计算机网络技术
班级:
2008高职应用
姓名:
冀丽娟
指导教师:
李欣
《Java程序设计》教学实习报告
一、实习时间:
2010年10月27日至2010年11月12日
二、实习地点:
第1微机室
三、实习目的
1、掌握搭建Java开发环境的方法;
2、通过团队合作,提高沟通、交流能力,培养团队合作精神;
3、严格按照Java语言编写规约编写代码,养成遵守规约的习惯,增强编码质量的意识;
4、教师面向对象程序实例的剖析,以及实际操作,理解面向对象编程的理念,并熟练编写程序;
5、掌握Java程序的调试方法;
四、实习内容及方法
实训1相关环境搭建
1、实训目的:
1)、熟悉Java语言的程序开发环境
2)、理解Java两类程序的运行机制。
2、实训内容:
JDK开发环境
第一步:
下载。
从学校网站上找:
在里面找编程软件。
第二步:
安装jdk。
安装在D盘的根目录下面。
第三步:
安装好后,选择“开始”→“运行…”命令,在打开的“运行”窗口中输入“cmd”命令并“确定”。
在打开的命令行窗口中,分别执行java和javac命令。
第四步:
查看操作系统环境变量。
第五步:
设置环境变量及path环境变量的作用和设置。
1>编辑源文件
文本编辑
importjava.io.*;
publicclassHelloWorld1{
publicstaticvoidmain(Stringarg[]){
System.out.println("HelloWorld!
");
}
}
运行结果如下图所示:
实训2Java基础-控制语句使用实例
一、实训目的:
1、熟练掌握Java语言中的三种基本的流程控制
2、能够读懂一般流程控制的实例
3、理解数组的概念
4、掌握数组的定义方法
5、掌握数组的应用
二、实训内容:
1、随机输入3个数,要求按降序排列。
publicclasspailie{
publicstaticvoidmain(String[]args){
inta,b,c;
a=(int)(Math.random()*100);
b=(int)(Math.random()*100);
c=(int)(Math.random()*100);运行结果如下图所示:
2、编写程序,用循环语句列出1到10的阶乘值。
publicclassmzyjiech{
publicstaticvoidmain(Stringargs[]){
inti;
intsum=1;
for(i=1;i<=10;i++){
sum*=i;
System.out.println(sum);
结果如下图所示:
3、编写程序显示一年的月份。
月份要保存在数组中。
publicclassyuefen{
publicstaticvoidmain(String[]args){
String[]Name={"一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"};
for(inti=0;i }结果如下图所示: 4、定义一个二维数组,从键盘输入数据,要求求出最大值元素、最小值元素。 Scannerinput=newScanner(System.in); int[][]mat=newint[3][2]; intmax=Integer.MIN_VALUE,min=Integer.MAX_VALUE; for(inti=0;i<3;i++) for(intj=0;j<2;j++){ mat[i][j]=input.nextInt(); if(mat[i][j]>max)max=mat[i][j]; if(mat[i][j] 运行结果如下图所表示: (三)实训分析总结 1、三种循环语句的数据流程图如何执行? 2、三种循环语句的语法格式。 while循环语句是当型结构,它的语法格式是: [initalization] While(loop-condition){ Body; [iteration;] } for循环语句是当型结构,在几种循环语句的使用中最为灵活,语法格式是: for([initialization];[loop-condition];[iteration]){ body; } break语句的作用是终止包含break语句的程序块,语法格式为: break[label] 3、什么是数组元素,数组下标? 数组是由相同的数据类型的数据类型按顺序组成的数据集合。 数据中的每个数据元素可以用一个统一的数组名和下标来唯一地确定。 数组分为一维数组和多维数组; 4、数组的定义形式(声明,空间的分配)。 Java中数组的声明格式为: TypearrayName[];或type[]arrayName; 其中type(数据类型)可以为java中任意的数据类型,包括基本数据类型和对象类型,arrayName(数组明)为一个合法的标识符,[]指明该变量是一个数组类型变量。 数组的空间分配: Java在数组的声明时并对不为数组元素分配内存,因此在[]中不用指出数组中元素的个数,既数组长度。 格式: arrayName=newtype[arraySize];其中arraySize指明数组长度。 实训3类的封装、继承与多态性 1、编写程序,给定圆的半径和高度,计算圆柱体的体积,利用引用对象方法的形式表示。 importjava.io.*; publicclasstj{ doubler,h; publicdoubletiji(){ return3.14*r*r*h; } publicstaticvoidmain(String[]args)throwsIOException{ n)); System.out.println("请输入园的半径: "); doubler=Double.parseDouble(in.readLine()); System.out.println("请输入园的高: "); ... System.out.println("圆的体积是: "+tj1.tiji());}} 运行结果如下图: 2、试设计一个Calculator类,并完成下列的各方法的程序设计: 定义add(a,b)方法,用来计算两数之和。 定义mul(a,b)方法,用来计算两数的乘积。 定义sub(a,b)方法,用来计算两数之差。 定义div(a,b)方法,用来计算a/b。 classCalculator{ doubleadd(inta,intb){ returna+b; } doublemul(doublea,intb){ returna*b; } doublesub(inta,intb){ returna-b; } doublediv(inta,intb){ returna/b; 运行结果如下图: 3、请逐步完成下列的程序设计: (a)、设计一个父类Caaa,内含public两个整数数据成员。 (b)、设计一个子类Cbbb,继承自Caaa类,并加入set_num()方法,可用来赋值从父类继承而来的成员num1,num2,和show()方法,用来显示num1与num2的值。 (c)、在Caaa类里加入一个没有参数的构造函数Caaa(),它可用来把num1和num2赋值初值为1。 (d)、在类里加入另一个有参数的构造函数Caaa(inta,intb),它可用来把num1赋值为a,把num2赋值为b。 (e)、在main()方法里编写程序代码,测试(c)和(d)的结果。 classCaaa{ … } Caaa(inta,intb){ this.num1=a; this.num2=b; } publicvoidshow(){ System.out.println("num1="+num1); System.out.println("num2="+num2); } } classCbbbextendsCaaa{ voidset_num(){ } publicvoidshow(){ System.out.println("num1="+num1); System.out.println("num2="+num2);}} publicclassshixun3_3{ publicstaticvoidmain(Stringargs[]){ Caaaca1=newCaaa(); Cbbbcb1=newCbbb(); cb1.show(); Caaaca2=newCaaa(2,5); Cbbbcb2=newCbbb(); ca2.show(); 运行结果如右图: 4、设计一个类,内含一个方法可以判别输入的值为奇数还是偶数,如果为奇数就输出“此数为奇数”,反之若为偶数就输出“此数为偶数”。 publicinta; voidc1(inta){ if(a%2==0) System.out.println(a+"是一个偶数"); else System.out.println(a+"是一个奇数"); 运行结果如右图: 实训分析总结: 1、什么是类? 请写出定义类的格式。 类是组成Java程序的基本要素,也是Java种重要的引用数据类型, 格式: [修饰符]class类名[extendsSuperclassName][implementsinterfaceNameLsit]{…//成员变量声明 …//成员方法声明} 2、如何创建一个类和该类的对象? 创建类: Publicclasstest{ Inta,b; Publicvoidteach(){}} 创建类对象: Testt=newtest(); 3、如何使用类的成员变量和方法? 成员变量: [修饰符]类型符成员变量名[=初始值] 成员方法: [修饰符]类型符方法名([参数表])[throws异常名]{ … Return(表达式);} 4、什么是方法? 方法是指对象的行为 5、什么是继承? 特殊类的对象拥有其一般类的全部属性与服务,称作特殊类对一般类的继承。 例如,轮船、客轮;人、大人。 一个类可以是多个一般类的特殊类,它从多个一般类中继承了属性与服务,这称为多继承 6、什么是封装? 封装性就是把对象的属性和服务结合成一个独立的相同单位,并尽可能隐蔽对象的内部细节,包含两个含义: 把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立单位(即对象)。 信息隐蔽,即尽可能隐蔽对象的内部细节,对外形成一个边界〔或者说形成一道屏障〕,只保留有限的对外接口使之与外部发生联系 实训四简单计算器模拟 实训目的: 1、熟练掌握图形用户界面的设计和各组件的应用 2、能够处理一般事件的响应 实训环境: Windowsxp; Jcreator 实训内容: 1、设计一个窗口,内含一个按钮,当按下此按钮的时候,窗口的颜色会从原来的白色变成其他你所设置的颜色。 publicclassbianseextendsJFrameimplementsActionListener{ JButtonbt; JFramefrm=newJFrame(); publicbianse(){ bt=newJButton("变色"); bt.addActionListener(this); frm.add(bt); frm.setTitle("变色"); frm.setLocation(200,200); frm.setSize(200,220); frm.setVisible(true); peration(JFrame.EXIT_ON_CLOSE); } publicvoidactionPerformed(ActionEvente){ /*floata,b,c;*/ if(e.getSource()==bt){ /*a=(float)(Math.random()); b=(float)(Math.random()); c=(float)(Math.random());*/ frm.setForeground(Color.red); 运行结果如图: 2、设计一个包含有文本框和标签的窗口,在文本框中输入一段文字,按回车后,将该段文字内容加入到标签中显示。 JFramejf=newJFrame(); JPaneljp=newJPanel(); finalJLabeljl=newJLabel(); finalJTextFieldjtf=newJTextField(); jf.add(jp); jp.setLayout(newGridLayout(2,1)); jp.add(jl); jp.add(jtf); jtf.addKeyListener(newKeyAdapter(){ publicvoidkeyPressed(KeyEvente){ if(e.getKeyCode()==KeyEvent.VK_ENTER){ jl.setText(jtf.getText()); 运行结果如图: 3、每一个Windows版本都提供了“计算器”应用程序,可以在附件里打开它,利用AWT组件创建计算器。 JFramejf; JTextFieldjtf; String[]b=newString[]{"+","-","*","/","."}; JButtonjis=newJButton("="); privateinttemp=0; privatefloatresult=0; privatefloatfnumber=0,bnumber=0; publicCal(){ init(); } publicvoidinit(){ jf=newJFrame(); jtf=newJTextField(); Containerc=jf.getContentPane();//ReturnsthecontentPaneobjectforthisframe. etHorizontalAlignment(JTextField.RIGHT);//设置文本的水平对齐方式 jtf.setLayout(newGridLayout()); c.add(jtf,BorderLayout.NORTH);// JPaneljp=newJPanel(); jp.setLayout(newGridLayout(4,4)); c.add(jp,BorderLayout.CENTER); JButton[]ja=newJButton[10]; JButton[]jb=newJButton[5]; for(inti=0;i<10;i++){ ja[i]=newJButton(""+i); ja[i].addActionListener(this); } for(intj=0;j<5;j++){ jb[j]=newJButton(""+b[j]); jb[j].addActionListener(this); } for(inti=0;i<10;i++){ jp.add(ja[i]); } for(intj=0;j<5;j++){ jp.add(jb[j]); } jp.add(jis); jis.addActionListener(this); jf.setSize(200,300); jf.setVisible(true); } publicvoidactionPerformed(ActionEvente){ Strings=e.getActionCommand(); if(s.equals("+")){ this.fnumber=Float.parseFloat(this.jtf.getText()); this.jtf.setText(""); this.temp=1; } elseif(s.equals("-")){ this.fnumber=Float.parseFloat(this.jtf.getText()); this.jtf.setText(""); this.temp=2; } elseif(s.equals("*")){ this.fnumber=Float.parseFloat(this.jtf.getText()); this.jtf.setText(""); this.temp=3; } elseif(s.equals("/")){ this.fnumber=Float.parseFloat(this.jtf.getText()); this.jtf.setText(""); this.temp=4; } elseif(s.equals(".")){ if(jtf.equals("")){ jtf.setText("0."); } else{ jtf.setText(jtf.getText()+"."); } } elseif(s.equals("=")){ this.bnumber=Integer.parseInt(this.jtf.getText()); switch(this.temp){ case1: result=fnumber+bnumber; this.jtf.setText(String.valueOf(result)); break; case2: result=fnumber-bnumber; this.jtf.setText(String.valueOf(result)); break; case3: result=fnumber*bnumber; this.jtf.setText(String.valueOf(result)); break; case4: result=fnumber/bnumber; this.jtf.setText(String.valueOf(result)); 运行结果如图: 实训分析总结: 1、什么是布局管理器,它有什么用? 布局管理器: 每个容器都有一个布局管理器,当容器需要对某个组件进行定位或判断其大小尺寸时,就会调用其对应的布局管理器 布局管理器主要包括: FlowLayout,BorderLayout,GridLayout,CardLayout,GridBagLayout 作用: 主要是对组建的位置和大小进行管理。 2、说明文本区和文本框的主要不同点。 文本区多行显示,可加滚动条,文本框单行显示,不能加滚动条 实训五扩展—Java和JSP编写要点练习 实训目的: 1、理解JSP运行环境要求。 2、掌握JSP建立与测试开发环境的方法 3、了解j2ee 实训环境: Windowsxp; Jcreator Eclipse+Tomcat+Access 实训内容: 1、输入密码显示*号 表单控件(FormControl): 密码输入框(inputtype="password") 密码输入框(inputtype="password")主要用于一些保密信息的输入,比如密码。 因为用户输入的时候,显示的不是输入的内容,而是*符号。 例句如下:
2.学生信息管理
importjava.awt.*;……//导入各种包
publicclassstudinfextendsJFrameimplementsActionListener,ItemListener{……//学生信息管理系统的页面设置
publicvoidactionPerformed(ActionEvente){
if(e.getSource()==btn1){//当选择查询时的事件处理过程……}
if(e.getSource()==btn2){//当选择修改是的时间处理过程……}
if(e.getSource()==ok){//当选择保存时的事件处理过程……}
if(e.getSource()==btn3){//选择退出时的事件处理过程dlg.dispose();……}}
publicvoiditemStateChanged(ItemEvente){//单选按钮事件处理方法
……}
voidinitcon(){//主窗口组件的初始化方法……}
//以下代码将各文本框组合到数据P的各元素中
p[0].add(txtxh);p[1].add(txtzhy);
...
JPanelp1=newJPanel(newGridLayout(7,1,0,5));//定义容器组件p1
for(inti=0;i<10;i++)p1.add(p[i]);
//将数组中的各元素组合到p1容器组件中去
p4.add(btn1);p4.add(btn2);p4.add(ok);p4.add(btn3);
p2=newJScrollPane(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 教学 实习 报告