}
public void setClock(int hour) {
tfClock.setText(hour<10 ? “现在时间是:” + “0”+hour : “现在时间是:” +hour);
state.doClock(this, hour);
}
public void changeState(State state) {
System.out.println(“从状态”+this.state+“转变到了”+state);
this.state=state;
}
public void callSecurity(String str) {
taAlarm.append(“Call…”+str+“\n”);
}
public void recordLog(String msg) {
taAlarm.append(“record…”+msg+“\n”);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==btnUse){
state.doUse(this);
}else if(e.getSource()==btnAlarm){
state.doAlarm(this);
}else if(e.getSource()==btnPhone){
state.doPhone(this);
}else if(e.getSource()==btnExit){
System.exit(0);
}else{
System.out.print(“未预料错误!”);
}
}
}
State接口:
package zyr.dp.state;
public interface State {
public abstract void doClock(Context context,int hour);
public abstract void doUse(Context context);
public abstract void doAlarm(Context context);
public abstract void doPhone(Context context);
}
NightState实现类:
package zyr.dp.state;
public class NightState implements State {
private NightState(){
}
private static NightState nightState=new NightState();
public static NightState getInstance() {
return nightState;
}
public void doClock(Context context, int hour) {
if(hour>=6 && hour <18){
//白天
context.changeState(DayState.getInstance());
}
}
public void doUse(Context context) {
context.callSecurity(“晚上使用”);
}
public void doAlarm(Context context) {
context.callSecurity(“晚上警铃”);
}
public void doPhone(Context context) {
context.recordLog(“晚上打电话”);
}
}
DayState实现类:
package zyr.dp.state;
public class DayState implements State {
private DayState(){
}
private static DayState dayState=new DayState();
public static DayState getInstance() {
return dayState;
}
public void doClock(Context context, int hour) {
if(hour<6 || hour >=18){
//晚上
context.changeState(NightState.getInstance());
}
}
public void doUse(Context context) {
context.callSecurity(“白天使用”);
}
public void doAlarm(Context context) {
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
分享
这次面试我也做了一些总结,确实还有很多要学的东西。相关面试题也做了整理,可以分享给大家,了解一下面试真题,想进大厂的或者想跳槽的小伙伴不妨好好利用时间来学习。学习的脚步一定不能停止!
Spring Cloud实战
Spring Boot实战
面试题整理(性能优化+微服务+并发编程+开源框架+分布式)
西。相关面试题也做了整理,可以分享给大家,了解一下面试真题,想进大厂的或者想跳槽的小伙伴不妨好好利用时间来学习。学习的脚步一定不能停止!
[外链图片转存中…(img-nJDMR5v3-1710426424942)]
Spring Cloud实战
[外链图片转存中…(img-0NumcaGm-1710426424942)]
Spring Boot实战
[外链图片转存中…(img-5ZG22gRv-1710426424942)]
面试题整理(性能优化+微服务+并发编程+开源框架+分布式)