老师,JDK8之后常量不存在方法区中,那存在哪里呀?单独的一个空间吗?
//老师,如果在Account类中重写equals方法,使得当accountNo相同的情况下判定为同一对象 那为什么线程同步没有进行互斥呢 import java.util.Objects; class Account { private String accountNo; private double balance; @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Account account = (Account) o; return Double.compare(account.balance, balance) == 0 && Objects.equals(accountNo, account.accountNo); } @Override public int hashCode() { return Objects.hash(accountNo, balance); } public Account(String accountNo, double balance) { this.accountNo = accountNo; this.balance = balance; } public Account() { } public String getAccountNo() { return accountNo; } public void setAccountNo(String accountNo) { this.accountNo = accountNo; } public double getBalance() { return balance; } public void setBalance(double balance) { this.balance = balance; } } class DrawThread extends Thread { //账户对象 private Account account; private double drawMoney; public DrawThread(String Name, Account account, double drawMoney) { super(Name); this.account = account; this.drawMoney = drawMoney; } @Override public void run() { synchronized (this.account){ //判断当前账户余额是否大于或等于取款金额 if (this.account.getBalance() >= this.drawMoney) { System.out.println(this.getName() + "取款成功!" + this.drawMoney); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } //更新账户余额 this.account.setBalance(this.account.getBalance() - this.drawMoney); System.out.println("当前余额为:" + this.account.getBalance()); } else { System.out.println(this.getName() + "取款失败,余额不足"); } } } } public class DrawMoneyDemo { public static void main(String[] args) { Account account = new Account("1001", 1000); Account account1 = new Account("1001", 1000); System.out.println(account1.equals(account)); new DrawThread("老公", account, 800).start(); new DrawThread("老妞", account1, 800).start(); } }
java.lang.ClassCastException: class org.apache.activemq.command.ActiveMQMessage cannot be cast to class javax.jms.TextMessage (org.apache.activemq.command.ActiveMQMessage and javax.jms.TextMessage are in unnamed module of loader 'app') at com.bjsxt.HelloWorldConsumer.readHelloWorldActiveMQ(HelloWorldConsumer.java:36) at com.bjsxt.Test.main(Test.java:6)
附上36行代码
String xx =((TextMessage)message).getText();
应该是类型转换除了问题,把这句话去除,无报错。但是视频老师代码为啥没有报错,请老师解答。
想问一个问题,我在写发送消息线程时,synchronized中的"abc".wait()会飘红,必须在catch中处理InterruptedException异常才行,但是视频中和其他提问的同学都没出现这个异常,想知道是怎么回事?
老师,能具体讲下应用上下文或是请求下上文,在实际项目中的实际应用场景吗??最好可以实际举例
老师可以给一下画UML图的软件吗
老师为啥我这个京东logo一开始初始就是在左边的,不是在中间,而float left后就到页面最左边了???
老师,我有这样一个疑问,就是在新生代区,现在划分了三部分:Eden区、S0(from)区、S1(to)区,以便提高检索和垃圾回收的效率,同时这三个区域的搭配也会避免空间碎片的问题。
但是,我现在提出一个疑问:为啥要是两个幸存者空间?一个不行吗?
我推了一下,觉得是可以的(但实质是自己的一厢情愿):
1、刚开始的时候eden区域s0区是空的,当eden区满了后,minorGC后,将存活的放在from区。
2、再次,eden区满了,就将存活的对象存放在from区(我以为是连续的)。
3、from区满了,复制到old区。
但是,我在查看博客时,发现人家说的是这里的from里面的多次存放很可能会是不连续的,会造成空间碎片,需要两个进行整理。
那为啥是不连续的,它的数据结构是啥样的?二维数组、还是说存放的算法是随机的
现在默认都是把本机当做服务器写视图函数吗,我看每次控制台都提示运行在127.0.0.1,还是说学习阶段用本机当做服务器测试用的
mybatisdemo - 副本.zip
问题截图.png
老师,为什么数据库里面的内容没更新(对数据库其他的操作是成功的)。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-2.1.4.min.js"> </script> </head> <body> <h1>jQuery中的get和post请求</h1> <form > <input type="button" value="提交" onclick="test1()"/> </form> <script type="text/javascript"> function test1(){ $.get('/login','',function(resp){ console.log(resp) }) } </script> </body> </html>
老师我在pycharm上面写的测试jQuery的get和post请求,但总是出错,一直提示$没有被定义
Lombok主要是用来管理日志,这种说法正确吗?
老师 为什么在线zk下载不了?
版本管理的时候,比如版本1中有大量的程序被以后的版本依赖,我将版本1删除,只是删除掉不被后面版本依赖的部分吗?也可以说就是删除版本1自己独有的部分吗?
import java.awt.*; import javax.swing.*; public class BallGame extends JFrame { Image ball =Toolkit.getDefaultToolkit().getImage("images/ball(2).jpg"); Image desk =Toolkit.getDefaultToolkit().getImage("images/desk(1).jpg"); double x =200; double y =200; double degree = 3.14/3; //绘制窗口 public void paint(Graphics g){ System.out.println("窗口被画了一次"); g.drawImage(desk,0,0,null); g.drawImage(ball,(int) x,(int) y,null); x = x+10*Math.cos(degree); y = y+10*Math.sin(degree); //碰到上边界 if (x>501-40-30||y<40+40){ degree = -degree; } //碰到左右边界 if (x>856-40-30||x<40){ degree = 3.14 - degree; } } //创建窗口 void launchFrame(){ setSize( 856,501); setLocation(100,100); setVisible(true); x = x+10; //实现动画,每秒绘制25次 while (true){ repaint(); try { Thread.sleep(40); } catch (InterruptedException e) { e.printStackTrace(); } } } public static void main(String[] args) { System.out.println("我的小游戏开始了!"); BallGame game = new BallGame(); game.launchFrame(); } }
代码是这样的,但是桌子的那个图片运行不出来
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637