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

公司内部网站创建做网站都需要什么技术

公司内部网站创建,做网站都需要什么技术,手机如何制作app,wordpress 嵌入python目录 一、涉及到的知识点1 1.虚方法 2.重写方法 3.重写方法与重载方法的区别 4.通过KeyPressEventArgs.KeyChar限制键盘输入的内容 5.if-else if-else嵌套转换为switch case 二、 涉及到的知识点2 1.多态性 2.使用多态性的注意事项 3. 使用虚方法实现多态性 三、实…目录 一、涉及到的知识点1 1.虚方法 2.重写方法 3.重写方法与重载方法的区别 4.通过KeyPressEventArgs.KeyChar限制键盘输入的内容 5.if-else if-else嵌套转换为switch case  二、 涉及到的知识点2 1.多态性 2.使用多态性的注意事项 3. 使用虚方法实现多态性 三、实例1重写虚方法 1.源码 2.生成效果 四、实例2多态性  1.源码 2.生成效果  一、涉及到的知识点1 1.虚方法 通过virtual关键字修饰的方法被称为虚方法虚方法可以被其子类重写。 虚方法就是允许被其子类重新定义的方法在声明时需要使用virtual修饰符。 virtual修饰符不能与static、abstract或者override修饰符同时使用。 由于虚方法不能是私有的所以virtual修饰符不能与private修饰符同时使用。 2.重写方法 如果一个方法声明中含有override修饰符则称该方法为重写方法它主要用来使用相同的签名重写继承的虚方法。虚方法主要用来引入新方法而重写方法则使从基类继承而来的虚方法专用化(提供虚方法的具体实现)。 override修饰符不能与new、static或者virtual修饰符同时使用。另外重写方法只能用于重写基类中的虚方法不能用来单独声明方法。 3.重写方法与重载方法的区别 重写方法与重载方法是不相同的重写方法是指在派生类中重写基类的虚方法而重载方法是指编写一个与已有方法同名但参数列表不同的方法。 4.通过KeyPressEventArgs.KeyChar限制键盘输入的内容 在C#中KeyPressEventArgs.KeyChar是与KeyPress事件相关联的事件参数类KeyPressEventArgs的一个属性。它提供有关事件的按键信息。         KeyPressEventArgs.KeyChar属性返回一个char值表示按下的键的字符。如果按下的键不生成字符例如功能键或箭头键则该属性将返回一个空字符‘\0’。 本例中通过KeyPressEventArgs.KeyChar属性对键盘输入进行判断是否‘0~9’、是否回车、是否回退键。 /// summary /// 这段代码是一个事件处理程序用于处理 TextBox1 控件的 KeyPress 事件。 /// 它确保用户在 TextBox1 中输入的字符 /// 仅限于数字0-9和回车键\r以及退格键\b。 /// /summary private void TextBox1_KeyPress(object? sender, KeyPressEventArgs e) {if (!(e.KeyChar 9 e.KeyChar 0) e.KeyChar ! \r e.KeyChar ! \b){e.Handled true;} } 5.if-else if-else嵌套转换为switch case  转换后程序更易读和简练。 详见实例中的源码。 二、 涉及到的知识点2 1.多态性 多态性可以简单地概括为“一个接口多种方法”它是在程序运行的过程中才决定调用的方法多态性是面向对象编程的核心概念。 多态使得子类(派生类)的实例可以直接赋予基类的对象(这里不需要进行强制类型转换)然后直接就可以通过这个对象调用子类(派生类)的方法。 2.使用多态性的注意事项 多态性主要是用于实现接口重用因为接口是程序开发中最耗费时间的资源实质上设计一个接口要比设计一堆类要显得更有效率。 多态性在C#中主要通过虚方法和重写方法来体现。 3. 使用虚方法实现多态性 首先在基类中定义虚方法每一个子类都重写基类的虚方法采用基类的对象引用子类实例的方法创建对象这样会产生很多基类的对象使用每一个基类的对象调用虚方法时会调用不同子类重写基类的方法这样就实现了多态性。 三、实例1重写虚方法 本实例将通过重写虚方法实现两个数相加具体实现时首先在Operation类中定义一个虚方法Operators用于实现两个数相乘然后创建一个子类Addition,继承自Operation类在子类中重写虚方法Operators实现两个数相加。依此类推。 1.源码 // 重写虚方法实现-*/运算 namespace _119 {public partial class Form1 : Form{private TextBox? textBox1;private ComboBox? comboBox1;private TextBox? textBox2;private Label? label1;private TextBox? textBox3;private Button? button1;public Form1(){InitializeComponent();StartPosition FormStartPosition.CenterScreen;Load Form1_Load;}private void Form1_Load(object? sender, EventArgs e){// // textBox1// textBox1 new TextBox{Location new Point(12, 20),Name textBox1,Size new Size(50, 23),TabIndex 0};textBox1.KeyPress TextBox1_KeyPress;// // comboBox1// comboBox1 new ComboBox{FormattingEnabled true,Location new Point(68, 18),Name comboBox1,Size new Size(43, 25),TabIndex 1};comboBox1.Items.AddRange([×,,-,/]);// // textBox2// textBox2 new TextBox{Location new Point(117, 20),Name textBox2,Size new Size(50, 23),TabIndex 2};textBox2.KeyPress TextBox2_KeyPress;// // label1// label1 new Label{AutoSize true,Location new Point(173, 26),Name label1,Size new Size(17, 17),TabIndex 3,Text };// // textBox3// textBox3 new TextBox{Location new Point(196, 20),Name textBox3,Size new Size(76, 23),TabIndex 4};// // button1// button1 new Button{Location new Point(220, 56),Name button1,Size new Size(52, 23),TabIndex 5,Text 计算,UseVisualStyleBackColor true};button1.Click Button1_Click;// // Form1// AutoScaleDimensions new SizeF(7F, 17F);AutoScaleMode AutoScaleMode.Font;ClientSize new Size(284, 91);Controls.Add(button1);Controls.Add(textBox3);Controls.Add(label1);Controls.Add(textBox2);Controls.Add(comboBox1);Controls.Add(textBox1);Name Form1;Text 重写虚方法实现加法;}private void Button1_Click(object? sender, EventArgs e){if (textBox1!.Text || textBox2!.Text ){MessageBox.Show(请输入数字, 警告, MessageBoxButtons.OK, MessageBoxIcon.Error);}//else//{// if (comboBox1!.SelectedIndex 0)// {// Operation multiplication new();//原始虚方法进行乘法运算// textBox3!.Text multiplication.Operators(Convert.ToInt32(textBox1.Text.Trim()), Convert.ToInt32(textBox2.Text.Trim())).ToString();// }// else if (comboBox1!.SelectedIndex 1)// {// Operation addition new Addition();// textBox3!.Text addition.Operators(Convert.ToInt32(textBox1.Text.Trim()), Convert.ToInt32(textBox2.Text.Trim())).ToString();// }// else if (comboBox1!.SelectedIndex 2)// {// Operation minus new Minus();// textBox3!.Text minus.Operators(Convert.ToInt32(textBox1.Text.Trim()), Convert.ToInt32(textBox2.Text.Trim())).ToString();// }// else// {// Operation division new Division();// textBox3!.Text division.Operators(Convert.ToInt32(textBox1.Text.Trim()), Convert.ToInt32(textBox2.Text.Trim())).ToString();// }//}// 转换为Switch语句else{switch (comboBox1!.SelectedIndex){case 0:{Operation multiplication new();//原始虚方法进行乘法运算textBox3!.Text multiplication.Operators(Convert.ToInt32(textBox1.Text.Trim()), Convert.ToInt32(textBox2.Text.Trim())).ToString();break;}case 1:{Operation addition new Addition();textBox3!.Text addition.Operators(Convert.ToInt32(textBox1.Text.Trim()), Convert.ToInt32(textBox2.Text.Trim())).ToString();break;}case 2:{Operation minus new Minus();textBox3!.Text minus.Operators(Convert.ToInt32(textBox1.Text.Trim()), Convert.ToInt32(textBox2.Text.Trim())).ToString();break;}default:{Operation division new Division();textBox3!.Text division.Operators(Convert.ToInt32(textBox1.Text.Trim()), Convert.ToInt32(textBox2.Text.Trim())).ToString();break;}}}}/// summary/// 这段代码是一个事件处理程序用于处理 TextBox1 控件的 KeyPress 事件。/// 它确保用户在 TextBox1 中输入的字符/// 仅限于数字0-9和回车键\r以及退格键\b。/// /summaryprivate void TextBox1_KeyPress(object? sender, KeyPressEventArgs e){if (!(e.KeyChar 9 e.KeyChar 0) e.KeyChar ! \r e.KeyChar ! \b){e.Handled true;}}/// summary/// 这段代码是一个事件处理程序用于处理 TextBox1 控件的 KeyPress 事件。/// 它确保用户在 TextBox1 中输入的字符/// 仅限于数字0-9和回车键\r以及退格键\b。/// /summaryprivate void TextBox2_KeyPress(object? sender, KeyPressEventArgs e){if (!(e.KeyChar 9 e.KeyChar 0) e.KeyChar ! \r e.KeyChar ! \b){e.Handled true;}}/// summary/// 建立的虚方法可以在子类中被重写/// /summaryclass Operation{public virtual double Operators(int x, int y){return x * y;}}/// summary/// 在子类中重写虚方法改写为加法/// /summaryclass Addition : Operation{public override double Operators(int x, int y){return (x y);}}/// summary/// 依次在子类中重写虚方法改写为减法/// /summaryclass Minus : Operation{public override double Operators(int x, int y){return (x - y);}}/// summary/// 依次在子类中重写虚方法改写为除法/// /summaryclass Division : Operation{public override double Operators(int x, int y){return (float)x / y;}}} }2.生成效果 四、实例2多态性  日常生活中经常说的开电视、开电脑、开音箱等这里的“开”其实就是多态。 本实例通过使用类的多态性来确定人类的说话行为。运行本实例首先在文本框中输入人的姓名然后单击“确定”按钮在RichTextBox控件中分别显示人的“说汉语”和“说英语”行为。 1.源码 // 通过类的多态性确定人类的说话行为 namespace _120 {public partial class Form1 : Form{private Label? label1;private TextBox? textBox1;private Button? button1;private RichTextBox? richTextBox1;public Form1(){InitializeComponent();StartPosition FormStartPosition.CenterScreen;Load Form1_Load;}private void Form1_Load(object? sender, EventArgs e){// // label1// label1 new Label{AutoSize true,Location new Point(12, 14),Name label1,Size new Size(68, 17),TabIndex 0,Text 输入姓名};// // textBox1// textBox1 new TextBox{Location new Point(86, 8),Name textBox1,Size new Size(125, 23),TabIndex 1};// // button1// button1 new Button{Location new Point(217, 8),Name button1,Size new Size(75, 23),TabIndex 2,Text 确定,UseVisualStyleBackColor true};button1.Click Button1_Click;// // richTextBox1// richTextBox1 new RichTextBox{Location new Point(12, 42),Name richTextBox1,Size new Size(280, 72),TabIndex 3,Text };// // Form1// AutoScaleDimensions new SizeF(7F, 17F);AutoScaleMode AutoScaleMode.Font;ClientSize new Size(304, 126);Controls.Add(richTextBox1);Controls.Add(button1);Controls.Add(textBox1);Controls.Add(label1);Name Form1;Text 类的多态性确定说话行为;}private void Button1_Click(object? sender, EventArgs e){if (textBox1!.Text ){Console.WriteLine(请输入姓名);return;}richTextBox1!.Clear();string strName textBox1.Text;People[] people [new Chinese(), //使用第一个派生类对象初始化数组的第一个元素new American(), //使用第二个派生类对象初始化数组的第二个元素]; //声明People类型数组for (int i 0; i people.Length; i) //遍历赋值后的数组{people[i].Say(richTextBox1, strName); //根据数组元素调用相应派生类中的重写方法}}}/// summary/// 定义基类/// 定义虚方法,表示人的说话行为/// /summaryclass People{public virtual void Say(RichTextBox rtbox, string name){rtbox.Text name;}}/// summary/// 定义派生类继承于基类/// 重写基类中的虚方法/// /summaryclass Chinese : People{public override void Say(RichTextBox rtbox, string name){base.Say(rtbox, name 说汉语\n);}}/// summary/// 定义派生类继承于基类/// 再次重写基类中的虚方法/// /summaryclass American : People{public override void Say(RichTextBox rtbox, string name){base.Say(rtbox, name 说英语);}} }2.生成效果
http://www.pierceye.com/news/230791/

相关文章:

  • 建设电影网站点击播放是乱页的建站网站多少钱
  • 网站上传服务器教程交做网贷的网站
  • wordpress网站无法打开wordpress怎么设置跳站外链接
  • 宠物美容网站建设的目的延安网站建设
  • 开发网站如何赚钱网站流量攻击软件
  • 达内网站开发视频教程水利建设专项收入在什么网站上申报
  • php网站后台密码忘记了莆田网站建设推广
  • wordpress typo3seo排名优化哪家好
  • 做pc端网站什么开头参考消息网国内新闻
  • 济南网站开发xywlcn宁波公司注册代理公司
  • 网站怎么找的中国外贸出口网站
  • 个人备案网站可以做商城吗做视频点播网站的要求
  • 那个网站点击率高域名解析大全
  • 做优化排名会不会影响网站速度广州网匠营销型网站建设公司
  • 南京林业大学实验与建设网站如何查询网站备案时间查询
  • 做食品网站有哪些凡科建站做的网站收录慢吗
  • 做平面还有什么素材网站集团网站建设
  • seo网站营销推广公司不错的免费网站建设
  • 怎么做自助交易网站平面设计师工资一般多少钱一个月
  • 网站建设如何运营seoul是什么意思
  • 51CTO学院个人网站开发视频营销策划包括哪些内容
  • 专做排名的网站wordpress样式乱了
  • 网站空间域名维护协议网站备案的意义
  • word可以做网站链接吗网站推广的基本方法有哪些
  • 公司展示型网站wordpress后台邮箱怎么设置
  • 小程序咸鱼之王2022年搜索引擎优化指南
  • 企业网站建设 价格wordpress汉化主题
  • 兰州市建设厅官方网站做网站用的编程工具
  • 网站建设及维护招聘周口航迪科技网站建设公司怎么样
  • 服装外贸网站建设discuz应用