public class Test1 { public static void main(String[] args) { //ExecutorService pool = Executors.newSingleThreadExecutor(); ExecutorService pool = Executors.newFixedThreadPool(10); //ExecutorService pool = Executors.newCachedThreadPool(); for (int i = 0; i < 20; i++) { final int n = i; Runnable command = new Runnable() { @Override public void run() { System.out.println("开始执行: " + n); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("结束执行: " + n); } }; pool.execute(command); } pool.shutdown(); } }
老师, 请问一下, 在本节课的示例Test1中, 为什么在代码"final int n = i;", 要使用final呢? 不加final, 直接复制 int n = i; 应该也可以达到同样的效果吧?
老师说需要开启端口号,关闭防火墙,输入这个命令,我这里和老师不同,找不到
老师:
测试每一条命令时,如何设置才能达到回车就可以完成指令,而不需要重复run的操作。
老师:我在登陆mysql的时候有这样的错误是什么问题,怎么解决?
老师我这个该怎么解决,把user换成图片中的就有用,写成代码中的就没用
turtle MyRectangal: (x=y=width=height=): .x = x .y = y .width = width .height = height (): area = .width * .height (.format(area)) (): (.format(* .width + * .height)) (): turtle.penup() turtle.goto(.x.y) turtle.pendown() i (): turtle.right() turtle.forward(.width) turtle.right() turtle.forward(.height) turtle.done() s1 = MyRectangal() s1.getArea() s1.getPrimeter() s1.draw() s2 = MyRectangal() s2.getArea() s2.getPrimeter() s2.draw()
s1和s2单独调用没有问题,两个写在一起时出现错误,这个是什么问题
create table student6( stu_id int, stu_name varchar(20) ); #为student6的stu_name 添加not null alter table student6 modify stu_name varchar(20) not null;
老师,已经给stu_name添加了非空约束,第1条stu_name不写报错,写入后可以保存,但是在表格上删除字符成空的后为什么也可以保存;新建第2条的时候也是一样,只要里面之前填过字符,不管现在是否有字符都可以保存。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style> div{ width: 500px; height: 200px; background-color: red; } </style> </head> <body> <div> </div> </body> </html>
实际大小为什么和设的不一样
您好,老师我想问一哈,搜索安装也需要导入jar包吗?
老师为啥我的深拷贝,子对象地址也是相同的
您好老师,这里能打印
print(f"账户:{self.account.name},余额是:{self.account.money}") print(f"账户:{self.account.name},总共取了:{self.expenseTotal}")
是因为,
draw1 = Drawing(80,a1) ;
draw2 = Drawing(80,a1)
导入了a1吗
老师我想让验证码的数字中间居中应该怎么实现啊
环境:jdk1.8
服务端
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; /** * 接受客户端消息的线程类 */ class ChatReceive extends Thread{ private Socket socket; public ChatReceive(Socket socket){ this.socket=socket; } @Override public void run() { this.receiveMsg(); } /** * 实现接收客户端发送的消息 */ private void receiveMsg(){ BufferedReader br = null; try { br=new BufferedReader(new InputStreamReader(this.socket.getInputStream())); while (true){ String msg=br.readLine(); synchronized ("abc"){ //把读取到的数据写入公共数据区 ChatRoom.buf="["+this.socket.getInetAddress()+"] "+msg; //唤醒发送消息的线程对象 "abc".notifyAll(); } } }catch (Exception e){ e.printStackTrace(); }finally { if (br != null) { try { br.close(); }catch (IOException e){ e.printStackTrace(); } } if (this.socket != null) { try { this.socket.close(); } catch (IOException e) { e.printStackTrace(); } } } } } /** * 向客户端发送消息的线程类 */ class ChatSend extends Thread{ private Socket socket; public ChatSend(Socket socket){ this.socket=socket; } @Override public void run() { this.sendMsg(); } /** * 将公共数据区的消息发送给客户端 */ private void sendMsg(){ PrintWriter pw = null; try { pw=new PrintWriter(this.socket.getOutputStream()); while (true){ synchronized ("abc"){ //让发送消息的线程处于等待状态 "abc".wait(); //将公共数据区中的消息发送给客户端 pw.println(ChatRoom.buf); pw.flush(); } } }catch (Exception e){ e.printStackTrace(); }finally { if (pw != null) { pw.close(); } if (this.socket != null) { try { this.socket.close(); } catch (IOException e) { e.printStackTrace(); } } } } } public class ChatRoom { //定义公共数据区 public static String buf; public static void main(String[] args) { System.out.println("Chat Server Version 1.0"); System.out.println("Listen at 8888....."); ServerSocket serverSocket =null; try { serverSocket =new ServerSocket(8888); while (true){ Socket socket=serverSocket.accept(); System.out.println(socket.getInetAddress()+"加入聊天室"); new ChatReceive(socket).start(); new ChatSend(socket).start(); } }catch (Exception e){ e.printStackTrace(); } finally { if (serverSocket != null) { try { serverSocket.close(); } catch (IOException e) { e.printStackTrace(); } } } } }
客户端
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; import java.util.Scanner; /** * 用于发送消息的线程类 */ class SendMsg extends Thread { private Socket socket; private Scanner scanner; public SendMsg(Socket socket,Scanner scanner) { this.socket = socket; this.scanner=scanner; } @Override public void run() { this.sendMsg(); } /** *发送消息 */ private void sendMsg() { PrintWriter pr = null; try { //创建向对方输出消息的流对象 pr = new PrintWriter(this.socket.getOutputStream()); while (true) { String str = scanner.nextLine(); pr.println(str); pr.flush(); } } catch (Exception e) { e.printStackTrace(); } finally { if (pr != null) { pr.close(); } if (scanner != null) { scanner.close(); } try { if (socket != null) { socket.close(); } } catch (IOException e) { e.printStackTrace(); } } } } /** * 用于接收消息的线程类 */ class ReceiveMsg extends Thread{ private Socket socket; public ReceiveMsg(Socket socket) { this.socket = socket; } /** * 用于接收对方消息的方法 */ private void ReceiveMsg (){ BufferedReader br = null; try { //创建用于接收对方发送消息的流对象 br = new BufferedReader(new InputStreamReader(socket.getInputStream())); while (true){ String str = br.readLine(); System.out.println("用户"+str); } } catch (IOException e) { e.printStackTrace(); } finally { if(br!=null){ try { br.close(); } catch (IOException e) { e.printStackTrace(); } }try { if(socket!=null){ socket.close(); } } catch (IOException e) { e.printStackTrace(); } } } @Override public void run() { this.ReceiveMsg(); } } public class ChatClients { public static void main(String[] args) { System.out.println("请建立服务器或客户端"); System.out.println("请输入:server,<port> 或者:<ip>,<port>"); Scanner scanner = null; Socket socket = null; ServerSocket serverSocket = null; try{ scanner = new Scanner(System.in); String scan = scanner.nextLine(); String[] arr = scan.split(","); if("server".equals(arr[0])){ serverSocket = new ServerSocket(Integer.parseInt(arr[1])); System.out.println("服务器监听中"); socket = serverSocket.accept(); System.out.println("接收成功"); }else{ socket = new Socket(arr[0],Integer.parseInt(arr[1])); System.out.println("连接成功"); } new SendMsg(socket,scanner).start(); new ReceiveMsg(socket).start(); }catch (Exception e){ e.printStackTrace(); } } }
客户端和服务器连接上以后,把客户端关闭就报这个错误,咋处理?
老师,我发现不管怎么传图片都是刚开始传的那一张,不知道什么原因
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637