翼度科技»论坛 编程开发 .net 查看内容

static关键字---"工具类"

7

主题

7

帖子

21

积分

新手上路

Rank: 1

积分
21
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Windows.Forms;
  7. namespace OOP
  8. {
  9.     public class OOPdemo
  10.     {
  11.         /*
  12.          * static关键字
  13.          * 作用:可以修饰成员变量,修饰成员方法
  14.          * 需求:同一个类生成的对象们,共享此方法,一处修改,处处感知
  15.          * 规则:
  16.          *     1.类名.变量名;
  17.          *     2.类名.方法名()
  18.          *     3.随着类的加载而加载,优先于对象生成
  19.          *     4.静态方法内部,只能够访问静态成员变量,并不能够访问普通成员变量
  20.          *     5.普通方法方法内部,可以访问静态成员变量+普通成员变量
  21.          * --静态类
  22.          *    规则
  23.          *    1.只允许加入静态成员/属性
  24.          *    2.只允许加入静态成员方法
  25.          *    3.*实例化--->不允许使用 new 进行实例化生成。实例
  26.          * --sattic的内存原理
  27.          *   -生命周期由类的产生而产生
  28.          *   -也就是说,当第一次遇到需要调用的类时,static变量就会被加载到 静态内存当中 作为一个共享的
  29.          */
  30.         #region  statuic的字段/属性
  31.         /// <summary>
  32.         /// 用于己录当前一共生成过多少个对象
  33.         /// 因为static关键字,所以这个字段被共享出了
  34.         /// </summary>
  35.         static public int count;
  36.         private int ID;
  37.         public int id { get => ID; set => ID = value; }
  38.         /// <summary>
  39.         /// 构造方法,对象被创建的时候被调用
  40.         /// </summary>
  41.         public OOPdemo()
  42.         {
  43.             count++;
  44.         }
  45.         #endregion
  46.     }
  47.     #region 静态类的---工具类
  48.     /// <summary>
  49.     /// 静态类的---工具类
  50.     /// 特点
  51.     ///   --在当前类中,没有存储字段
  52.     ///   --不需要也不允许new对象实例化
  53.     ///   --内部的方法都为静态方法
  54.     ///   --所作的计算都依赖于外界传入的参数,完成外界想让静态方法完成的任务
  55.     /// 在调用静态类中的某个方法时,只需要类名.方法名 不需要实例化,因为他没有字段存储数据
  56.     /// 且运行时依赖于外部传进来的参数,则作为静态方法使用
  57.     /// 设置为静态类,可以防止他人new 本类的对象,从而规范开发行为
  58.     /// </summary>
  59.     static class staticss
  60.     {
  61.         //给定一个数组,要求返回这个数组中的最大值和最小值,以及和以及平均数
  62.         /// <summary>
  63.         /// 返回数组中最大值
  64.         /// </summary>
  65.         /// <param name="arr"></param>
  66.         /// <returns></returns>
  67.         public static int Max(int [] arr)
  68.         {
  69.             int a = 0;
  70.             for (int i = 0; i < arr.Length; i++)
  71.             {
  72.                 if (a>arr[i])
  73.                 {
  74.                     a = arr[i];
  75.                 }
  76.             }
  77.             return a;
  78.         }
  79.         /// <summary>
  80.         /// 返回数组中最新小的值
  81.         /// </summary>
  82.         /// <param name="arr"></param>
  83.         /// <returns></returns>
  84.         public static int Min(int[] arr)
  85.         {
  86.             int a = 0;
  87.             for (int i = 0; i < arr.Length; i++)
  88.             {
  89.                 if (a < arr[i])
  90.                 {
  91.                     a = arr[i];
  92.                 }
  93.             }
  94.             return a;
  95.         }
  96.         /// <summary>
  97.         /// 返回数组中所有元素的和
  98.         /// </summary>
  99.         /// <param name="arr"></param>
  100.         /// <returns></returns>
  101.         public static int Sum(int[] arr)
  102.         {
  103.             int a = 0;
  104.             foreach (var item in arr)
  105.             {
  106.                 a += item;
  107.             }
  108.             return a;
  109.         }
  110.         /// <summary>
  111.         /// 返回数组中所有元素1平均值
  112.         /// </summary>
  113.         /// <param name="arr"></param>
  114.         /// <returns></returns>
  115.         public static int Avg(int[] arr)
  116.         {
  117.             int a = 0;
  118.             foreach (var item in arr)
  119.             {
  120.                 a += item;
  121.             }
  122.             return a/arr.Length;
  123.         }
  124.     }
  125.     #endregion
  126. }
复制代码
 

来源:https://www.cnblogs.com/hyh749/p/18079397
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具