设计模式


 

 

设计模式之装饰设计模式  //实现包装
	 */
	public static void main(String[] args) {
		Student s = new Student();// 学生类开始有的功能
		s.code();
		
		ItcastStudent is = new ItcastStudent(new Student());
		is.code(); //学生包装后的功能
	}

}
interface Coder {
	public void code();
}

class Student implements Coder {
	@Override
	public void code() {
		System.out.println("javase");
		System.out.println("javaweb");
	}
	
}
class ItcastStudent implements Coder {
	private Student s;
	public ItcastStudent(Student s) {
		this.s = s;
	}
	@Override
	public void code() {
		s.code();
		System.out.println("ssh");
		System.out.println("安卓");
		System.out.println("ios");
		System.out.println("数据库");
		System.out.println("............");
	}
	
}





单例设计模式:
//控制只创建唯一的对象
public class SingleDemo {
	public static void main(String[] args) {
        Single s1 = Single.getInstance();
        Single s2 = Single.getInstance();//s1和s2两个引用指向的是同一个对象
	}

}
class Single{(饿汉式)
//如果不设成静态的,下面静态方法不能调用
//如果不设成私有的,方法外就可以直接写成
//Single s =Single.s;这样不好控制
  private static Single s = new Single();

	private Single(){};//私有构造方法是因为不让外面创建此类对象
     //设置成静态,是因为外面主函数是静态的。
	 //可以传递参数,控制什么情况可以放回对象
public static Single getInstance(){
		return s;//返回引用变量
	}
}
//单例延迟模式,上面直接new了一个空间,这个调用才new(懒汉式)
class Single2{
	private static Single2  s = new Single2();
	private Single2(){};
	public static Single2 getInstance(){
		if(s==null){
		   s = new Single2();
		}
		return s;
	}
//单例第三种
class Singleton {
	//1,私有构造函数
	private Singleton(){}
	//2,创建本类对象公共的静态的最终的本类对象
	public static final Singleton s = new Singleton();
}

最好用饿汉式
/*饿汉式和懒汉式的区别
 * 1,饿汉式是以空间换时间
 *   懒汉式是以时间换空间
 * 2,饿汉式在多线程访问不会有安全隐患,不会创建多个对象
 * 	 懒汉式在多线程方法有安全隐患,有可能会创建多个对象
 */

适配器设计模式
interface 和尚 {
	public void 打坐();
	public void 撞钟();
	public void 念经();
	public void 练武();
}

/*
 * 当把一个类声明成抽象的,而这个类中没有抽象方法,作用只有一个,就是不让其他类来创建这个类对象
 * 适配器类中所有的方法都是空的,创建对象调用他也是没有意义的
 */
abstract class 天罡星 implements 和尚{				//适配器类

	@Override
	public void 打坐() {
	}
	@Override
	public void 撞钟() {
	}
	@Override
	public void 念经() {
	}
	@Override
	public void 练武() {
	}
}

class 鲁智深 extends 天罡星 {
	public void 练武(){
		System.out.println("倒拔垂杨柳");
		System.out.println("拳打镇关西");
		System.out.println("大闹野猪林");
		System.out.println("......");
	}
}


 


 

MATLAB主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性内容概要:本文主要介绍了一种在MATLAB环境下实现的主动噪声和振动控制算法,该算法针对较大的次级路径变化具有较强的鲁棒性。文中详细阐述了算法的设计原理与实现方法,重点解决了传统控制系统中因次级路径动态变化导致性能下降的问题。通过引入自适应机制和鲁棒控制策略,提升了系统在复杂环境下的稳定性和控制精度,适用于需要高精度噪声与振动抑制的实际工程场景。此外,文档还列举了多个MATLAB仿真实例及相关科研技术服务内容,涵盖信号处理、智能优化、机器学习等多个交叉领域。; 适合人群:具备一定MATLAB编程基础和控制系统理论知识的科研人员及工程技术人员,尤其适合从事噪声与振动控制、信号处理、自动化等相关领域的研究生和工程师。; 使用场景及目标:①应用于汽车、航空航天、精密仪器等对噪声和振动敏感的工业领域;②用于提升现有主动控制系统对参数变化的适应能力;③为相关科研项目提供算法验证与仿真平台支持; 阅读建议:建议读者结合提供的MATLAB代码进行仿真实验,深入理解算法在不同次级路径条件下的响应特性,并可通过调整控制参数进一步探究其鲁棒性边界。同时可参考文档中列出的相关技术案例拓展应用场景。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值