黑马程序员技术交流社区

标题: 关于内部类的问题 [打印本页]

作者: 星之钥匙    时间: 2015-4-25 20:10
标题: 关于内部类的问题
我们在使用内部类的时候,如果内部类要调用一个方法,那么这个方法应该写在内部类里面,还是外面,有什么区别吗?求大神指教

作者: shield    时间: 2015-4-25 20:41
方法属于类, 是哪个类的方法就写在哪个类里面,跟内部外部没关系
作者: chniccs    时间: 2015-4-25 21:45
写内部吧,实例化对象后,可以直接通过对象名来调用内部类的方法,如果写在外部,要写成静态的方法,然后通过外部类名来调用。
作者: 星之钥匙    时间: 2015-4-25 22:34
chniccs 发表于 2015-4-25 21:45
写内部吧,实例化对象后,可以直接通过对象名来调用内部类的方法,如果写在外部,要写成静态的方法,然后通 ...

好的,谢谢啦
作者: lai19    时间: 2015-4-25 22:37
内部类现在都弄不明白
作者: 星之钥匙    时间: 2015-4-25 22:39
lai19 发表于 2015-4-25 22:37
内部类现在都弄不明白

给你一个小例子吧:
        public static void main(String[] args) throws IOException {

                ServerSocket server = new ServerSocket(12345);
                System.out.println("服务器启动,绑定12345端口");
                while(true) {
                        //创建Socket
                        final Socket socket = server.accept();
                        //创建线程
                        new Thread() {
                                public void run() {
                                        try {
                                                BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
                                                PrintStream ps = new PrintStream(socket.getOutputStream());
                                                //读取客户端发来的信息
                                                String line = br.readLine();
                                                //将字符进行翻转
                                                line = new StringBuilder(line).reverse().toString();                //将客户端写过来的字符串反转
                                                //写数字会客户端
                                                ps.println(line);
                                                socket.close();
                                        } catch (IOException e) {
                                               
                                                e.printStackTrace();
                                        }
                                }
                        }.start();
                }
        }





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2