函数调用 小问题

问题描述

有个程序代码是这样的:importjava.awt.*;importjava.awt.event.*;importjava.net.*;importjava.io.*;publicclassClientextendsWindowAdapterimplementsActionListener,KeyListener{Framef;TextFieldstr_send;Labellabel;TextAreamsg;Buttonsend,exit;Panelp1;Stringhostname;DatagramSocketreceiveSocket,sendSocket;DatagramPacketreceivePacket,sendPacket;publicvoiddisplay(){Framef=newFrame("山顶风");Imageico=Toolkit.getDefaultToolkit().getImage("红心.png");f.setIconImage(ico);f.setSize(400,350);f.setLocation(100,100);f.setBackground(Color.red);p1=newPanel();f.add(p1,"South");msg=newTextArea();msg.setSize(100,250);msg.setBackground(Color.WHITE);msg.setEditable(false);f.add(msg);label=newLabel("发送消息");p1.add(label);str_send=newTextField(20);p1.add(str_send);str_send.addKeyListener(this);send=newButton("发送");p1.add(send);send.addActionListener(this);exit=newButton("退出");p1.add(exit);exit.addActionListener(this);f.addWindowListener(this);f.setVisible(true);try{sendSocket=newDatagramSocket(3000);}catch(Exceptione){msg.append(e+"tn");}}publicvoidreceiveMessage(){try{receiveSocket=newDatagramSocket(3001);while(true){byte[]buf=newbyte[500];receivePacket=newDatagramPacket(buf,buf.length);//receivePacket=newDatagramPacket(buf,buf.length);receiveSocket.receive(receivePacket);ByteArrayInputStreambin=newByteArrayInputStream(receivePacket.getData());BufferedReaderreader=newBufferedReader(newInputStreamReader(bin));msg.append("服务器:"+reader.readLine());msg.append("tn");reader.close();bin.close();}}catch(Exceptione){msg.append(e+"n");}}publicvoidsendMessage(){try{ByteArrayOutputStreambout=newByteArrayOutputStream();PrintStreampout=newPrintStream(bout);pout.print(str_send.getText());bytebuf[]=bout.toByteArray();sendPacket=newDatagramPacket(buf,buf.length,InetAddress.getByName(hostname),3333);sendSocket.send(sendPacket);msg.append("客户端:"+str_send.getText()+"tn");str_send.setText("");}catch(Exceptionerr){msg.append(err+"tn");}}publicvoidactionPerformed(ActionEvente){if(e.getSource()==send){sendMessage();}elseif(e.getSource()==exit){System.out.println("程序已经关闭,再见!!");System.exit(0);}}publicvoidwindowClosing(WindowEvente){System.out.println("聊天程序已经关闭,再见!!!");System.exit(0);}publicvoidkeyPressed(KeyEvente){if(e.getSource()==str_send){if(e.getKeyChar()==KeyEvent.VK_ENTER){sendMessage();}}}/*publicClient(){//Clientclient=newClient();display();receiveMessage();}*/publicstaticvoidmain(Stringargs[]){Clientclient=newClient();client.display();client.receiveMessage();}publicvoidkeyTyped(KeyEvente){}publicvoidkeyReleased(KeyEvente){}}然后我想在另一个程序里面实现这个程序的所有函数,即所有方法,功能怎么解决啊??

解决方案

解决方案二:
完全不知在说些什么...
解决方案三:
-.-||楼主还想实现什么方法?你该实现的不是已经实现了嘛
解决方案四:
对于这个类中的每一个方法,LZ可以看好他们的参数都是什么,在其他的类中调用时可以通过可参数赋值的方式来弄。
解决方案五:
比如说我有另一个程序Client我想在Client里面实现上面那个函数的所有功能怎么调用啊我现在这样调用newClient().display()运行Client时并没有完全实现上面的那个函数的所有功能
解决方案六:
代码太长了,没有时间看,出什么错?报什么错误堆栈?
解决方案七:
代码好长啊

时间: 2024-10-23 07:55:10

函数调用 小问题的相关文章

Javascript引用类型

 这篇文章主要介绍了Javascript引用类型,有需要的朋友可以参考一下 简介 1.引用类型(Reference type) 引用类型是javascript中一种内部类型.它主要是当做一个指代,代替一个变量或者函数,当然在需要真实值时,又可以通过它寻找到真实值.   2.引用类型的结构 引用类型的值时由两部分构成,一是引用类型的值指代的对象的所属对象,这里我们姑且把它叫做base,二是base中的指代对象的对象名称.用伪代码来表示:   代码如下: var valueOfReferenceTy

SoC嵌入式软件架构设计

内存是SoC(System on Chip,片上系统)集成设计的重要模块,是SoC中成本比重较大的部分.内存管理的软硬件设计是SoC软件架构设计的重要一环,架构设计师必须要在成本和效率中取得平衡,做到在节省内存的同时保证整个系统的性能.系统内存需求评估是对嵌入式软件架构师的最基本要求,同时也是其最重要的技能之一.一般在SoC项目立项的时候,架构师就要完成系统内存需求评估.     下面以一个多媒体电子解决方案中的SoC设计为原型,说明大致的评估流程:     1. 根据产品规格,对各个应用场景进

Javascript浅谈之引用类型_基础知识

简介1.引用类型(Reference type)引用类型是javascript中一种内部类型.它主要是当做一个指代,代替一个变量或者函数,当然在需要真实值时,又可以通过它寻找到真实值. 2.引用类型的结构引用类型的值时由两部分构成,一是引用类型的值指代的对象的所属对象,这里我们姑且把它叫做base,二是base中的指代对象的对象名称.用伪代码来表示: 复制代码 代码如下: var valueOfReferenceType = {base: <base object>,propertyName:

visual studio 2010-关于VS的一个小测试程序问题,函数调用顺序

问题描述 关于VS的一个小测试程序问题,函数调用顺序 新手学C++,把C++ primer 上的两个例子用Visual Studio 2010弄到一起的时候出现了一个问题. 一共用了三个函数放在三个cpp文件,被调用的两个均用头文件进行了声明. 两个函数实现的功能很简单分别是:1.多个数相加求和(plus()) 2.输入两个数字作为上界和下界并求和.(two_num()) 问题出现在:在main函数下进行调用的时候, 先调用two_num();再调用plus()可以正常执行. #include

小白求问c++中函数调用的问题

问题描述 小白求问c++中函数调用的问题 在一个函数A中调用另外一个函数B,被调用的函数B想要使用A中已经定义变量的值,除了声明全局和作为B的形参还有其他方法吗? 解决方案 如果是C++ 11/14,可以使用Lambda表达式,Lambda支持闭包语法,也就是内侧的匿名函数可以共享调用者的变量http://blog.csdn.net/hnhbdss/article/details/8196465http://blog.sina.com.cn/s/blog_54688c91010124wn.htm

c++-一个关于递归的小程序,理解不了其输出结果。。。。。

问题描述 一个关于递归的小程序,理解不了其输出结果..... 一个c++递归的小程序,其输出结果理解不了,请问这个递归的基例是"cout<<endl;"这个吗? void f(char ch){ if (('A' <= ch) && (ch <= 'H')){ f(ch - 1); cout << ch; } else cout << endl; } int main(){ f('C'); } 输出结果为: (空一行) A

C#开发小技巧--对Text控件增量赋值的代码优化

技巧|控件|优化 笔者在开发一个小程序的时候,遇到一个需求,就是要把指定的文本内容打开,逐行判断.组装后再显示在Text控件中.起初,笔者使用 while(streamreader.Peek()>0) { ... textBox1.Text += strline; } streamreader.close(); 在运行的过程中无错误,可是在装载数据的时候效率低下,装载1000行的记录居然需要15秒左右,大大的影响了使用.在调试过程中,笔者发现,streamreader.Open函数调用并不怎么需

.Net应用程序性能提高小技巧

程序|技巧|性能 使用.Net做开发,性能毫无疑问非常重要,如何在最短的时间内,得到最大的性能,是我们每个人都非常关心的问题.这里,以MSDN的提示做指导,我来做一些整理工作.      所有的应用程序都应该遵守的      这里的列举的是所有的应用程序都可以用来提高性能的一些小建议:      尽早地抛出例外:Throw Exception      Exception是非常地消耗的,你可以数一下你的程序里面有多少个Exception,你看了之后就会大吃惊,注意,不要忘了,一些系统自己的方法也

javascript中replace()函数用法小谈

先看一下MSDN中的介绍 replace 方法 返回根据正则表达式进行文字替换后的字符串的复制. stringObj.replace(rgExp, replaceText) 参数 stringObj 必选项.要执行该替换的 String 对象或字符串文字.该字符串不会被 replace 方法修改. rgExp 必选项.为包含正则表达式模式或可用标志的正则表达式对象.也可以是 String 对象或文字.如果 rgExp 不是正则表达式对象,它将被转换 为字符串,并进行精确的查找:不要尝试将字符串转