求高手点拨:“我的程序中的错误原因”,一个关于集合的使用的技术问题...

向着天空生长的小苗儿 2013-06-09 06:01:47
诸位高手,大家好:
我是一名学习软件工程的学生,近日,我碰到了下面的一个问题:
这是我定义的“JButton控件”的“子类”:MyJButton的源代码:
private static final long serialVersionUID = 1L;
int i = 0;
public MyJButton0(String button, final String url,final String doctor_name,final int Systemcontrolname,int online,int complicatingnum) {
super(button);
this.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
try {
// 定义网址为webSite的内容

URI uri = new URI(url);
Desktop desktop = Desktop.getDesktop();
desktop.browse(uri); String str9 = doctor_name;
new ChatClient(str9,Systemcontrolname);
i++;
} catch (URISyntaxException e1) {
} catch (IOException ex) {
// TODO Auto-generated catch block
ex.printStackTrace();
}
}
});
}
}
------------------------------------------------------------------------------------------------
这是我的”C_port_ChatClient_DS类“的代码:
public class C_port_ChatObject_DS {
public static final String JB0 = null;
public String UIDLocal = null;
String roleLocal = null;
int ChatObjectUIDLocal = -1;
Socket so1 = null;
Socket so2 = null;
Socket so3 = null;
String IPAddress = null;
static int orderformnumDoctor = 0;
int Localonline = 0;
int Clientnum = 0;


public C_port_ChatObject_DS(String UID,String role,int ChatObjectUID,Socket s1,Socket s2,Socket s3,String IPaddress,int orderformnum){
if(UIDLocal!=null)
UIDLocal = UID;
if(role!=null)
roleLocal = role;
if(ChatObjectUID!=-1)
ChatObjectUIDLocal = ChatObjectUID;
if(so1!=null)
so1 = s1;
if(so2!=null)
so2 = s1;
if(so3!=null)
so3 = s3;
if(IPAddress != null)
IPAddress = IPaddress;
if(orderformnum!=0)
orderformnumDoctor = orderformnum;
}

public C_port_ChatObject_DS(String UID,String role,int ChatObjectUID,String IPaddress,Socket s1){
if(UIDLocal!=null)
UIDLocal = UID;
if(role!=null)
roleLocal = role;
if(ChatObjectUID!=-1)
ChatObjectUIDLocal = ChatObjectUID;
if(IPaddress!=null)
IPAddress = IPaddress;
if(so1!=null)
so1 = s1;
}
public C_port_ChatObject_DS(Socket s2,Socket s3){
if(so2!=null)
so2 = s2;
if(so3!=null)
so3 = s3;
}
public C_port_ChatObject_DS(){
UIDLocal = null;
roleLocal = null;
ChatObjectUIDLocal = -1;
so1 = null;
so2 = null;
so3 = null;
IPAddress = null;
orderformnumDoctor = 0;
Localonline = 0;
Clientnum = 0;
}

}
------------------------------------------------------------------------------------------------
这是我的“C_port_set_DS类的”代码:
(我做了截图...)

------------------------------------------------------------------------------------------------
求高手点拨:
我的“C_port_set_DS类”文件中,其错误:
第207行到221行代码的错误原因,是什么?
如何修改....
谢谢诸位高手!!
此致
敬礼
一位向着理想,日日夜夜不知疲倦地奔跑的学生
2013年6月9日星期日早晨6点正
...全文
210 10 打赏 收藏 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
齐岳 2013-06-09
  • 打赏
  • 举报
回复
你需要把下面的add操作放到构造方法内
  • 打赏
  • 举报
回复
去掉static修饰符。
齐岳 2013-06-09
  • 打赏
  • 举报
回复
很显然上面蓝色list和下面的list不是同一个
forgetsam 2013-06-09
  • 打赏
  • 举报
回复
这不叫集合使用,谢谢,你上面定义的是静态变量(蓝色),然后在类中直接写调用代码?它起码要放到构造函数或者静态块里。 你先把Java最基本语法搞清楚了再说。
花木兰1闪21A 2013-06-09
  • 打赏
  • 举报
回复
有什么错它不提示的嘛?看看提示什么错
最好的留给你 2013-06-09
  • 打赏
  • 举报
回复
个人感觉,你那个点应该是中文的
地下室森林 2013-06-09
  • 打赏
  • 举报
回复
2楼正解,静态设定要放在构造函数或者静态块里。
  • 打赏
  • 举报
回复
static不能在方法中申明??
n27741 2013-06-09
  • 打赏
  • 举报
回复
java不是C++ ,不是随便哪里都可以定义static, java中,static 只能作为field存在。 如下代码


import java.util.*;
public class C_port_ChatObject_DS 
{
	//在类声明
	static ArrayList<C_port_ChatObject_DS> list = new ArrayList<C_port_ChatObject_DS>();

	public static void main(String[] args) 
	{
		
		list.add(new C_port_ChatObject_DS());	
		list.add(new C_port_ChatObject_DS());
		list.add(new C_port_ChatObject_DS());
		list.add(new C_port_ChatObject_DS());
		list.add(new C_port_ChatObject_DS());
		list.add(new C_port_ChatObject_DS());

		System.out.println("Hello World!");
	}
}

逍遥jc 2013-06-09
  • 打赏
  • 举报
回复
类中不能直接赋值(除非初始化的时候赋值)。赋值必须在方法中才行。

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧