老师,我想问一下为什么要解析XML文件?解析XML文件有什么用啊?这节课全程都没有讲为什么...只是教我们怎么解析,看得我云里雾里的,搞不明白
为啥这个视频一进来所有的代码就是编写好了的?
特别是那个closeUtil.java这个代码不懂,其他的代码可以自己写出来
问题已解决,如图所示,不用老师回答了,是自己的问题
老师你看我写的有问题吗,为什么打印了十一个而且有重复
老师这里传递50会造成空指针异常是不是这个意思
cache[i+128]=MyInteger.valueOf(i);这一句调用valueOf方法后返回的都是cache数组n+HIGH索引处的值,但是 该索引处的值是空的,并没有被初始化或者赋值,所以导致整个cache数组都没有值,那么我在调用 MyInteger,valueOf(50)的时候就会报异常
public class MyInteger { public static final int HIGH=127; public static final int LOW=-128; private static MyInteger[] cache=null; private int value; static{ for(int i=LOW;i<=HIGH;i++){ cache[i+128]=MyInteger.valueOf(i); } } public static MyInteger valueOf(int n){ return n>=LOW&&n<=HIGH?cache[n+HIGH]:new MyInteger(n); } private MyInteger(int i){ this.value=i; } public static void main(String[] args) { MyInteger myInteger = MyInteger.valueOf(50); System.out.println(myInteger); }
老师我也闪退,又jdk1.8的资源吗 ?
老师,程序运行没有出现异常,用debug步入也没有异常,该走的代码没有少走,但是控制台在输入用户名和密码后直接结束,不提示登录成功或密码错误。
服务器端代码:
bjsxt.zip
客户端代码:
entity.zip
运行图:
debug过程图:
为什么会找不到这个文件呢,明明在的啊,前几节课测试代码都可以的 *; { ([] args) { = File(); = File(); (,); } (srcFile, targetFile) { bis = ; bos = ; { bis = BufferedInputStream(FileInputStream()); bos = BufferedOutputStream(FileOutputStream()); [] = []; len = ; ((len = bis.read()) != -){ bos.write(,,len); } } (e) { e.printStackTrace(); } { (bos != ){ { bos.close(); } (e) { e.printStackTrace(); } } (bis != ){ { bis.close(); } (e) { e.printStackTrace(); } } } } } 结果 "C:\Program Files\Java\jdk1.8.0_251\bin\java.exe" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2020.1.2\lib\idea_rt.jar=56557:C:\Program Files\JetBrains\IntelliJ IDEA 2020.1.2\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_251\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_251\jre\lib\rt.jar;C:\Users\JSKJ\IdeaProjects\yiChang\out\production\Litao02" testIo.copy.TestCopy java.io.FileNotFoundException: srcFile (系统找不到指定的文件。) at java.io.FileInputStream.open0(Native Method) at java.io.FileInputStream.open(FileInputStream.java:195) at java.io.FileInputStream.<init>(FileInputStream.java:138) at java.io.FileInputStream.<init>(FileInputStream.java:93) at testIo.copy.TestCopy.copyFile(TestCopy.java:18) at testIo.copy.TestCopy.main(TestCopy.java:10)
package com.Thread; //生产者和消费者模式 public class produceThreadTest { public static void main(String[] args) { //创建缓冲区 SyncStack ss = new SyncStack(); //启动生产者线程 produce producer = new produce(ss); new Thread(producer).start(); //启动消费者线程 new customer(ss).start(); } } //定义馒头类代表数据 class Mantou{ private int id; public int getId() { return id; } public void setId(int id) { this.id = id; } } //定义缓冲区 class SyncStack { //用数组表示放馒头的盒子 private Mantou[] mantous = new Mantou[10]; //定义索引用来操作盒子 private int index; //定义放馒头的方法 public synchronized void SetMantou(Mantou mantou) { //当馒头放满时,线程进行等待 while (this.index == this.mantous.length) { try { /** * wait()是Object类下的方法; * wait()语法:该方法需要在synchronized语句块中使用; * wait()执行后,线程会将持有的对象锁释放,并进入阻塞状态、使其他持有该对象锁的线程可以继续运行 */ this.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } this.notify(); this.mantous[this.index] = mantou; this.index++; } //定义取馒头的方法 public synchronized Mantou GetMantou() { while (this.index == 0) { try { this.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } //唤醒等待中的其中一个线程、需使用在synchronized语句块中 this.notify(); this.index--; return this.mantous[this.index]; } } //定义生产者线程类 class produce implements Runnable{ private SyncStack syncStack; public produce(SyncStack syncStack) { this.syncStack = syncStack; } public void run() { for(int i = 0;i < 10;i++){ Mantou mantou = new Mantou(); mantou.setId(i); this.syncStack.SetMantou(mantou); System.out.println("生成馒头 "+mantou.getId()); } } } //定义消费者线程类 class customer extends Thread{ private SyncStack syncStack; public customer(SyncStack syncStack) { this.syncStack = syncStack; } public void run() { for (int i = 0;i<10;i++){ Mantou mantou = this.syncStack.GetMantou(); System.out.println("取馒头 "+mantou.getId()); } } }
疑问:为什么我运行后,会先取馒头再生产馒头?
老师,这节没有听懂,能不能先跳过啊,太难了,一点思路都没有
老师,就是如下图while死循环中 server.accept()方法返回的Socket是建立一次后是一直保持连接状态吗?
假如一个客户端连接成功后发送多次消息的时候是直接通过之前获取的Socket对象的输入流来获取数据吗?不会再重新执行server.accept()重新获得Socket对象再获取输入流获取数据是吗?
老师,HashMap中结点可能是红黑树,红黑树要求元素可比较,但为什么HashMap可以存没定义比较规则的对象呢
如果我在定义验证菜单项的正则表达式的时候定义的是[1-7],那是不是就不需要再在这里进行校验了?
int inputNum = Integer.parseInt(input); if (inputNum >= min && inputNum <= max){ return inputNum; }else { System.out.println("您输入的菜单项不符,请重新输入!"); }
老师那句代码什么意思
老师,讲join()方法时,这儿是不是讲错了?
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637