zl程序教程

您现在的位置是:首页 >  后端

当前栏目

C# 修饰符

c# 修饰符
2023-09-11 14:16:46 时间

一 访问控制符

在这里插入图片描述

二 static

1 static 的字段、方法、属性是属于整个类的

① static方法中,不能访问实例变量;
② 调用static方法时,直接用类名访问

Console.Write();Math.Sqrt();
Convert.ToDateTime();DateTime.Parse
String.Copy(a);String.Format("{0}",x);

③ static 变量可以用来表示“全局变量”;
在C# 2.0中,类名也可以用static来修饰;

2 static构造方法

class Person{
static long totalNum;
static Person(){
totalNum=(long)52e8;
Console.WriteLine("人类总人口"+totalNum);}}

Static 构造方法只会调用一次,但其调用时间不确定的。

三 const及readonly

1 const相当于静态常量

如Math.PI;

2 readonly相当于不可改量,只能赋一次值

如String.Empty;
在构造方法中赋值,或者在声明时就复制;
注:
const 只能用于基本类型及string;
readonly只能修饰字段,而const还可以修饰局部变量;

四 sealed及abstract

1 sealed类,不可继承(也有利于编译优化)

如String Console Math Convert Graphics Font;

2 abstract类,不可实例化(new)

如Array,RandomNumberGenerator;

3 abstract的方法体,不用{},用;

abstract 类型 方法名(参数列表);
abstract 类型 属性名{get;set;}

五 抽象类表示了其子类的属性

在这里插入图片描述

六 总结

① public/private/internal/protected是访问修饰符;
② static 属于类的而非实例的;
③ const 常量 readonly只读量;
④ sealed不可继承的,abstract 抽象的;

测试:
①C#中,用那个符号来表示继承
②访问父类的成员,使用关键字 base;
③ C#所有的类都是object的子类;
④ 要重写父类的方法,使用关键词
override;
⑤ 判断一个对象时不是某个类的实例,使用运算符 is;
⑥ 类似于强制类型转换但不抛出异常的运算符是 as;