静态类、静态方法的使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _Test { class Program { static void Main( string [] args) { //调用实例成员 Person p = new Person(); p.M1(); //实例方法,调用的时候必须创建实例对象。 Person.M2(); //静态方法,只能通过类名直接调用。 Student.M3(); //静态类中的静态方法只能通过类名调用。 Console.WriteLine(); Console.ReadKey(); } } public static class Student //静态类 { private static string _name; public static string Name { get { return Student._name; } set { Student._name = value; } } public static void M3() { Console.WriteLine( "Hello World" ); } } public class Person //非静态类 { private static string _name; public static string Name { get { return Person._name; } set { Person._name = value; } } private char _gender; public char Gender { get { return _gender; } set { _gender = value; } } public void M1() //非静态方法 { Console.WriteLine( "我是非静态的方法" ); } public static void M2() //静态方法 { Console.WriteLine( "我是一个静态方法" ); } } } |
语法规则:
1静态类与非静态类基本相同,但存在一个区别:静态类不能实例化。也就是说,不能使用 new 关键字创建静态类类型的变量。因为没有实例变量,所以要使用类名本身访问静态类的成员。
2静态类的特性:
-
仅包含静态成员。
-
无法实例化。
-
是密封的。
-
不能包含实例构造函数。
树立目标,保持活力,gogogo!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具