java 封闭实例_java – 不能访问类型为Server的封闭实例
我在Java遇到一个奇怪的问题,我从来没有见过。
错误是“服务器类型的没有封闭实例是可访问的。必须使用服务器类型的封闭实例(例如x.new A(),其中x是服务器的实例)限定分配。
我注释过的行是发生错误的地方。
package game;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;
import java.util.NoSuchElementException;
import java.util.StringTokenizer;
public class Server {
private static List clients;
class ReceiveDataListener implements SocketListener {
@Override
public void dataReceived(ThreadModtagClient client, String data) {
}
}
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
clients = new ArrayList();
ServerSocket welcomeSocket = new ServerSocket(16567);
while (true) {
Socket connectionSocket = welcomeSocket.accept();
ThreadModtagClient client = new ThreadModtagClient(connectionSocket);
ReceiveDataListener listener = new ReceiveDataListener(); //
client.addSocketListener(listener);
clients.add(client);
}
}
}
class ThreadModtagClient extends Thread implements SocketThread {
private BufferedReader inFromClient;
private DataOutputStream outToClient;
private Player player;
private List listeners;
public ThreadModtagClient(Socket connection) throws IOException {
inFromClient = new BufferedReader(new InputStreamReader(connection.getInputStream()));
outToClient = new DataOutputStream(connection.getOutputStream());
listeners = new ArrayList();
}
public void addSocketListener(SocketListener listener) {
listeners.add(listener);
}
public void removeSocketListener(SocketListener listener) {
listeners.remove(listener);
}
public Player getPlayer() {
return player;
}
public void setPlayer(Player player) {
this.player = player;
}
public void sendData(String data) throws IOException {
outToClient.writeChars(data);
}
public void run() {
while (true) {
try {
String data = inFromClient.readLine();
for(SocketListener listener : listeners) {
listener.dataReceived(this, data);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch(NoSuchElementException e1) {
e1.printStackTrace();
}
}
}
}
java 封闭实例_java – 不能访问类型为Server的封闭实例相关推荐
- java 封闭实例_java – 每个内部类都需要一个封闭的实例是真的吗?
术语内部类通常被认为是指"需要封闭实例的嵌套类".然而,JLS规定如下: 07000 [-] Inner classes include local (§14.3), anonym ...
- java tcp 编程实例_Java实现基于TCP的通讯程序实例解析
Java中的TCP通信程序 TCP可以实现两台计算机之间的数据交互通信的两端,要严格区分客户端与服务端 两端通信时的步骤: 1.服务端程序,需要事先启动,等待客户端连接 2.客户端主动连接服务器端,才 ...
- java运行时_java编译时与运行时概念与实例详解
Java编译时与运行时很重要的概念,但是一直没有明晰,这次专门博客写明白概念. 基础概念 编译时 编译时顾名思义就是正在编译的时候.那啥叫编译呢?就是编译器帮你把源代码翻译成机器能识别的代码.(当然只 ...
- java类和接口实例_Java定义泛型接口和类的方法实例分析
本文实例讲述了Java定义泛型接口和类的方法.分享给大家供大家参考,具体如下: 一 点睛 所谓泛型:就是允许在定义类.接口指定类型形参,这个类型形参在将在声明变量.创建对象时确定(即传入实际的类型参数 ...
- java构造方法重载_Java 重载、重写、构造函数的实例详解
Java 重载.重写.构造函数的实例详解 方法重写 1.重写只能出现在继承关系之中.当一个类继承它的父类方法时,都有机会重写该父类的方法.一个特例是父类的方法被标识为final.重写的主要优点是能够定 ...
- java 静态类实例_Java中多个类的静态实例?
我是新的请不要介意,如果你发现问题愚蠢.我正在搞乱单身代码.我改变了一点(我的问题与单身无关,是的我已经删除了单实例检查).我的问题是虽然java中的类实例只能是一个为什么输出中有两个静态类" ...
- java时间戳转换_Java编程实现时间和时间戳相互转换实例
时间戳(timestamp),一个能表示一份数据在某个特定时间之前已经存在的. 完整的. 可验证的数据,通常是一个字符序列,唯一地标识某一刻的时间.使用数字签名技术产生的数据, 签名的对象包括了原始文 ...
- java对象排序_java对象排序(Comparable)详细实例
对象实现Comparable接口 package collections.sort.comparable; public class Field implements Comparable{ priv ...
- java instance变量_java 类方法和实例方法 以及 类变量和实例变量
类体中的方法分为实例方法和类方法两种,用static修饰的是类方法 类方法: 对于类中的类方法,在该类被加载到内存时,就分配了相应的入口地址.从而类方法不仅可以被类创建的任何对象调用执行,也可以直接通 ...
最新文章
- Ruby测试框架Rspec初探
- Aduna ClusterMap 的说明
- 009_BeanUtils的使用
- PyQt:如何给界面自定义背景?
- aix用户登录次数受限问题(3004-300 输入了无效的登录名或password)
- Metal之Shading Language Specification(着色语言规范)
- cfree运行程序错误_C/C++程序调试和内存检测
- 程序员提高编程技术最有效的一件事?了解一下,迅速提升自己!
- 常用概率论矩阵论公式
- 安装SVN后,更新项目没有对号等图标
- 使用Apache Tika实现内容分析
- 双向联想记忆网络的原理与python简单实现
- 有无孔孟之道,太阳照常升起
- 《Microduino实战》——1.2 为什么要开源
- ubuntu云输入法ibus cloud pinyin
- 学习OpenCV 函数方法结构总结
- 计算机网络 第3章 作业1
- APISpace 未来7天生活指数API接口 免费好用
- 分享一个好用智能的,免费的机器人接口,很智能。
- JAVA开发中高级知识储备
热门文章
- 工程伦理--6.4 风险沟通
- P2504 [HAOI2006]聪明的猴子 题解
- Android SDK 完整版
- map映射-----基础实验8-1.2 直捣黄龙 (30分)
- 尤瓦尔·赫拉利 | 认识你自己,不要被算法操控
- chrome浏览器导出文件提示病毒扫描失败
- Fourth6: Comprehensive project network upgrade | Cloud computing
- [生存志] 第129节 西汉兴相术
- 微型计算机的主要性能指标(),微型计算机的主要性能指标
- discord Bot 实现机器人发送私信验证码