当前位置:文档之家› java小程序设计

java小程序设计

java小程序设计
java小程序设计

课程设计报告

设计题目:用Java编的计算器

院系

班级

设计者

学号

指导教师

设计时间

前言:

通过上课学习了java程序设计的基本原理和模式,这次又以java语言为基本结合其图形应用界面来设计一个包括加、减、乘、除。还有带括号以及带负号、小数运算的计算程序。

系统功能和使用说明:

一.硬件环境:

本系统适用于现应用各种类型的计算机,内存容量为128MB以上,不必配备的外部附加设备。二.软件环境:

本系统的设计采用的是JAVA语言,应在JDK 5.0或者其更高版软件环境下本使用。

三.系统流程图:

1.下图是本程序的运行后的界面,其标注是此组件在程序中的名字

2.系统流程图中各个模块的功能说明:

本程序一共包括:构造方法A5i13w(),setup(), windowClosing(), actionPerformed(), appendchar(), countall(), counting(), Iscountnum()和一个windowcloser类。

(1). A5i13w()是构造方法,在程序创建其对象时就调用,初始化次程序的事件的监听机制。

(2). setup()是我定义的方法,是用来初始化程序的图形应用界面,由A5i13w()来调用。

(3). windowClosing()是用来响应用户的关闭功能。

(4). actionPerformed()是用来处理每个事件的响应的方法

(5). appendchar()方法的作用是在用户产生事件后向Textshow追加产生此事件的字符串

(6).countall()的意义是在用户按“=”号后,从最里层括号向最外层逐层把括号里的内容传递给counting()方法,并负责对括号本身是否符合数学语法要求进行检验。

(7).counting()方法的作用是首先对无括号的数学表达式有关的数学计算符号进行调整,并检验所有的数学符号,如发现错误的数学符号立即在Labelnow中显示出来。

(8).Iscountnum()方法的作用是把“+ - × ÷ % . ( )”算术符号转化相应的数字,便于程序的流程控制。

3.此计算器的基本的计算过程说明:

当用户发出计算整个数学表达式的命令后,本计算器首先是对用户向Textshow(即文本域)输入的数学表达式经行括号索检。如果有一层括号,则对括号的内容进行优先计算。如果有多层括号,则按先计算里层括号后计算外层括号的原则进行计算。如果没有发现括号,则只进行一次无括号计算即可。现在是关于要计算的数学表达式,本计算器也能检验此即将计算的数学表达式是否符合数学语法规则。如发现符合数学规则的表达式,则在Labelnow中提示用户,并且Labelnow的背景颜色将变成红色。

在计算的开始,计算的过程,计算的出错,计算的成功,我都设计好不同的背景颜色与之对应。用户要注意Labelnow的提示信息。

在提示信息的对应要求,我认为次程序是不符合要求的。有几条提示信息只是告诉用户你输入的表达式有问题,并不能很明确的告诉用户他的出错的地方。这是我作为程序的开发者对错误的分类标准把握的不好造成的。是的,这是我的作品的不足。但是,我要说一句话,本程序的重点是计算出合法的数学表达式,而对非法的表达式过于重视是否有一点本末倒置呢?

四.程序执行的流程图

五.程序的调试出错情况:

我在程序的调试过程中最容易发生的错误就是:

就是我画红线的句子即是“Exception in thread "AWT-EventQueue-0" https://www.doczj.com/doc/2f11164885.html,ng.NumberFormatException”。用户输入的数学表达式在我设计的程序转化为数学计算形式是不可行的。假如是正确的数学表达式,则我的程序在处理数字转化方面是有问题的,为了解决这个问题我花大时间去重写我的程序的核心代码。终于,我找到了一种捷径——把无括号的数学表达式进行校正合理的转化为在数字和数字之间只有一个运算符。虽然我就摆平这个问题,但是我为了解程序执行的具体的过程,在DOS中都有关于每一步的提示信息。

六.结论:

1.这次课程设计心得

是的,JAVA的功能是十分强大的。借助其强大的平台。我的程序不仅有不错(至少我这样认为)的图形界面,而且其程序本身的功能也得到很好的发挥。次程序支持一般的四则运算(包括括号)。更有状态栏,以便程序在执行过程中向用户反馈一些必要的信息。

2.总结

通过这次课程设计,我真的在实践中学到的不仅是课本知识的巩固和提高,而且还有在实践中使我着手解决不少程序设计的细节问题。它们包括程序算法的设计和图形界面的构建的两大方面。而我个人认为我越早接触,越多接触,越快解决对我本人缩短次过程有重要的意义。

七.原程序

import java.awt.*;

import java.awt.event.*;

public class A5i13w extends Frame implements ActionListener

{

private Label Labelshow=new Label("显示区:");

private Label Labelsay=new Label("状态:",Label.CENTER);

private Label Labelnow=new Label("欢迎使用我,艾全通为你带来的科学计算器",Label.LEFT); private Label Labeltime=new Label("暂且为空");

//为以后添加其他的辅助功能

private TextField Textshow=new TextField(40);

private Panel pan1=new Panel();

private Panel pan2=new Panel();

private Panel pan3=new Panel();

private Button button1=new Button("1");

private Button button2=new Button("2");

private Button button3=new Button("3");

private Button button4=new Button("4");

private Button button5=new Button("5");

private Button button6=new Button("6");

private Button button7=new Button("7");

private Button button8=new Button("8");

private Button button9=new Button("9");

private Button button10=new Button("0");

private Button button11=new Button("+");

private Button button12=new Button("-");

private Button button13=new Button("× ");

private Button button14=new Button("÷");

private Button button15=new Button("%");

private Button button16=new Button("(");

private Button button17=new Button(")");

private Button button18=new Button("清零");

private Button button19=new Button(".");

private Button button20=new Button("=");

private Font wordFont1 =new Font("TimesRoman",Font.BOLD,13);

private Font wordFont2 =new Font("TimesRoman",Font.BOLD,30);

public A5i13w() //构造方法来初始化本程序的变量

{

super("我的科学计算器");

setup();

button1.addActionListener(this);

button2.addActionListener(this);

button3.addActionListener(this);

button4.addActionListener(this);

button5.addActionListener(this);

button6.addActionListener(this);

button7.addActionListener(this);

button8.addActionListener(this);

button9.addActionListener(this);

button10.addActionListener(this);

button11.addActionListener(this);

button12.addActionListener(this);

button13.addActionListener(this);

button14.addActionListener(this);

button15.addActionListener(this);

button16.addActionListener(this);

button17.addActionListener(this);

button18.addActionListener(this);

button19.addActionListener(this);

button20.addActionListener(this);

addWindowListener(new windowcloser());

setResizable(false); //设置此图形界面是不可以改变大小的pack();

setVisible(true);

}

public void setup() //搭建次程序的图形应用界面{

pan1.setLayout(new BorderLayout());

Labelshow.setFont(wordFont1);

pan1.add("West",Labelshow);

Textshow.setFont(wordFont1);

pan1.add("Center",Textshow);

pan2.setLayout(new GridLayout(4,5,5,6));

button1.setFont(wordFont2);pan2.add(button1);

button2.setFont(wordFont2);pan2.add(button2);

button3.setFont(wordFont2);pan2.add(button3);

button4.setFont(wordFont2);pan2.add(button4);

button5.setFont(wordFont2);pan2.add(button5);

button6.setFont(wordFont2);pan2.add(button6);

button7.setFont(wordFont2);pan2.add(button7);

button8.setFont(wordFont2);pan2.add(button8);

button9.setFont(wordFont2);pan2.add(button9);

button10.setFont(wordFont2);pan2.add(button10);

button11.setFont(wordFont2);pan2.add(button11);

button12.setFont(wordFont2);pan2.add(button12);

button13.setFont(wordFont2);pan2.add(button13);

button14.setFont(wordFont2);pan2.add(button14);

button15.setFont(wordFont2);pan2.add(button15);

button16.setFont(wordFont2);pan2.add(button16);

button17.setFont(wordFont2);pan2.add(button17);

button18.setFont(wordFont2);pan2.add(button18);

button19.setFont(wordFont2);pan2.add(button19);

button20.setFont(wordFont2);pan2.add(button20);

pan3.setLayout(new FlowLayout(FlowLayout.CENTER,2,2)); Labelsay.setFont(wordFont1);

Labelsay.setBackground(Color.blue );

pan3.add(Labelsay);

Labelnow.setFont(wordFont1);

Labelnow.setBackground(Color.gray);

pan3.add(Labelnow);

Labeltime.setBackground(Color.gray);

Labeltime.setFont(wordFont1);

pan3.add(Labeltime);

setLayout(new BorderLayout( ) );

add("North",pan1);

add("Center",pan2);

add("South",pan3);

}

public class windowcloser extends WindowAdapter //通过构建类部类来使本程序可通过图形关闭{

public void windowClosing(WindowEvent w)

{ System.exit(0); }

}

public void actionPerformed(ActionEvent e) //事件响应的处理

{

if(e.getSource()==button18)

{ Textshow.setEditable(true);

Textshow.setText("");

Labelnow.setBackground(Color.green);

Labelnow.setText("请按标准的数学形式输入数字!"); }

else

{

if(e.getSource()==button20)

{

String QU=new String(Textshow.getText( ) );

System.out.println();

System.out.println(); //在DOS中显示计算过程前,先空两行。便于前后计算的区分!

System.out.println("即将计算的表达式是:"+QU);

Labelnow.setText("计算程序正在运行");

appendchar( button20.getLabel());

appendchar( countall ( QU ) );

Textshow.setEditable(false); //设置次文本域不可编辑

}

else

{ appendchar(e.getActionCommand( ) ) ; }

}

}

public void appendchar(String aa) //追加被激活按钮的对应事件名字

{

StringBuffer tt=new StringBuffer(Textshow.getText().trim()); //去除空格等无用字符

tt.append(aa);

Textshow.setText (new String(tt) );

}

public String countall(String tt) //从整体上,来以括号为单位分解来用户输入的数学表达式的方法

{

StringBuffer mm=new StringBuffer(tt);

Boolean errorstop=true;

int i, j, m=0, n=0;

for( ; m!= -1 ; ) //开始对括号内容经行优先处理

{ m= -1; n=-2;

for(i=0; i

if( mm.charAt(i)= = '(' ) { m=i; System.out.println(" 在"+m+"处找到'(' " ); }

for(n=-1,j=m+1;j

if(mm.charAt(j)= = ' ) ' ) { n=j; System.out.println(" 在"+n+"处找到')' " ); break;}

if(m<0&&n<0) break; //如没有找到括号,则跳出次部分

else

{

if(m*n<0||m>=n-1||m>0&&Iscountnum(mm.charAt(m-1))==0||n

Iscountnum( mm.charAt(n+1))==0 ) //如找到:半个括号,无内容的括号,前半个括号一个字符是数字或者是小数点,后一个括号的下一个字符是数字或者是小数点都提示一下错误{ Labelnow.setBackground(Color.red);

Labelnow.setText("小括号语法错误,请纠正!");

System.out.println("发生小括号语法错误。");

System.out.println(mm);

mm.setLength(0); //强行清空字符变量的内容,使此方法此次计算的返回值为空

errorstop=false;

break;}

else

{ System.out.println("正在计算括号内的数据!"+mm.substring(m+1,n));

mm.replace(m,n+1,counting(mm.substring(m+1,n))); //把括号的部分用计算的结果来取代

System.out.println("经过括号计算后的字符串的值是:"+ mm);}

}

}

if(errorstop) //进行最后一级运算(即无括号计算)

{ System.out.println("正在进行无括号计算!");

mm.replace(0,mm.length(),counting(mm.substring(0,mm.length())));

System.out.println("最终的结果为:"+mm); }

return(mm.toString( ) );

}

public String counting(String qq) //处理无括号部分计算的核心方法

{

StringBuffer nn=new StringBuffer(qq);

Double numgroup[]=new Double[20];

numgroup[0]=Double.MIN_VALUE;

StringBuffer result=new StringBuffer(Double.toString(numgroup[0]));

Boolean cancounting0=true;

Boolean cancounting1=true;

Boolean cancounting2=true;

Boolean cancounting3=true;

Character countnum[]=new Character[20];

int i,j,t=0;

if(Iscountnum(nn.charAt(0))>2&&Iscountnum(nn.charAt(0))<7||Iscountnum(nn.charAt(nn.length()-1))<7&& Iscountnum(nn.charAt(nn.length()-1))>0) //如此部分的第一个字符是小数点或是“×”、“÷”、“%”其中之一,此部分的最后一个字符不是以数字结尾都是非法数学表达式

{ cancounting0=false;

System.out.println("此部分的数据有问题"+nn+"不可以进行计算啊");

Labelnow.setBackground(Color.red);

Labelnow.setText("请纠正数据后再按=键进行计算1"); }

if(cancounting0)

{

for(j=2;j

{ if(Iscountnum(nn.charAt(j-2))!=0&&Iscountnum(nn.charAt(j-1))!=0&&Iscountnum(nn.charAt(j))!=0 ) //如出现连续三个数学计算(包括小数点)是非法数学表达式

{ cancounting1=false;

System.out.println(nn);

Labelnow.setBackground(Color.red);

Labelnow.setText("请纠正数据运算符号后再按=键进行计算2"); }

}

for( i=0, j=1; j

{

if(0

{ i=j; System.out.println(i); }

if(nn.charAt(j)=='.'&&Iscountnum(nn.charAt(j-1))!=0||nn.charAt(j-1)=='.'&&Iscountnum(nn.charAt(j))! =0 ) //如小数点的前面或后面不是数字,则提示以下信息

{ cancounting2=false;

System.out.println("此部分的数据小数有问题"+nn+" 不可以进行计算啊");

Labelnow.setBackground(Color.red);

Labelnow.setText("请纠正数据小数的格式后再按=键进行计算3");

break; }

if(0

{ nn.deleteCharAt(j);

System.out.println("检验数学符号没有问题");

j=0; //经操作后次数学表达式改变,要从头开始

}

else if(2

{ nn.deleteCharAt(j);

nn.insert(i,new Character('-'));

System.out.println(nn);

j=0; }

else if(Iscountnum(nn.charAt(j-1))==1&&Iscountnum(nn.charAt(j))==2)

//出现“+—”把“+”号删掉

{ nn.deleteCharAt(j-1);

System.out.println(nn);

j=0;}

else if(Iscountnum(nn.charAt(j-1))==2&&Iscountnum(nn.charAt(j))==2)

//出现“——”把“——”号用“+”代替

{ nn.replace(j-1,j+1,new String("+"));

System.out.println(nn);

j=0;}

else if(Iscountnum(nn.charAt(j-1))*Iscountnum(nn.charAt(j))!=0)

//出现其他连有两个数学符号的情况是不正确的,则有以下错误消息

{ cancounting3=false;

System.out.println("此部分的数据运算符号有问题"+nn+"不可以进行计算啊");

Labelnow.setBackground(Color.red);

Labelnow.setText("请纠正数据后再按=键进行计算4");

break; }

}

System.out.println("校对后的此部分的数学表达式是:"+nn);

}

if(cancounting0&&cancounting1&&cancounting2&&cancounting3)

//现在把校对的数学表达式划分为数字和计算符两部分,并分别储存在两个不同的数组中

{

for(i=0,j=1;j

{

if(Iscountnum(nn.charAt(j))!=0&&nn.charAt(j)!='.')

{ numgroup[t]=Double.parseDouble(nn.substring(i,j));

countnum[t]=new Character(nn.charAt(j));

System.out.println("表达式中的数字和计算符分别是"+numgroup[t]+" --------- "+countnum[t]);

i=j+1;

t++;}

}

numgroup[t]=Double.parseDouble(nn.substring(i,j) );

System.out.println("表达式最后一个数字和要计算的数字个数是"+numgroup[t]+" ————"+(t+1));

for(i=0;i

if(2

{switch(Iscountnum(countnum[i]))

{ case 3: numgroup[i]=numgroup[i]*numgroup[i+1];break;

case 4: numgroup[i]=numgroup[i]/numgroup[i+1];break;

case 5: numgroup[i]=numgroup[i]%numgroup[i+1];break;}

for(j=i;j

{ numgroup[j+1]=numgroup[j+2];

countnum[j]=countnum[j+1];}

if(i

numgroup[j+1]=numgroup[j+2];

i--;

t--;

}

for(i=0;i

if(0

{ switch(Iscountnum(countnum[i]))

{case 1: numgroup[i]=numgroup[i]+numgroup[i+1];break;

case 2: numgroup[i]=numgroup[i]-numgroup[i+1];break;}

for(j=i;j

{numgroup[j+1]=numgroup[j+2];

countnum[j]=countnum[j+1];}

if(i

numgroup[j+1]=numgroup[j+2];

i--;

t--;

}

System.out.println("此部分的数计算结果是:"+numgroup[0]);

Labelnow.setBackground(Color.cyan);

Labelnow.setText("Ok!此部分运行结束!");

result=new StringBuffer(Double.toString(numgroup[0]));

}

if(numgroup[0]==Double.MIN_VALUE) //考虑非法数学表达式的返回值

{ result.setLength(0); //设置次返回值为空

if(Labelnow.getText().equals("计算程序正在运行")) //对我,作为程序开发者没有考虑到情况进行补充{ System.out.println("程序发生了严重的错误,请联系管理员");

Labelnow.setBackground(Color.red);

Labelnow.setText("程序发生错误!一定要注意其结果是无效的"); }

}

return(result.toString());

}

public int Iscountnum(Character hh) //把运算符转化相应的数值的方法{

String mm=new String("+-×÷%.()");

int i,t=-1;

for(i=0;i

if(mm.charAt(i)==hh)

{ t=i;break;}

return(t+1);

}

public static void main(String[] args){

A5i13w at=new A5i13w();

}

}

(完整版)Java程序设计实验报告

Java 程序设计实验报告

实验一 JDK开发环境和结构化程序设计 实验学时:2 实验类型:综合性 一、实验目的 1.熟悉JDK开发环境。 2.熟悉UltraEdit/NotePad等编辑器编写、编译、运行Java程序。 3.掌握Java Application的程序结构和开发过程。 4.掌握Eclipse工具的使用。 5.结构化程序设计 二、实验内容 1.JDK开发环境 (1)J2sdk开发环境安装。假设JDK的安装路径为C:\JDK; (2)设置环境变量PATH和CLASSPATH(如果在autoexec.bat中没有进行设置)。如 SET PATH=C:\JDK\BIN;%PATH% SET CLASSPATH=.; %CLASSPATH%;d:\test_java (自己的工作目录) 2.UltraEdit/Notepad编辑器 练习使用Ultraedit/Notepad创建Java源程序的方法。

3.掌握Java Application程序开发过程 (1)编辑源程序,如下程序: import java.io.*; public class HelloWorld1{ public static void main(String arg[]){ System.out.println("Hello World!"); } } (2)保存文件,(注意大小写)。可将文件保存在“D:\test_java\”目录中,注意文件名为HelloWorld1.java。 (3)进入命令行(MS-DOS)方式,设定当前目录为“D:\test_java\”,运行Java 编译器: D:\test_java>javac HelloWorld1.java (4)如果输出错误信息,则根据错误信息提示的错误所在行返回EditPlus编辑器进行修改。常见错误是类名与文件名不一致、当前目录中没有所需源程序、标点符号全角等。 如果没有输出任何信息或者出现“deprecation”警告,则认为编译成功,此时会在当前目录中生成HelloWorld1.class文件。 (5)利用Java解释器运行这个Java Application程序,并查看运行结果。 D:\test_java>java HelloWorld1 4.Eclipse开发环境的使用 练习使用Eclipse实现第3步中Java HelloWorld程序的方法。

JAVA代码编写一简单网络聊天程序

要求:聊天室服务器、聊天室客户端;客户端之间可以聊天。 因为我是初级选手,想借此程序分析学习java,所以代码最好多一点注释... 分数有限,望大家不吝赐教!!问题补充: 需要图形用户界面哦,最好用swing组件 服务器端:采用多线程,可以向客户广播:当前聊天室人数,客户名称列表,客户进入离开提示; 客户端:可以设定昵称,性别,客户间可以私聊 服务器端: import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; import https://www.doczj.com/doc/2f11164885.html,.*; public class Server extends JFrame implements ActionListener{ JPanel contentPane; JLabel jLabel2 = new JLabel(); JTextField jTextField2 = new JTextField("4700"); JButton jButton1 = new JButton(); JLabel jLabel3 = new JLabel(); JTextField jTextField3 = new JTextField(); JButton jButton2 = new JButton(); JScrollPane jScrollPane1 = new JScrollPane(); JTextArea jTextArea1 = new JTextArea(); ServerSocket server = null; Socket socket = null;BufferedReader instr =null;PrintWriter os=null ; //Construct the frame public Server() { jbInit(); } class MyThread extends Thread{//该线程负责接受数据 public void run(){ try{ while(true){ this.sleep(100); instr= new BufferedReader(new InputStreamReader(socket.getInputStream())); if(instr.ready()){ //检查是否有数据 jTextArea1.append("客户端: "+instr.readLine()+"\n"); } } }catch(Exception ex){} }

JAVA程序设计课程教学大纲

课程编号: “Java语言程序设计”课程教学大纲 Java Program Design Course Outline 60学时3学分 一、课程的性质、目的及任务 Java语言程序设计是计算机科学与技术专业软件方向的一门必修课程。通过本课程的教学,深化学生面向对象的编程设计思想和新一代程序设计的逻辑思维方式,提高学生在软件设计过程中分析问题和解决问题的实际动手能力,使学生的理论知识和实践技能得到共同发展。通过对Java语言及基于Java语言的程序设计的教学,培养学生用Java进行面向对象程序设计的能力。 要求掌握Java的基本语法、面向对象的语言特性、例外处理、applet、图形用户界面、多线程、输入输出、网络编程、JDBC以及面向对象程序设计的主要原则和方法。 二、适用专业——计算机科学与技术 三、先修课程——C++程序设计 四、课程的基本要求 通过本课程的学习,学生应能达到下列要求: (1)了解JAVA语言的基本语法。 (2)熟悉JAVA编程开发环境如JDK1.4和JCreator的安装、配置和使用。 (3)掌握一般图形用户的设计和事件处理机制。 (4)掌握Java实现多线程、流式输入输出的方法。 (5)掌握与数据库连接的方法。 (6)掌握网络编程的基本思想和方法。 (7)能比较熟练地用JAVA语言进行一般的程序设计,培养良好的编程风格和习惯。 五、课程的教学内容 (一)课堂讲授的教学内容 1.Java和面向对象概述 Java语言概述,面向对象软件方法概述,面向对象的基本概念。 2.Java运行环境 安装并配置Java平台,Java集成开发环境,Java程序的结构。 3.Java语言基础 Java的关键字、标识符,数据类型,常量与变量,运算符,流程控制语句。 4.类和对象 基本概念,类,方法,访问控制符,静态修饰符、静态字段和静态方法,抽象类与抽象方法,最终类、最终属性与最终方法。 5.继承 继承的概念,扩展类,多态与动态绑定,构造函数的继承与重载,包,接口。 6.字符、字符串和数组

Java程序设计实验报告分析

学生实验报告 (理工类) 课程名称: JAVA程序设计专业班级: 13电子信息工程(2)学生学号: 1305102056 学生姓名:许伟铭 所属院部:软件工程学院指导教师:王倩倩 20 15 ——20 16 学年第 2 学期 金陵科技学院教务处制

实验报告书写要求 实验报告原则上要求学生手写,要求书写工整。若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。纸张一律采用A4的纸张。 实验报告书写说明 实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。各院部可根据学科特点和实验具体要求增加项目。 填写注意事项 (1)细致观察,及时、准确、如实记录。 (2)准确说明,层次清晰。 (3)尽量采用专用术语来说明事物。 (4)外文、符号、公式要准确,应使用统一规定的名词和符号。 (5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。 实验报告批改说明 实验报告的批改要及时、认真、仔细,一律用红色笔批改。实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。 实验报告装订要求 实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。

实验项目名称:JAVA编程基础实验学时: 4 同组学生姓名:————实验地点: 1514/A203 实验日期: 2016.04.08 实验成绩: 批改教师:王倩倩批改时间:

一、实验目的和要求 (1)熟练掌握JDK1.7及Eclipse Kepler Service Release 1(下简称Eclipse)编写调试Java应用程序及Java小程序的方法; (2)熟练掌握Java应用程序的结构; (3)了解Java语言的特点,基本语句、运算符及表达式的使用方法; (4)熟练掌握常见数据类型的使用; (5)熟练掌握if-else、switch、while、do-while、for、continue、break、return 语句的使用方法; (6)熟练掌握数组和字符串的使用; (7)调试程序要记录调试过程中出现的问题及解决办法; (8)编写程序要规范、正确,上机调试过程和结果要有记录,不断积累编程及调试经验; (9)做完实验后给出本实验的实验报告。 二、实验仪器和设备 奔腾以上计算机,Windows 操作系统,装有JDK1.7和Eclipse软件。 三、实验过程 (1)分别使用JDK命令行和Eclipse编译运行Java应用程序。记录操作过程。 Java应用程序参考如下: 思考:1. 适当添加注释信息,通过javadoc生成注释文档; 2. 为主方法传递参数“Hello world”字符串,并输出; 3. 压缩生成".jar"文件。 (2)分别使用JDK命令行和Eclipse编译Java Applet,并建立HTML文档运行该Applet。 记录操作过程。 Java小应用程序参考如下:

java简单聊天小程序

网络编程java简单聊天小程序[下次修改成多线程的,这个必须等待对方输入结束,有机会修改成可视化窗口] By 刘汪洋 写入正确的ip地址即可正常用当然目前只停留在命令行界面 还没有写成可视化窗口界面 运行时请带上参数 如java TransServer 张三 Java TransClient 李四 ( 和刘正南在局域网试验的截图成功 这是修改后的 加上了姓名! ) (修改前的截图)

代码: 客户端: package com.baidu.chat; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import https://www.doczj.com/doc/2f11164885.html,.Socket; import https://www.doczj.com/doc/2f11164885.html,.UnknownHostException; // 简单聊天小程序客户端 public class TransClient { public static void main(String[] args)

{ if(args[0]==null) args[0] = "他"; startClient(args[0]); } private static void startClient(String name) { Socket sk = null; BufferedReader bufr = null; try { sk = new Socket("127.0.0.1",10000);// 1 创建 socket服务 bufr = new BufferedReader(new InputStreamReader(System.in));// 2 获取录入键盘 PrintWriter out = new PrintWriter(sk.getOutputStream(),true);// 3 获取输出流true表示自动刷新 BufferedReader bufIn = new BufferedReader(new InputStreamReader(sk.getInputStream()));// 4 获取输入流 // 5 发送获取 String text_send = ""; String text_get = ""; String ServerName = ""; System.out.print("聊天已开启..."+"\r\n"+"我说:");

银行存取系统设计与实现(所有代码)JAVA课程设计

《JA V A程序设计》 课程设计报告 设计题目:银行存取系统设计与实现

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

JAVAWEB程序设计报告模板

南京晓庄学院《JAVA WEB程序设计》 课程报告 题目: 学生信息管理系统 姓名: 沈莉莉 学号: 13131320 班级: 13计算机转本1班 完成时间2016年6月23号 成绩:

数学与信息技术学院

目录 1.系统需求分析 (1) 2.相关技术与原理介绍 (1) 3.系统分析与设计 (2) 3.1 系统功能分析 (2) 3.2 系统结构分析 (2) 3.3 数据库设计 (3) 4.系统实现 (4) 4.1 登录模块实现 (4) 4.2 教师模块实现 (6) 4.3 成绩模块实现 (7) 4.4 学生模块实现 (8) 5.总结与体会 (11) 5.1 工作总结 (11) 5.2 改进设想 (11)

1.系统需求分析 (对系统的功能需求进行分析) 在本次的实验中主要用到了Eclipse、Mysql、Tomcat等软件。用JSP和JAVABEAN 编写代码,编写完的低吗主要用来实现教师、学生、成绩以及课程的查询、修改、删除等操作。 2.相关技术与原理介绍 (对Tomcat、MySQL、JSP、JDBC、JAVABEAN等技术进行简要介绍) 2.1、Tomcat简介 Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问童虎不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,当一台机器上配置好Apache服务器,可利用它响应HTML(标通用标记语言下的一个应用)页面访问的请求。实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你圆形tomcat时,它实际上是作为一个与Apache独立的进程单独运行。 2.2、MySQL的简介 MySQL是一个小型关系数据库管理系统,它的主要特性如下: (1)支持多线程,充分利用CPU资源。 (2)一共TCP/IP、ODBC和JDBC等多种数据库连接途径。 (3)使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。 2.3、JSP的简介 JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 2.4、JDBC的简介 JDBC 扩展了Java 的功能。例如,用Java 和JDBC API 可以发布含有applet 的网页,而该applet 使用的信息可能来自远程数据库。企业也可以用JDBC 通过Intranet 将所有职员连到

java记事本课程设计论文附源码

设计题目:记事本课程设计 专业:电子信息科学与技术 班级:电子1202班 学号:20121210606 姓名:王鹏 2015 年7月

XXX学院本科学生课程设计任务书

摘要 目前,很多新的技术领域都涉及到了Java语言,Java语言是面向对象编程,并涉及到网络、多线程等重要的基础知识,因此Java语言也是学习面向对象编程和网络编程的首选语言。此次课程设计主要通过编写一个简单的记事本程序使我们深入理解并实践在本课程中所学的有关JAVA程序设计方面的语言基础、异常处理、事件处理、小应用程序以及图形用户界面设计等内容。此简易记事本程序,使用Java程序编写,能够进行输入文字操作,并具有新建文件,打开文件,保存文件,退出,复制,粘贴,剪切等功能。该程序主要用到了Java swing和事件监听等。 关键词记事本程序,java语言,Java swing

目录 摘要 (1) 1 需求分析 (3) 1.1需求分析 (3) 1.2功能设计 (3) 2 概要分析 (4) 2.1概要设计思想 (4) 2.2程序运行界面 (4) 2.3程序模块说明 (4) 2.4流程图 (5) 2.5程序相关说明 (6) 3 程序详细设计与分析 (8) 3.1构建菜单栏及其下拉菜单 (8) 3.2“文件”菜单操作的事件监听 (8) 3.3“编辑”、“格式”等菜单的事件监听 (10) 3.4异常处理 (11) 4 测试分析 (12) 5 源程序清单 (15) 结论 (22) 参考文献 (23)

1 需求分析 1.1需求分析 现在网络上各种文档编辑器数不胜数,有EmEditor ,UEStudio ,GridinSoft Notepad ,Notepad++,win32pad ,SkimEdit,UniRed, xint 。功能也是应有尽有,有能改变字体的,有能改变文字颜色的。但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。仅从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就是依照这样一种使用需要设计了一个简单的记事本程序。 1.2功能设计 本程序要构建的记事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面: 1、菜单中有“文件”,“编辑”,“格式”,“查看”,“帮助”五个主菜单。 2、“文件”有“新建”“打开”“保存”“另存为”“退出”五个子菜单:分别用于新建文件,打开文件,保存文件,另存文件,退出记事本。 3、“编辑”中有“撤销”“剪切”“复制”“粘贴”“全选”“时间/日期”六个字菜单:用于撤销操作,剪切文字,复制文字,粘贴文字。全部选择,插入日期、时间。 4、“格式”菜单中有“自动换行”和“字体”两个子菜单。 5、“查看”菜单只是显示状态栏。 6、“帮助”菜单中只有“关于记事本”子菜单,主要用于显示该程序的名字,版本等信息。

java版基于UDP协议网上聊天程序课程设计

湖南工业大学 课程设计 资料袋 计算机与通信学院学院(系、部)2013 ~ 2014 学年第 1 学期课程名称网络协议分析指导教师李建设职称副教授 学生姓名专业班级网络工程学号 题目基于UDP协议网上聊天程序 成绩起止日期2013 年11 月25 日~2013 年12 月13 日 目录清单

5 6 课程设计任务书 2013 —2014学年第1 学期 学院(系、部)计算机与通信学院专业网络工程班级102 课程名称:网络工程学生姓名: 设计题目:基于UDP协议网上聊天程序指导教师:李建设 完成期限:自2013 年11 月25 日至2013 年12 月13 日共 3 周 容 及 任 务 一、设计内容 实现一个基于UDP协议的简单的聊天程序,包括服务器和客户端。 1.支持多人聊天。 2.客户端具有图形化用户界面。 二、设计任务 课程设计说明书(纸质+电子版),内容包括:设计内容、系统分析(包括可行性分析、需求分析等)及功能分析;系统设计(要求画出系统整体功能框图、流程图、并给出相应地关键的代码且对所使用的主要数据结构进行说明等。)、设计总结(评价/遇到的问题/体会/建议等)、使用说明等。 三、设计要求 1.按功能要求开发系统,能正确运行。程序代码书写规范,有充足的注释。 2.课程设计所使用的编程语言任选,但建议使用C或C++; 3.绿色软件:程序运行不需安装,避免写系统和注册表; 进 度 安 排 起止日期工作内容 2013-11-25~2013-11-3 选题 2013-12-1~2013-12-3 系统分析和设计; 2013-12-4~2013-12-8 熟悉软件开发工具、编码系统、系统测试 2013-12-9~2013-12-13 撰写并提交课程设计说明书(含电子文档)、源程序等。

JAVA语言程序设计报告

JAVA语言程序课程设计设计题目:实验室设备管理系统

实验室设备管理系统 第一章问题定义 (1) 第二章可行性研究 (1) 2.1 系统建设目标 (1) 2.2 可行性分析 (1) 第三章系统的需求分析 (2) 3.1 实验室设备管理系统的需求陈述 (2) 3.2 使用结构化方法进行系统分析 (2) 3.3 对系统进行面向对象分析 (3) 第四章系统的概要设计 (5) 4.1 系统体系结构图 (5) 4.2 数据库设计 (5) 第五章系统的详细设计及其实现 (8) 5.1主模块 (8) 5.2 用户综合管理模块 (11) 第六章系统测试 (14)

第一章问题定义 每学年要对实验室设备使用情况进行统计、更新,其中: (1)对于已彻底损坏的作报废处理,同时详细记录有关信息。 (2)对于有严重问题(故障)的要即使修理,并记录修理日期、设备名、修理厂家、修理费、责任人等。 (3)对于急需但又缺少的设备需以“申请表”的形式送交上级领导请求批准购买。新设备购入后要立即进行设备登记(包括类别、设备名、型号、规格、单价、数量、购置日期、生产厂家、购买人等),同时更新申请表的内容。 (4)随时对现有设备及其修理、报废情况进行统计、查询,要求能够按类别和时间段(某日期之前)查询。 系统目标与范围说明书 项目名称:实验室设备管理系统。 问题:目前系统式手工操作,费时费力,效率低下。 项目目标:建立一个高效率、自动化操作实验室设备管理的计算机系统。 项目规模:开发成本应该不超过5万元。 初步设想:用学校现有的物力和人力资源开发该系统。 可行性研究:为了全面分析该系统开发的可能性,建议进行大约2周的可行性研究。 可行性研究成本不超过5000元。 第二章可行性研究 2.1 系统建设目标 在对系统初步调查的基础上就可以提出项目的开发目标,即新系统建立后所要求达到的运行指标,这是系统开发和评价的依据。 随着高校规模的扩大,实验室及仓库的增多,人工管理实验设备已变得过于低效,为了解决这一问题,高校实验室设备管理系统将实现设备管理的自动化。 实验室设备管理系统将贯穿于设备从购进到报废的整个流程的管理过程,帮助管理员高效地管理整个高校的所有设备,并给上级领导提供一个审核监督管理的平台,提供整个实验室管理的效率,使总体管理水平上升到一个新的高度。 本系统能减少很多不必要的资源,消除了以前用冗余的纸张式管理,大节省了学校能源。 2.2 可行性分析 可行性分析是任何一个大型工程正式投入力量之前必须进行的一项工作。这对于保证资源的合理利用、避免浪费是一个十分重要的,也是项目一旦开始以后能顺利进行的必要保证。当系统的开发目标确定后,就可以从以下三方面对能否实现新系统目标进行可行性分析: 1. 技术可行性 技术可行性是指:根据现有的技术条件,能否达到所提出的要求;所需要的物理资源是否具备,能否得到。 针对于本系统,本系统属于一个普通的MIS系统。在其组织关系上也未存在的很大的复杂性、繁琐性及不确定性,而且整个系统的技术构成上来看,它还是属于一个简单的数据库应用类的系统。其基本操作还是对存在数据库进行添加、删除、查找、编辑等。所以就单纯的数据库应用来看,暂不存在太大的技术问题。并且本系统的开发我利用access作为本系统的数据库,把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。使用eclipse作为系统开发的开发环境,它作为一种现代的编程语言,提供完善的指令控制语句、类与对象的支持及丰富的数据类型,给开发高性能系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。因此,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,它在技术上是可行的。 2. 经济可行性 经济可行性分析要估计项目的成本和效益,分析项目经济上是否合理,并将费用与效益进行比较,看是否有利。 首先,实验室设备管理系统地实现的硬件支持只是一台简单的计算机,如今的性能

java编写的简单局域网聊天室(适合初学者).

import java.awt.BorderLayout; import java.awt.Button; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.Frame; import java.awt.Panel; import java.awt.Point; import java.awt.TextArea; import java.awt.TextField; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.File; import java.io.FileWriter; import java.io.IOException; import https://www.doczj.com/doc/2f11164885.html,.DatagramPacket; import https://www.doczj.com/doc/2f11164885.html,.DatagramSocket; import https://www.doczj.com/doc/2f11164885.html,.InetAddress; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; public class GUI_Chat extends Frame { private static final long serialVersionUID = 1L; private TextArea viewTextArea = new TextArea(20, 1; private TextArea sendTextArea = new TextArea(; private TextField ipTextField = new TextField(20; private Button sendButton = new Button(" 发送" ; private Button clearButton = new Button(" 清屏" ; private Button logButton = new Button(" 记录" ; private Button shakeButton = new Button(" 震动" ; private Panel panel = new Panel(; private DatagramSocket socket ;

JAVA程序设计-课程标准

《JAVA程序设计》课程标准 一、课程性质 《JAVA程序设计》是计算机类专业的核心课程,是计算机类专业的一门重要的专业基础课程,旨在培养学生程序设计技术和OOP 设计思想,涉及计算机体系结构、面向对象编程、多线程处理、网络通信以及程序设计等内容,通过本课程的学习,学生能够了解Java 语言特征、常见的Java 类库以及面向对象程序设计思想,掌握计算机程序的结构;掌握程序的开发过程;掌握常用数据结构及Java编程语言的语法;学会利用Java 语言编写面向网络应用的简单程序。为以后学习更高级的计算机相关课程,从软件开发相关工作奠定坚实的基础。 二、课程设计思路 1、内容选择 课程中所涵盖的教学内容是依据对行业及相关企业的调研、根据行业专家对IT制造专业所涵盖的岗位群进行的任务和职业能力分析,同时遵循高等职业学校学生的认知规律,紧密结合职业资格证书中相关考核要求。 2、教学法设计 根据本课程的教学目标要求和课程特点以及有关学情,选择适合于本课程的最优化教学法。综合考虑教学效果和教学可操作性等因

素,本课程选用讲授法、实验教学法及案例驱动法。 实验教学法:是指学生在教师的指导下,上机编写程序。 案例驱动法:是指由老师提出或设置某些问题,通过带领学生解决实际的案例教授知识点和类库的用法。 3、内容编排设计 教学内容是根据Java程序员的基本要求,结合职业技能证书考证,培养学生的实践动手能力,使学生在职业实践活动的基础上掌握知识,增强课程内容与职业岗位能力要求的相关性。 三、课程目标 通过本课程的学习,使学生具备Java程序设计语言相关知识、能够编写、调试Java程序,遵守良好的代码编写规范。能够使用Java 语言解决实际问题,能胜任Java程序开发、软件测试等工作任务。 1、知识目标 (1)掌握JAVA语言的基本语法; (2)掌握数组的使用; (3)掌握面向对象程序设计的基本方法; (4)学会处理程序运行中的异常; (5)学会使用Java常用的类,包括(String类,Java包装类,Math类,Java集合框架); (6)学会使用Java IO流读写文件; (7)会使用swing开发简单的图形界面; (8)了解多线程编程;

Java程序的设计实验报告

信息科学与工程学院 课程设计 题目:图书管理系统 姓名:晓雨颖 学号: 201312140115 201312140120 班级: 13级本科四班物联网 课程: Java程序设计 任课教师梦琳 2014年12月20日

课程设计任务书及成绩评定

目录 1前言 (3) 1.1设计目的 (4) 1.2设计任务 (4) 1.3运行环境 (4) 2总体设计 (5) 2.1设计原理............................................. 错误!未定义书签。3详细设计实现.. (5) 3.1 代码 (5) 3.2 登陆后事件处理 (12) 4心得体会................................................ 错误!未定义书签。

1前言 Java的前身是Oak,它一开始只是被应用于消费性电子产品中。后来它的开发者们发现它还可以被用于更大围的Internet上。1995年,Java语言的名字从Oak编程了Java。1997年J2SE1.1发布。1998年J2SE1.2发布,标志Java2的诞生。十多年来,Java编程语言及平台成功地运用在网络计算及移动等各个领域。Java的体系结构由Java语言、Java class、Java API、Java虚拟机组成。它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解决方案。Java的平台标准有Java ME,Java SE和Java EE。Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。目前在众多的支持Java的开发工具中主要的7有Java Development Kit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。其中Java Development Kit 简称JDK是大多开发工具的基础。以上的每种开发工具都有优缺点,对于开发者来说,重要的是要根据自己的开发规模、开发容和软硬件环境等因素来选择一种合适的开发 工具。

java程序设计课程论文

j a v a程序设计课程论文 Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】

成绩 课程论文 题目:学生信息管理系统界面设计 课程名称: java程序设计 学生姓名:刘文璐 学生学号: 16 系别:电子工程学院 专业:通信工程 年级: 2013级 任课教师:窦飞 电子工程学院制

2015年12月 学生信息管理系统界面设计 学生:刘文璐 指导教师:窦飞 电子工程学院通信工程专业 1、引言 学生信息管理系统以计算机为工具,将管理人员从繁琐的数据计算中解脱出来,全面的提高了管理的效率和质量,使得管理更加的规范和严谨。 世界处于信息化时代,人类的生活随着科技的发展越来越好,特别是计算机的出现,更加丰富了多姿多彩的生活。作为新时代的大学生,要随时掌握和利用信息,辅之以科学文化知识,来适应社会发展的要求,将来为祖国奉献自己的一份力。计算机Java语言是一门理论与实践共存的课程,但是更侧重于实践,因此,我们要将实践教学与理论教学达到密切结合。 2、Eclipse的介绍 Eclipse 是一个开放的、基于的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java(Java Development Kit,)。 Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。 3、学生信息管理系统界面设计方案制定 系统总体设计方案 有新生来报到,要逐个录入其信息,如:学生姓名,性别,,出生日期,国籍。要求设计链表类来实现,并统计学生人数。 文本界面为: 1.添加学生信息 2.删除学生信息

《Java程序设计》课程设计报告 (1)

河南工程学院计算机学院课程设计报告书 学号:201312211115 姓名:陈晏猛 学院:计算机学院 专业班级:软件工程1341 专业课程:Java程序设计指导教师:汪伟 2014 年12 月27 日

目录 第1章计算器的设计与实现 (1) 1.1设计目的..................... ..... ... (2) 1.2系统实现思路...................... ... (3) 1.3系统详细设计.............. ..... . (4) 1.4系统调试运行................ ..... .. (7) 第2章2048的设计与实现 (1) 1.1设计目的..................... ..... ... (2) 1.2系统实现思路...................... ... (3) 1.3系统详细设计.............. ..... . (4) 1.4系统调试运行................ ..... .. (7) 第3章课程设计体会 (8) 参考文献................. .... .... (9) 附录................... .... .... .... . (10)

第1章计算器的设计与实现 1.1 设计目的 本课程设计的目的就是通过一次集中的强化训练,使学生能巩固自己的学识,补充未学的但有必要的内容。进行课程设计的目的在于加深对程序设计基础中理论和基本知识的理解,促进理论与实践的结合,进一步提高程序设计的能力。同时,在程序设计方法及上机操作方面受到比较系统严格的训练,培养软件工作所需要的动手能力。 (1)使学生更深入的理解和掌握课程中有关基本概念,程序设计的思想和方法。 (2)培养学生综合运用所学知识独立完成课题的能力。 (3)培养学生勇于探索,严谨推理,实事求是,有错必改,用实践来验证理论,全方位考虑问题等科学技术人员应具有的素质。 (4)提高学生对工作认真负责,一丝不苟,对同学团结友爱,协作攻关的基本素质。 (5)培养学生从资料文献,科学实验中获得知识的能力,提高学生从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。 (6)对学生掌握知识的深度,运用理论去处理问题的能力,实验能力,课程设计的能力,书面及口头表达能力进行考核。

java课程设计聊天小程序

java课程设计聊天小程序

课程设计指导书 姓名学 号 班 级 一 班 课程名称Java课程设计课程性质 设计时间2010年11月4日——2010年12月31日设计名称聊天小程序 设计目的本次课程设计是对前面学过的面向对象的编程思想以及编程方法的一个总结、回顾和实践。开始设计前学生一定要先回顾以前所学的内容,明确本次设计所要用到的技术点并到网上搜索以及查阅相关的书籍来搜集资料。通过编写一个基于JA V A的应用系统综合实例,来掌握Java语言编程技巧。 设计要求1、使用图形用户界面。 2、能实现一个聊天室中多人聊天。 3、可以两人私聊。

计划与进度计划在两个月内完成任务,首先在前半个月内(11月4日--11月19日),构思通过网上(图书馆)的知识与课本上的相关内容的了解与认识,确认好选择的课题与怎样设计,基本的思路想好。十五天(11月19日--12月5日)内参考资料争取完成服务端的程序,在12月5日--12月20日完成客户端的程序设计,在12月20日—12月30日内完成实现报告的填写工作。在12月31日全面完成整个课题,并上交给老师。 任课教师意见备注

课程设计报告 课程: 学号: 姓名: 班级 教师: 时间

计算机科学与技术 设计名称:聊天小程序日期:2010 年 11月 4 日 设计内容:设计一个在图形界面下,实现一个聊天室中多人聊天,也可以私聊的聊天小程序 设计目的与要求:目的是为了更好的掌握java 这门课程的内容,同时更好的理解与掌握socket 编程,对所有面向对象的编程思想以及编程方法的一个总结、回顾和实践,掌握Java语言编程技巧。要求使用图形用户界面。能实现一个聊天室中多人聊天。可以两人私聊。(提示:使用socket通信)程序描述清晰准确,思路清晰,程序能够实现相应的功能。

Java程序设计课程作业

Java程序设计课程作业 第一章绪论 1、安装Java SDK到你的电脑中。 2、选择安装一种Java开发工具到你的电脑中。Jcreater、NetBeans、Eclipse 3、编译并运行一个“Hello World”Java程序。 程序代码: // public class App2_1 { public static void main(String[]args) { System.out.println("hello Word"); } } 4、编译并运行一个Java Applet程序。 答:编译成功,不过浏览器不显示自己的Applet程序,还在学习中,错误的原因是自己电脑上java的安全设置的原因,修改后运行成功。 第二章Java语法基础 1、下列表达式是否有错?若有错,请说明何处出现何种错误;若无错,请给出其值。 (1) 3+4<<2^-8 没有错误,运行结果为-28 (2) 36>>2*4&48<<8/4+2 运行结果为0

有错误,||这个运算规律是两边均为boolean型 (4) 2*4&&0<2||4%2 有错误,||这个运算规律是两边均为boolean型 2、任意准备一份学生成绩表,其中包括至少3门课程、每门课程至少10名同学的成绩。请编写程序完成以下功能:(1) 统计并输出各门课程的平均成绩。(2) 输出等级表:优、良、中、及格及不及格。 import java.util.*; class student{ String num; doublemath; doubleenglish; doublechinese; } publicclass Test{ publicstaticvoid main(String[]agrs){ student stu[]=new student[11]; for(int i=0;i<10;i++) stu[i]=new student(); Scanner reader=new Scanner(System.in); System.out.println("请依次输入十个同学的数学,英语。语文的成绩:"); for(int i=0;i<=10;i++){ System.out.println("第"+(i+1)+"同学的数学,英语。语文的成绩:"); stu[i].math=reader.nextInt(); stu[i].english=reader.nextInt(); stu[i].chinese=reader.nextInt(); } double sum=0; for(int i=0;i<10;i++) sum=sum+stu[i].math; float A=(float)sum/10; System.out.println("数学平均成绩:"+A); //int sum;

相关主题
文本预览
相关文档 最新文档