工作生活

c# 笔记

2019-07-04  本文已影响0人  表情会

c#程序刚开始启动的时候都会有唯一一个入口函数main()函数,而非静态成员又称实例成员,必须作用于实例。在程序刚开始运行的时候,未建立任何实例,因此无法调用实例成员,包括非静态的Main方法。为了能够在程序的开始执行Main方法,必须将其声明为静态。 

顺便说明,在Main方法中调用的成员也必须是静态的,除非建立过相应的实例。 

namespace lover_P.Test { 

public class Test {

public void InstanceMethod() {} // 实例成员(非静态)

public static void StaticMethod {} // 类型成员(静态)

public static void Main() {

InstanceMethod(); // 错误!调用了实例成员,而此时并没有建立实例

StaticMethod(); // 正确!可以调用静态成员

Test SomeTest = new Test(); // 建立本类型的一个实例

SomeTest.InstanceMethod(); // 再在这个实例上调用实例成员就对了

SomeTest.StaticMethod(); // 附加一句,在实例上调用静态成员也是错误的!

}

}

}

static 表示方法是静态的就是说方法在程序被编译的时候就被分配了内存,使用的时候不用生成某个类型的对象,直到程序退出才释放。

void 表示方法没有返回值,就是方法没有renturn 关键字。

main 是方法名,当然这个方法是特殊的方法,是Main()就是说是主函数,就是整个程序的入口,程序被编译后从这里开始执行,这也是main方法要是static的原因,因为在啥都没做的时候这个函数就得存在。

string[] args 表示命令行参数是字符串数组,就是说,你在命令行(黑框框)里输入的参数可以使多个字符串(在某种意义上意味着什么都可以是命令行参数)。

运行时会弹出命令窗口,你可以在那里输入一些参数,string[] args 指的就是你在命令窗口输入的参数。args是用来处理命令行参数的。命令行参数,就是你运行这个程序的时候给它传的参数。它是可选项,不是必须的。

如何向C# Main函数传递参数呢?我们看到C# Main函数带有一个string[] args参数,那么你知道它有什么实际的功能呢?下面我们来具体谈谈:

C#控制台应用程序下,我们常常看到Main函数带有一个string[] args参数,那么你知道它有什么用处?

步骤1:建立一个控制台应用程序,暂且命名为Main.cs

步骤2:贴上下面这段代码。

using System;

class Program{

      static void Main(string[] args){

      int argsLength = args.Length;

      Console.WriteLine("Main函数参数args的长度:" + argsLength.ToString());

for (int i = 0; i < argsLength; i++)

{

Console.Write("第" + i.ToString() + "位是:");

Console.WriteLine(args[i].ToString());

}

}

}

步骤3:编译并运行Main.cs,生成Main.exe文件

步骤4:在命令行模式下输入c:\>Main a b c ,敲回车看结果

输出结果为:

Main函数参数args的长度:3

第0位是:a

第1位是:b

第2位是:c

由于参数个数是未知的,所以允许输入任意多个,也可以不输入。



C#四种访问修饰符是什么

Public:公有的,是类型和类型成员的访问修饰符。对其访问没有限制。

Internal:内部的,是类型和类型成员的访问修饰符。同一个程序集中的所有类都可以访问

Private:私有的,是一个成员访问修饰符。只有在声明它们的类和结构中才可以访问。

Protected::受保护的,是一个成员访问修饰符。只能在它的类和它的派生类中访问。

一、  main方法分析

1、       publicstatic void main(String [] args)

{

   //代码块

}

2、       public:共有的

static:静态的

void:没有返回值

mian:主方法名称

String[] args:表示参数为字符串

二、  作业:

创建一个羊类,使用static实现羊类,记录一共创建了几只羊,

 class HomeWork1

{

 public static void main(String[] args)

 {

  Sheep s1 = new Sheep("喜洋洋");

  Sheep s2 = new Sheep("美羊羊");

  Sheep s3 = new Sheep("懒洋洋");

  System.out.println(Sheep.getCount());

 }

}

class Sheep

{

 private String name;

 private static int count = 0;

 public Sheep(String name)

 {

   this.name = name;

   count++;

 }

 public static int getCount()

 {

    return count;

 }

}

---------------------

作者:Lqc_javaEngineer

来源:CSDN

原文:https://blog.csdn.net/u014756517/article/details/51067377

版权声明:本文为博主原创文章,转载请附上博文链接!

上一篇下一篇

猜你喜欢

热点阅读