当前位置: 首页 > news >正文

网站需求文档阿里云 oos wordpress

网站需求文档,阿里云 oos wordpress,卡片式网站,建设网站的企业专业服务随着剧情的发展,主线人物登场得越来越多,时不时跳出一个大佬,对我张牙舞爪地攻击。眼花缭乱的斗技让我不厌其烦,一个不小心,我就记不清楚在哪里遇上过什么人,他会什么斗技了。这时候,我就特别希…

请添加图片描述

  • 随着剧情的发展,主线人物登场得越来越多,时不时跳出一个大佬,对我张牙舞爪地攻击。
  • 眼花缭乱的斗技让我不厌其烦,一个不小心,我就记不清楚在哪里遇上过什么人,他会什么斗技了。
  • 这时候,我就特别希望有个办法,能把所有登场得人物都自动检测出来,到时候就可以直接调用了。
  • 比方说萧炎和云韵:
[Hero]
class 萧炎 {[Skill]public void 八极崩() { }[Skill]public void 焰分噬浪尺() { }[Skill]public void 佛怒火莲() { }
}
[Hero]
class 云韵
{[Skill]public void 风之极陨杀() { }[Skill]public void 风之极落日曜() { }[Skill]public void 风吹势() { }[Skill]public void 风灵分形剑() { }
}
  • 这里特意用标签标注了哪些是英雄,哪些是技能。
  • 接下来,只要识别这些标签,然后通过反射,就能在最需要的时候,让这些人物登场了。
    请添加图片描述
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;namespace FrameworkDemo
{// 只写Hero也可以,但是规范地写法会加上"Attribute"。// 程序在识别时,会自动忽略"Attribute"。public class HeroAttribute : Attribute { }public class SkillAttribute : Attribute { }[Hero]class 萧炎 {[Skill]public void 八极崩() { }[Skill]public void 焰分噬浪尺() { }[Skill]public void 佛怒火莲() { }}[Hero]class 云韵{[Skill]public void 风之极陨杀() { }[Skill]public void 风之极落日曜() { }[Skill]public void 风吹势() { }[Skill]public void 风灵分形剑() { }}class Program{static private List<Type> heroTypes;                            // 所有英雄类型列表static private object selectedHero;                             // 当前选中的英雄对象static private ArrayList heroNamesList = new ArrayList();       // 所有英雄名称列表static private ArrayList selectedHeroSkill = new ArrayList();  // 当前选中英雄的技能列表static private void init() {heroTypes = System.Reflection.Assembly.GetExecutingAssembly().GetTypes()    // 正在运行的程序集中的类型.Where(t => t.GetCustomAttributes(typeof(HeroAttribute), false).Any())  // 找到所有带有英雄属性的对象,false表示不搜索继承链.ToList();            heroNamesList.AddRange(heroTypes.Select(t => t.Name).ToArray());            // 初始化英雄名称列表,type类型自带Name属性}static private void showHeros() {int count = 1;Console.WriteLine("当前已有英雄:");foreach (string name in heroNamesList){Console.WriteLine($"{count}:{name}");count++;}Console.WriteLine("====================");Console.WriteLine("请填写选取英雄的序号:");}static private Type selectHero() {int index = Convert.ToInt32(Console.ReadLine());if (index > heroTypes.Count || index <= 0) {Console.WriteLine("当前选择无效");return null;}// 通过反射创建英雄对象var selectedHeroType = heroTypes[index - 1];selectedHero = Activator.CreateInstance(selectedHeroType);// 获取该英雄的所有技能// skillMethods类型为System.Reflection.MethodInfo,自带Name属性var skillMethods = selectedHeroType.GetMethods().Where(m => m.GetCustomAttributes(typeof(SkillAttribute), false).Any()).ToList();// 初始化技能列表selectedHeroSkill.Clear();selectedHeroSkill.AddRange(skillMethods.Select(m => m.Name).ToArray());return selectedHeroType;}static private void showSelectedHero(Type hero) {Console.WriteLine("====================");int index = 1;Console.WriteLine("已选择英雄:");Console.WriteLine(hero.Name);Console.WriteLine("技能为:");foreach (string skill in selectedHeroSkill){Console.WriteLine($"{index}:{skill}");index++;}Console.WriteLine("====================");}static void Main(string[] args){init();showHeros();var heroType = selectHero();showSelectedHero(heroType);Console.ReadLine();}}
}
  • 于是乎,这个世界就变成了这样:
    请添加图片描述
    其实,还不错啦~~~
    请添加图片描述
http://www.yayakq.cn/news/239983/

相关文章:

  • 苏州高新区建设局网站网页布局设计主要有什么类型
  • 做超市dm的网站推广策略图片
  • 租车网站建设方案网站源码提取
  • 免费看电视剧网站2020设计企业
  • 特效网站模板葫芦岛长城建设公司网站
  • 沈阳电子商务网站建设sem推广和seo的区别
  • 网站建设模板平台wordpress固定链接打不开
  • 网站建设与管理 第2版网站页面制作软件
  • 灵山招聘网灵山英才网做灵山专业的招聘网站宁波招聘网站开发
  • a5站长网网站交易网络营销渠道的类型
  • 建设企业网站公司价格安阳 网站建设
  • 网站显示已备案爱心捐赠网站怎么做
  • 张家港江阴网站制作php购物网站开发摘要
  • 江北网站建设的技术专业的网站开发建设
  • 网站建设深圳公司哪家好设计品牌名称和标志
  • flash 网站管理系统建设发展集团有限公司
  • 建设网站的功能及目的做淘宝网站目的是什么
  • 网站运营与公司wordpress自动获取封面图
  • 企石网站建设市政建设招标网站有哪些
  • 国外教做美食网站辽宁工程建设工程信息网站
  • 江苏建设工程招投标网站北京出名做网站的公司
  • 枣庄手机网站建设报价code网站免费
  • 流行用什么做网站网站系统繁忙是什么意思
  • 非遗网站建设目的开发区网站建设工作管理办法
  • 网站开发设计工程师岗位职责html网站模仿
  • 想要网站导航正式推广合肥seo搜索优化
  • 腾讯网站南京网站设计案例
  • 东莞网站设计报价泰安房产网签住宅
  • 汕头网站制作网页深圳建设集团有限公司好吗
  • 做网站用的图片分辨率宿州保洁公司电话