package com.bjsxt.socket; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; import java.util.Scanner; /** * 发送信息线程 */ class ClientSend extends Thread{ private Socket socket; ClientSend(Socket socket){ this.socket = socket; } @Override public void run() { this.sendMsg(); } /** * 发送消息 */ private void sendMsg(){ Scanner scanner = null; PrintWriter pw = null; try { scanner = new Scanner(System.in); pw = new PrintWriter(this.socket.getOutputStream()); String str = scanner.nextLine(); while (true){ if ("exit".equals(str)){ break; } pw.println(str); pw.flush(); } }catch (Exception e){ e.printStackTrace(); }finally { if (pw!=null){ pw.close(); } if (scanner!=null){ scanner.close(); } } } } /** * 接受消息线程 */ class ClientReceive extends Thread{ private Socket socket; ClientReceive(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 clientStr = br.readLine(); if ("exit".equals(clientStr)){ break; } System.out.println("客户端说:"+clientStr); } }catch (Exception e){ e.printStackTrace(); }finally { if (br!=null){ try { br.close(); } catch (IOException e) { e.printStackTrace(); } } } } } public class ChatSocketClient { public static void main(String[] args) { try { Socket socket = new Socket("127.0.0.1",8888); System.out.println("连接成功!"); new ClientReceive(socket).start(); new ClientSend(socket).start(); } catch (IOException e) { e.printStackTrace(); } } }
老师,为啥我这里死循环了,大家都用的where(true)了呀,而且我前面的双向通信和单向都用的了where(true)
和老师写的差不多,到点对点练习就死循环了
function fac1(){ var n =999; add =function(){console.log(n+=1);}//没有用var 这里是全局变量;这也是闭包 return function fac2(){console.log(n);};//这也是闭包 } var result = fac1(); result();//999 add(); result();//1000 function fac1(){ var n =999; add =function(){console.log(n+=1);}//没有用var 这里是全局变量;这也是闭包 return console.log(n); } fac1();//999 add();//1000 fac1();//999
这个垃圾回收机制,是不是这样理解,如果没有返回一个函数的话,内存的值就是调用之后的值,已经给到了999,不会改变了,然后放上闭包,会改变;也就是说他访问add函数内部的变量这样吗?
怎么我的线程数是奇数,不是连续的数字吗,,,,,,
Error:(16326, 5) java: 需要class, interface或enum
cgidao{ late(lateminute,salary){ fakuan = ; (lateminute<){ System..println(); }(lateminute<){ fakuan =; }(lateminute<){ fakuan =; }(lateminute<){ fakuan =() (salary/(*));}{ fakuan=() (salary*/()); } System..println(+fakuan); fakuan; } main(String[] args) { (,); } }
老师哪里出错了
LanMeiPai.zip
老师,分页器显示不出来
删除列表元素,并非对象,怎么理解?请老师从内存角度讲一下,谢谢
例如列表a=[1,2,3,4,5],删掉的是1,2,3,4,5的值?
老师,这里无法注入是什么原因呢,Send类也加了@Component; manage的pom.xml文件也添加了依赖
@Component[object Object]
老师,老师,get不是获取值的意思吗,为啥这里get完之后,就可以直接通过self.rect.left=直接改变left的值了,是这里固定搭配吗
>>> a=[1,2,3,4] >>> a.delete(2,30) Traceback (most recent call last): File "<pyshell#39>", line 1, in <module> a.delete(2,30) AttributeError: 'list' object has no attribute 'delete' >>> a.delete(2,3) Traceback (most recent call last): File "<pyshell#40>", line 1, in <module> a.delete(2,3) AttributeError: 'list' object has no attribute 'delete'
老师,del()怎么使用呢,怎么删除元素呢。
老师为什么我的 0% 50% 100% 是灰色的?也没办法顺利运行。
老师,加这个注解的作用是什么视频说不加会取回一个0回来,地址会解析错误,这是什么意思
老师,使用 new 关键字新建 Student 类的对象 student,和获取 Class 对象,然后调用 newInstance() 方法新建对象 students 有啥区别?应该都算是调用 Student 类的无参构造器新建对象吧。
public class ReflectionPerformanceTest01 { public static void main(String[] args) throws Exception { // Reflection // obtain Class object Student student = new Student(); Class classObject01 = student.getClass(); Class classObject02 = Student.class; Class classObject03 = Class.forName("com.bjsxt.demo.Student"); // test students is equal student?是不是都是算是调用无参构造器创建对象? // 此外,使用这两种方式创建的对象调用方法,很明显一个使用了反射,一个没有使用反射,所以效率会有明显的差距。 Student students =(Student) classObject03.newInstance(); long reflectionStart = System.currentTimeMillis(); Method method = classObject03.getMethod("setName", String.class); final int cycle = 10000000; for ( int i = 0; i < cycle; ++i) { // method.invoke(student,"John"); // new 关键字新建对象 student method.invoke(students,"John"); // Class 对象调用 newInstance() 方法获取对象 } long reflectionEnd = System.currentTimeMillis(); System.out.println(reflectionEnd - reflectionStart); System.out.println("----------------"); // non reflection long start = System.currentTimeMillis(); for (int i = 0; i < cycle; ++i) { student.setName("Marry"); } long end = System.currentTimeMillis(); System.out.println(end - start); } }
为什么我这边没有提示反而报错,是缺少了什么配置了吗?
showUser.txt
最近这几节课的语音质量不是很可以,有些字听的不是很清楚。
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637