静态与非静态

静态与非静态


1、静态与非静态区别

(1)在非静态类中,既可以有非静态成员(即实例成员),也可以有静态成员。

(2)在调用实例成员时,需要使用:对象名.实例成员。在调用静态成员的时候,需要使用:类名.静态成员名。

总结:

(1)静态成员必须使用类名去调用,而实例成员使用对象名调用。

(2)静态函数中,只能访问静态成员,不允许访问实例成员。

(3)实例函数中,既可以使用静态成员,也可以使用实例成员。

(4)静态类中只允许有静态成员,不允许出现实例成员。

使用:

(1)如果想要将一个类当做一个工具类去使用,可以考虑将类写成静态的类。此方法不需要创建类的对象。

(2)静态类在整个项目中资源共享。

2、实例1

(1)新建一个控制台程序,名为静态与非静态,然后在选择此项目添加一个类,类名为Person。

代码1

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 静态与非静态
{
    class Person
    {
        private static string p_name;   //定义静态成员变量
        private char p_gender;      //定义实例成员变量
        public void Test1()
        {
            Console.WriteLine("定义一个非静态方法");
        }
        public static void Test2()
        {
            Console.WriteLine("定义一个静态方法");
        }
    }
}

代码2

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 静态与非静态
{
    class Program
    {
        static void Main(string[] args)
        {
            //调用实例成员
            Person p = new Person();
            p.Test1();  //实例方法调用
           
            //调用静态方法
            Person.Test2();     //静态方法调用
            Console.ReadKey();
        }
    }
}

运行结果


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值