设计模式学习笔记

Java设计模式之装饰者模式

内容主要来自大话设计模式一书,根据看书、查阅其他文章和自己理解来记录装饰着模式这一设计模式

代码示例

未使用装饰着模式的代码

//服饰抽象类
public abstract class Finery {
	public abstract void show();
}
/**
各种服饰子类
*/
//大T恤
class TShirts extends Finery {

	@Override
	public void show() {
		System.out.println("大T恤");
	}
}
// 垮裤
class BigTrouser extends Finery {

	@Override
	public void show() {
		System.out.println("垮裤");
	}
}
// ......
class Sneakers extends Finery {

	@Override
	public void show() {
		System.out.println("破球鞋");
	}
}
class Suit extends Finery {

	@Override
	public void show() {
		System.out.println("西装");
	}
}
class Tie extends Finery {

	@Override
	public void show() {
		System.out.println("领带");
	}
}
class LeatherShoes extends Finery {

	@Override
	public void show() {
		System.out.println("皮鞋");
	}
}
/**
客户端代码
*/
public static void main(String[] args) {
		Person p = new Person("小明");
		System.out.println("\n第一种装扮;");
		Finery dtx = new TShirts();
		Finery kk = new BigTrouser();
		Finery pqx = new Sneakers();
		
		dtx.show();
		kk.show();
		pqx.show();
		p.show();
		
		System.out.println("\n第二种装扮");
		Finery xz =new Suit();
		Finery ld = new Tie();
		Finery px = new LeatherShoes();
		xz.show();
		ld.show();
		px.show();
		p.show();
	}

使用装饰模式的代码

//Person类
public class Person {

	private String name;

	public Person() {
	}

	public Person(String name) {
		this.name = name;
	}

	public void show() {
		System.out.println("装扮的" + name);
	}
}
//服饰类
public class Finery extends Person {
	protected Person component;

	// 打扮
	public void decorate(Person component) {
		this.component = component;
	}

	@Override
	public void show() {
		if (component != null) {
			component.show();
		}
	}
}

具体服饰类同上

执行结果:
结果

进入互联网新媒体时代,“股吧”作为一类专门针对上市公司的社交媒介,已经成为中小投资者分享投资经验和发表对公司运营意见的重要平台,股吧舆论作为投资者情绪的反映,直接影响股票的市场表现。 一、上市公司股吧舆论数据的介绍 “股吧”作为新兴社交媒体代表,本身并不提供信息,仅提供多方交互平台,其将个体间的实时交流和回应形成公众关注和舆论;因此,股吧舆论数据可以帮助研究人员深入分析网络舆论与企业表现之间的关系,并为投资者提供情绪波动的参考依据。 本分享数据年份为2008年到2023年,数据来源于东方财富网股吧,涉及A股上市公司的讨论情况,涵盖了股吧发帖数量、阅读量、评论次数等多个维度。 二、数据指标 指标名称 描述 计算方法 Post 股吧发帖数量 上市公司当年度东方财富网股吧发帖数量之和加1并取自然对数 Positive 正面帖子数量 上市公司当年度东方财富网股吧正面帖子数量之和加1并取自然对数 Negative 负面帖子数量 上市公司当年度东方财富网股吧负面帖子数量之和加1并取自然对数 Neutral 中性帖子数量 上市公司当年度东方财富网股吧中性帖子数量之和加1并取自然对数 Read 股吧阅读量 上市公司当年度东方财富网股吧被阅读次数之和加1并取自然对数 Comment 股吧评论量 上市公司当年度东方财富网股吧被跟帖评论次数之和加1并取自然对数 三、数据说明 本数据集的统计范围为A股上市公司,数据分为三个版本: 未剔除金融STPT未缩尾版本 已剔除金融STPT未缩尾版本 已剔除金融STPT已缩尾版本 数据提供格式:Excel、dta格式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值