2017-9-20C#笔记(类,访问修饰符以及访问性,静态成员和实例成员,字段,Main方法,常量,对象的创建,类的属性)

软件开发的两种主要的方式为面向对象和面向过程,面向过程的焦点主要放在指令的组合和优化上,面向对象的焦点从指令转移到组织程序的数据和功能上.

程序的数据和功能被组织为逻辑上相关的数据项和函数的封装集合,称之为类.类作为一个有机的不可分割的整体,对外隐藏具体实现细节,从而实现可重用和易维护等特性,同时还提供了继承功能,支持子类获得父类特征.

类是一个能存储数据并执行代码的数据结构,是逻辑相关的数据和函数的封装,通常代表真实世界中的或概念上的事物.

类包括以下内容:

(1) 数据成员:数据成员用来存储与类或对象相关的数据.数据成员通常模拟该类所表示的现实世界事物的特性

(2) 函数成员:函数成员执行代码,通常模拟类所表示的现实世界事物的功能和操作.

成员可以使9种可能的成员的任意组合:

类是用户自定义数据类型:

C#中定义类的一般形式:

[类修饰符]   class   类名

{

成员列表

}

类定义同结构体定义一样,系统不会为它分配存储空间。

  1. 访问修饰符的含义以及访问性:

对访问修饰符的使用补充:

(1)   所有显式声明在类中的成员都是互相可见的,无论这些成员具有何种访问控制属性

(2)   类的成员不会具有比类的整体更开放的访问权限

(3)   访问修饰符可以以任意顺序出现零次或多次,一个访问修饰符只修饰当前的一个类成员。

(4)   如果一个成员在声明的时候没有携带任何访问修饰符,则默认它是私有成员。

  1. 静态成员和实例成员

针对成员定义是否使用关键字static进行修饰,可以将类成员分为静态成员和实例成员

(1)   实例成员:

实例成员有时称为费静态成员,它与类成员的对象相关。当字段、方法、属性、事件、索引器、析构函数和构造函数的声明中不包含static修饰符时,它生命为实例成员。实例成员的特点:

①   使用“类对象.成员名”的形式进行引用

②   类的每一个对象分别包含一组该类的所有实例字段

③   实例函数成员作用于类的给定对象,可借助this访问器访问。

(2)   静态成员

静态成员与类而不是类对象相关

当字段、方法、属性、事件、运算符或构造函数声明中含有static修饰符时,它声明静态成员。类的常量成员会隐式地声明静态成员

静态成员有如下特性:

①   使用“类名.成员名”的形式进行引用

②   静态字段的存储由类的所有对象共享,只有一个副本

③   静态函数成员不能作用于具体对象们不能使用this访问器访问。

4.字段

字段是隶属于类的变量。他可以是任意数据类型,包括预定义类型和用户自定义类型。字段可以用来保存数据,并且支持读写操作。

字段的声明语法:

[static]   访问修饰符  数据类型 字段名;

static修饰符的字段是类的静态字段,只要类定义只有就由编译器为止分配空间。没有static关键字修饰的字段是类的实例字段,只有定义了类的对象或对类进行实例化之后,才为该对象或类实例分配这个字段的存储空间。

类的静态字段有位移的存储空间,被类的所有实例公共访问。对于类的实例字段,每个类实例都有独立的用以存储该实例字段的存储空间。

使用volitile修饰的可变字段只有在多线程的程序运行环境下,采用优化技术菜会造成与非可变字段不同的访问结果。

5.Main方法

Main方法的补充:

(1)       Main方法必须声明为static,否则程序无法启动

(2)       Main方法可以声明在程序中任意的类或者结构体中。

(3)       Main方法默认被声明为private,此时只能通过执行环境来启动当前程序;Main方法可以被声明为publi使得其他程序能够访问。

  1. 1.  常量

常量的声明语法:

访问修饰符  const  数据类型  常量名=常量值

如 const  double  PI = 3.14;

用于初始化常量成员的值在编译期必须是可计算的,而且通常是一个预定义简单类型或由他们组成的表达式。成员常量只能在声明时给常量成员赋值,任何在声明之后给常量成员赋值的动作都会造成编译错误。

常量成员没有自己的存储位置,而是在编译时被编译器替换,因此不能使用static关键字进行修饰。

C#中没有全局变量,每个常量都必须声明在类型内。

  1. 2.  对象的创建

创建对象时需要使用new运算符。new运算符可以为任意指定类型的实例分配并初始化内存。创建对象的语法形式如下:

对象名 = new 类名();

进行对象创建时需要注意:

(1)   new运算符后为要创建的对象所属类的类名;

(2)   类名后的圆括号不可省略

(3)   可以将对象的定义和创建合并一起;如 Point  p1=new Point()

8.类的属性

类字段的访问权限一般的定义为private和protected,类外用户通过类的public方法来访问

C#中的属性把字段和访问他们的方法结合。属性为类用户提供了与字段读写相同的使用方法。

属性值得读写通过get访问器和set访问器实现的,可以对非法的赋值进行检查过滤。

(1)       属性的定义

属性声明的一般形式为:

[访问修饰符]  属性类型  属性名

{

get

{

//获取属性值得代码

return 表达式;//这里可以输入更多的代码,此处是典型代码

}

set {

//设置属性值的代码

}

}

时间: 2024-12-26 17:37:33

2017-9-20C#笔记(类,访问修饰符以及访问性,静态成员和实例成员,字段,Main方法,常量,对象的创建,类的属性)的相关文章

Java访问修饰符(访问控制符)

Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: public class className { // body of class } private boolean myFlag; static final double weeks = 9.5; protected static final int BOXWIDTH = 42; public static void main(String[] arguments) { // body of meth

2.Java访问修饰符(访问控制符)

Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: public class className { // body of class } private boolean myFlag; static final double weeks = 9.5; protected static final int BOXWIDTH = 42; public static void main(String[] arguments) { // body of meth

Java知多少(19)访问修饰符(访问控制符)

Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: 1 public class className { 2 // body of class 3 } 4 private boolean myFlag; 5 static final double weeks = 9.5; 6 protected static final int BOXWIDTH = 42; 7 public static void main(String[] arguments) { 8

.Net学习笔记----2015-06-27(访问修饰符)

周末要陪老婆孩子,还要多多做些家务事,所以只能晚上学习喽 C#中的访问修饰符: public:公开的公共的. private:私有的,只能在当前类的内部使用. protected:受保护的,只能在当前类的内部以及该类的子类中访问. internal: 只能在当前程序集(项目)中访问,在同一个项目中,public和internal的权限是一样的. protected internal:protected + internal. (1).能够修饰类的访问修饰符只有2个,:public     int

C#类、方法的访问修饰符

这篇文章主要介绍了C#类的访问修饰符用法,较为详细的分析了C#类的访问修饰符概念与用法,具有一定的参考借鉴价值,需要的朋友可以参考下 本文详细分析了C#类的访问修饰符用法,分享给大家供大家参考.具体用法分析如下: 默认情况下,类声明为内部的,即只有当前工程中的代码才能访问它.可以用internal访问修饰符关键字显式指定,但这不是必须的,类在定义时默认为此类型的类.但是C# 方法默认访问级别: private. 方法或者属性的修饰符的访问级别如下图: 访问修饰符 意 义 public 访问不受限

C#类的访问修饰符

默认情况下,类声明为内部的,即只有当前工程中的代码才能访问它.可以用internal访问修饰符关键字显式指定,但这不是必须的,类在定义时默认为此类型的类.但是C# 方法默认访问级别: private.     方法或者属性的修饰符的访问级别如下图: 访问修饰符 意 义 public 访问不受限制,可以类内和任何类外的代码中访问 protected 可访问域限定于类内或从该类派生的类内 internal 可访问域限定于类所在的程序集内 protected internal protected或者i

C#中访问修饰符

范围(从小到大):private<internal/protected<protected internal<public private:只能在本类中使用internal:只能在本程序集(本项目)中使用protected:只能在具有继承关系的子类中使用(可以在不同的项目中)protected internal:在本程序集中或在不同的程序集中但是具有继承关系就可以使用public:都能使用 注意:1.如果类没有使用显示的修饰符,默认为internal,类的访问修饰符只能是public和i

C# 封装的访问修饰符

封装 被定义为"把一个或多个项目封闭在一个物理的或者逻辑的包中".在面向对象程序设计方法论中,封装是为了防止对实现细节的访问. 抽象和封装是面向对象程序设计的相关特性.抽象允许相关信息可视化,封装则使开发者实现所需级别的抽象. C# 封装根据具体的需要,设置使用者的访问权限,并通过 访问修饰符 来实现. 一个 访问修饰符 定义了一个类成员的范围和可见性.C# 支持的访问修饰符如下所示: Public:所有对象都可以访问: Private:对象本身在对象内部可以访问: Protected

C#中的默认访问修饰符

1.命名空间下的元素的默认访问修饰符 public : 同一程序集的其他任何代码或引用该程序集的其他程序集都可以访问该类型或成员.internal : 同一程序集中的任何代码都可以访问该类型或成员,但其他程序集不可以访问. 2.各类型中的成员的默认访问修饰符剩下的修饰符主要是正对继承这个语言特性的,拥有继承的类型有两个类(class)和接口(interface).public,internal同样可以用于类型成员.private : 同一类和结构的代码可以访问该类型和成员.protected :