类声明的全貌
C#类声明的位置
using System;namespace HelloClass{class Program{static void Main(string[] args){···}// 3.program类中的成员类// 声明在类体重的成员类在学习时并不常见,但在实际项目操作中较为常见。class Student{···}}}namespace MyNS{// 1.在namespace中声明类class Teacher{···}}// 2.声明在namespace之外// 实际上是存储在 namespace Global中,// 该情况只会存在在实验、示例当中,实际操作、工作中不会出现该情况。class Computer{···}
声明既定义(C#与Java)
C++ 里面类的声明和定义默认是分开的(推荐),也可以手动写到一起。
在 C# 和 Java 中声明即定义。
最简单的类声明
Class declarations
A class-declaration is a type-declaration that declares a new class.
class-declaration:
attributesopt class-modifiersopt partialopt class identifier type-parameter-list opt
class-baseopt type-parameter-constraints-clausesopt class-body;opt
即使是Micosoft的 ASP.NET Core 这么大的项目里面也没有特别复杂的类声明。
类的访问控制
class 前面没有任何修饰符等于加了 internal。
- internal:仅在自身程序集(Assembly)里面可以访问
- public:从 Assembly 暴露出去 ```csharp using System;
namespace Mylib.MyNameSpace
{
// public修饰符会将class暴露出去,使得其他可以引用class
// 当且仅当private在其他类的成员时,可以使用private class
// internal可以在项目当中自由访问,及限制在Assembly中。
// 且internal是默认情况下存在,即缺省情况下为internal。
internal class Calculater
{
private double Add(double a,double b)
{
return a + b;
}
}
}
```
Code Snippet
- F12:跳至类定义
- Ctrl + - (减号):跳回至之前所在位置
