日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

编译报错+解决方法:错误: 找不到符号

發布時間:2023/12/3 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 编译报错+解决方法:错误: 找不到符号 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
【0】README 1)本文主要解決“錯誤,找不到符號”
【1】 console error info 1)error :? E:\bench-cluster\mybatis_in_action_eclipse\xmpp\src>javac com/communication/qq/ServerPlainTest.java com\communication\qq\ServerPlainTest.java:14: 錯誤: 找不到符號new Thread(new ReceiveHandler(s, Role.SERVER)).start();^符號: 類 ReceiveHandler位置: 類 ServerPlainTest com\communication\qq\ServerPlainTest.java:15: 錯誤: 找不到符號new Thread(new SendHandler(s, Role.SERVER)).start();^符號: 類 SendHandler位置: 類 ServerPlainTest 2 個錯誤 2)reasons of errors: ?參考一下代碼,ServerPlainTest 依賴于 ReceiverHandler.java ?and SendHandler.java ;而 ReceiverHandler.java and SendHandler.java 定義在 MessageHandler.java ,它們屬于包內可見性,包外不可見; 由編譯報錯的結果來看,當javac 編譯器去編譯ServerPlainTest.java的時候,它 不會去編譯 包可見性的類,所以就不會產生 相應的 .class 文件,所以報錯;
public class ServerPlainTest { // 包內包外可見public static void main(String[] args) {try {ServerSocket ss = new ServerSocket(8189);System.out.println("the server has startuped, waiting for connections.");while (true) { // accept multiple clients connection request.Socket s = ss.accept();System.out.println("a client has connected successfully.");new Thread(new ReceiveHandler(s, Role.SERVER)).start();new Thread(new SendHandler(s, Role.SERVER)).start();}} catch (Exception e) {System.out.println(e);}} }public class MessageHandler { // 包內包外可見. }// receive msg. class ReceiveHandler implements Runnable { // 包內可見性.private Socket socket;private Role role;public ReceiveHandler(Socket socket, Role role) {this.socket = socket;this.role = role; }public void run() {try {System.out.println(role + " executes ReceiveHandler.run method.");InputStream is = socket.getInputStream();Scanner in = new Scanner(is);// echo client inputboolean done = false;while (!done && in.hasNextLine()) {String line = in.nextLine();System.out.println("from "+ role + ": " + line);if (line.trim().equalsIgnoreCase("bye")) {done = true;}}// close relative instance.in.close();} catch (IOException e) {e.printStackTrace();} } }// send msg. class SendHandler implements Runnable { // 包內可見性.private Socket socket;private Role role;public SendHandler(Socket socket, Role role) {this.socket = socket;this.role = role; }public void run() {PrintWriter pw = null;try {System.out.println(role + " executes SendHandler.run method.");Scanner s = new Scanner(System.in);OutputStream os = socket.getOutputStream();pw = new PrintWriter(os, true); // autoFlush=true.if (role.equals(Role.SERVER)) {pw.println("from server: you've connected with the server.");}while (s.hasNext()) {String line = s.nextLine();pw.println(line);}pw.println("connection closed successfully. bye!");} catch (Exception e) {e.printStackTrace();} } }【2】solution:在編譯 ServerPlainTest.java 之前,編譯 MessageHandler.java, 這樣會附帶編譯 ReceiverHandler.java and SendHandler.java ;
E:\bench-cluster\mybatis_in_action_eclipse\xmpp\src>javac com/communication/qq/ServerPlainTest.java com/communication/qq/MessageHandler.java

總結

以上是生活随笔為你收集整理的编译报错+解决方法:错误: 找不到符号的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。