类型和成员基础

一.类型的各种成员

在一个class中,可以包含8类成员:

1.常量

2.字段

3.实例构造器

4.类型构造器

5.方法(包括操作符重载,转换操作符)

6.属性

7.事件

8.类型

二.类型的可见性

1.C#编译器默认将类型的可见性设置为internal

2.类型的可见性有public和internal两类。

三.成员的可访问性

1.C#编译器默认将成员的可访问性设置为private

2.成员的可访问性有5类:private,protected,internal,protected internal,public。

四.静态类

1.class使用static关键字表示静态类,static只能应用于类,不能应用于值类型(原因:CLR总是允许值实例化,而静态类不允许被实例化)。

2.静态类的作用:将一组相关的成员的组合到一起。

3.静态类的限制:

(1)静态类不能实现任何接口。原因:只有使用类的实例时,才能调用类的接口方法。

(2)静态类只能定义静态成员(字段,属性,方法,事件)

(3)静态类必须直接从基类System.Object派生,从其它任何基类派生都没有意义。继承只适用于对象,而静态类不能创建实例。

时间: 2024-10-10 21:19:23

类型和成员基础的相关文章

CLR via C#深解笔记三 - 基元类型、引用类型和值类型 | 类型和成员基础 | 常量和字段

编程语言的基元类型 某些数据类型如此常用,以至于许多编译器允许代码以简化的语法来操纵它们. System.Int32 a = new System.Int32();  // a = 0 a = 1; 等价于: int a = 1; 这种语法不仅增强了代码的可读性,其生成的IL代码与使用System.Int32时生成的IL代码是完全一致的. 编译器直接支持的数据类型称为基元类型(primitive type).基元类型直接映射到Framework类库(FCL)中存在的类型.如C#中,int直接映射

06.类型和成员基础

在一个类型中,可以定义0个或多个以下种类的成员 常量 字段 实例构造器:将新对象的实例字段初始化为良好初始状态的一种特殊方法 类型构造器:将类型的静态字段初始为良好初始状态的一种特殊方法 方法 操作符重载 转换操作符 属性 事件 类型:类型可定义嵌套于其中的其他类型,通常用这个办法将一个大的.复杂的类型分解成更小的构建单元,以简化实现 友元程序集 假定有三个开发人员A,B,C,A希望开发的程序集给B开发的程序集访问,但不想C开发的程序集访问,则A在开发程序集的时候,可以将B开发的程序集设置为友元

(6)类型和成员基础

6.1 类型的各种成员 在一个类型中,可以定义0个或者多个以下种类的成员: 常量 常量是在编译时设置其值并且永远不能更改其值的字段.使用常量可以为特殊值提供有意义的名称以代替数字文本,以使代码变得更容易阅读及维护.定义常量请使用关键字const.private const Int32 SomeConstant = 1; 字段 字段存储着类满足其设计所必须拥有的数据.例如,表示日历日期的类可能有三个整数字段:一个表示月份,一个表示日期,还有一个表示年份.强烈建议将字段声明为私有字段,防止类型的状态

【C#进阶系列】06 类型和成员基础

这些东西是基础中的基础,基本上是本书都会讲这个.但是很多东西到处都有,所以只捡了以下的这些写下来. 关于类型的可见性和可访问性 也就是public,internal这种东西,但是还是有个东西要提一下,那就是友元程序集. 利用System.Runtime.CompilerServices中的InternalsVisibleTo这个特性,使得从友元程序集访问指定程序集的internal类型.(它的作用是通过给定公钥和友元程序集名称来访问internal方法与属性,其实就是为了让别的公司的人访问不了,

第6章 类型和成员基础

在本章及本部分后续的章节,我将解释如何在一个类型中定义不同种类的成员,从而设计出符合自己需要的类型. 6.1类型的各种成员 在一个类型中可以定义0个或多个以下种类的成员: 常量:常量就是指出数据值恒定不变的一个符号.这些符号通常用于使代码更容易阅读和维护.常量通常与类型关联,不与类型的实例关联.从逻辑上讲,常量始终是静态成员. 字段:字段表示一个只读或可读可写的数据值.字段可以是静态的,这种情况下,字段被认为是类型状态的一部分.字段也可以是实例(非静态),这种情况下,字段被认为是对象状态的一部分

JavaSE8基础 在构造代码块中给final类型的成员变量赋值

os :windows7 x64    jdk:jdk-8u131-windows-x64    ide:Eclipse Oxygen Release (4.7.0)        代码: /* * final 修饰值类型的成员变量. */ class Demo { final int num; { num = 1;//在构造代码块中给final类型变量赋值 //num = 2; 但是 不能重复赋值.比如,在num=1后面加上num=2,就会报错! } public static void ma

C#反射与特性(三):反射类型的成员

目录 1,获取类型的信息 1.1 类型的基类和接口 1.2 获取属性.字段成员 上一篇文章中,介绍如何获取 Type 类型,Type 类型是反射的基础. 本篇文章中,将使用 Type 去获取成员信息,通过打印出反射获取到的信息,为后续操作反射打好基础. 1,获取类型的信息 我们常常可以看到 函数.方法这两个词,很多人对此进行了混用. 方法,就是 public void Test(){} 这样的形式: 函数,指具有确定命名的.并且可以通过名称调用的代码,属性.字段.方法.委托.事件等: 只要能够通

对实体类的所有String类型的成员变量值trim

使用反射,可以对实体类中的所有String类型的成员变量的值执行trim操作 (1)trim /***  * 对object中的所有成员变量的值,执行trim操作<br>  * 即去掉首尾的空格  * @param obj  * @throws SecurityException  * @throws NoSuchFieldException  * @throws IllegalArgumentException  * @throws IllegalAccessException  */ pu

SpringMVC处理Date类型的成员变量方法

原文链接:http://www.tuicool.com/articles/aYfaqa 在使用 SpringMVC 的时候,我们可能需要将一个对象从 View 传递给 Controller .而当这个 Object 只是一些简单的 String , int 或者 boolean 类型的成员变量时,SpringMVC 能自动将 View 层的 JSON 包含的 String 类型转换为 Object 成员变量相应的类型.但是当这个 Object 包 Date 类型的成员变量的时候, SpringM