C#,概览

1.类型

引用类型:

①:对象类型: object a; 这个类型可以被分配任何其他类型的值

②:动态类型:dynamic d = 20;这个可以被分配任何类型值,变量在运行的时候实时检查

(辨别:对象类型中这里a是算object类型,动态类型中d算int类型)

0x:十六进制

0:八进制

 类型转换:用 Convert.To__等函数进行转换

例:string a = "2.23";

       double i ;

        i = Convert.ToDouble(a);

2.input,output

输入:Console.ReadLine()

输出:Console.WriteLine()

3.封装<access specifier>

public:整个解决方案都能访问

internal:仅能在一个文件内访问

private:仅自己的类中可以调用

protected:自己的类与子类可以调用

4.方法(别的语言里面的函数)

每个c#至少有一个main函数

<access specifier> <return type> <method name>(parameter list)

 public,private等        int,void等     自己起名字             参数

{

        method body;

}

5.参数

①:public void swap(int a, int b){...}(值调换函数)

        int a =100,b =200;

        n.swap(a,b);

使用之后不会改变变量的具体值。

②:public void swap(ref int a,ref int b){...}(值调换函数,这里ref类似于指针)

        int a =100,b =200;

        n.swap(a,b);

使用之后改变了变量的具体值。

6.数组

(double,int )[  ] name = new (double,int)[  ]{....};

string中有许多函数,可以用 String. 或  字符串名称. 调用

7.结构体:

using System;
using System.Text;
     
struct Books
{
   private string title;
   private string author;
   private string subject;
   private int book_id;
   public void setValues(string t, string a, string s, int id)
   {
      title = t;
      author = a;
      subject = s;
      book_id =id;
   }
   public void display()
   {
      Console.WriteLine("Title : {0}", title);
      Console.WriteLine("Author : {0}", author);
      Console.WriteLine("Subject : {0}", subject);
      Console.WriteLine("Book_id :{0}", book_id);
   }

};

8.枚举enum

using System;
namespace EnumApplication
{
    class EnumProgram
    {
        enum Days {
            Mon=71, 
            tue=61, 
            Wed=51, 
            thu=41, 
            Fri=51, 
            Sat=61, 
            Sun=71
        };

        static void Main(string[] args)
        {
            int WeekdayStart = (int)Days.Mon;
            int WeekdayEnd = (int)Days.Fri;
            Console.WriteLine("Monday: {0}", WeekdayStart);
            Console.WriteLine("Friday: {0}", WeekdayEnd);
            Console.ReadKey();
        }
    }
}

输出了71,51

9.类

一、类中的三种成员

①:成员函数和封装 :<access specifier> <data type> variable;

                                      <access specifier> <return type> method1 (parameter)

②:构造函数:名称和类名相同,无返回类型,在创建新对象时执行

例: class Line{

                 public Line(){

                 }

        }

③:析构函数:结束程序时运行

例: class Line{

                 ~Line(){

                 }

        }

二、static,静态变量

有点像你无论用这个类创建多少个实例,都公用一个变量,看下代码运行区别

using System;
namespace StaticVarApplication
{
    class StaticVar
    {
        public static int num;
        public int num1;
        public void count()
        {
            num++;
            num1++;
        }
        public int getNum()
        {
            return num;
        }
        public int getNum1()
        {
            return num1;
        }
    }
    class StaticTester
    {
        static void Main(string[] args)
        {
            StaticVar s1 = new StaticVar();
            StaticVar s2 = new StaticVar();
            s1.count();
            s1.count();
            s1.count();
            s2.count();
            s2.count();
            s2.count();
            Console.WriteLine("s1 的变量 num: {0}", s1.getNum());
            Console.WriteLine("s2 的变量 num: {0}", s2.getNum());
            Console.WriteLine("s2 的变量 num: {0}", s2.getNum1());
            Console.ReadKey();
        }
    }
}

三、继承:C# 继承 | 菜鸟教程 (runoob.com)

四、多态性

①:静态多态性:同一个类中同一函数不同情况下的应用

using System;
namespace PolymorphismApplication
{
   class Printdata
   {
      void print(int i)
      {
         Console.WriteLine("输出整型: {0}", i );
      }

      void print(double f)
      {
         Console.WriteLine("输出浮点型: {0}" , f);
      }

      void print(string s)
      {
         Console.WriteLine("输出字符串: {0}", s);
      }
      static void Main(string[] args)
      {
         Printdata p = new Printdata();
         // 调用 print 来打印整数
         p.print(1);
         // 调用 print 来打印浮点数
         p.print(1.23);
         // 调用 print 来打印字符串
         p.print("Hello Runoob");
         Console.ReadKey();
      }
   }
}

②:动态多态性:C#基础之——动态多态性_qq_24693623的博客-CSDN博客

    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值