黑马程序员c#学习4

Windows Phone 7手机开发.Net培训、期待与您交流!

1、面向对象概念

   三个特性 : 封装,继承,多态

   类 : 类是具有某些共同特征的事物的抽象表示

   对象  :类的实例,即抽象事物的具体化。

   方法: 类能够执行的动作

   字段 :类的状态,是指类的一组相关变量。

2、 类的定义

   关键字  class

   语法  [访问修饰符] [static] class  类名

  {
   类成员

  }

3、成员访问级别

   类的字段、属性和方法都叫做类的成员,他们有自己的访问级别,这用来控制类怎样被访问,访问级别

有下列几种

   public  任何地方都可以访问
 
   private  只有定义成员的类可以访问

   protected  只有定义他们的类和子类可以访问

   internal   由当前程序集访问

   类型成员的默认修饰符为private 而类的默认修饰符为internal

4、字段与属性

    为了保护对象的私有数据,字段的访问修饰符为private,那么就只有定义它的类才可以操作这个字段
,如果其他类需要操作这个字段,该怎么办么,这就需要属性了

    属性就是对字段的一种封装,用来保护字段的数据。并且可以对赋给字段的值进行检查,过滤不符合规

范的值

    属性的定义语法

     访问修饰符  数据类型  属性名
 {
  get{ return  字段名;}
  set{ 字段名= value ;}

 }

      从语法上可以看出,属性可以看成一个拥有两个子方法的方法,只不过在定义方法时需要()来定义

参数,而属性不需要。

      通过对属性内部get set方法的访问控制,我们还可以设置只读属性,只写属性。默认情况下,get
set方法的修饰符是继承与属性的访问修饰符

      注意  属性并不存储任何数据,他是通过对字段的访问来达到存数数据和读取数据的目的。故一般情
况下,属性都会和一个字段有个映射关系。所有的数据都是存储在字段中的。

      自动属性:当属性内的get和set方法不包含任何检查逻辑,指示简单的给字段赋值和取值,那么可以
使用自动属性来简化代码

  访问修饰符  数据类型  属性名
 {
  get;
   set;

 }

 使用自动属性时要注意,不能设置只读或只写属性。

5、类的实例化

   关键字   new

   语法     类名  变量名 = new  类名(参数)

   new关键字的作用在于在堆中分配一块区域来存储对象,这个区域的引用被传递给变量,这样,通过这个

变量我们就可以访问对象中的成员

   如果我们不使用new关键字,指示使用 类型  变量名 ;这种语法,只是申明了一块空间来存储一个相应

类的引用,但是这个引用的具体值并没有生成,所以,这种情况下我们并不能通过变量名来访问任何对象的

成员,因为我们并不知道这个对象存储在那个区域中,而new关键字的作用就是将这个存储区域的引用告诉

变量。

    所以,多数情况下(静态类,抽象类不能使用new关键字),在使用一个类前,必须使用new关键字来分
配一个对象。
     

6、构造函数

    构造函数是类的一个特殊的方法,没有返回值,连void都不用写,在我们使用new关键字来分配对象时
会自动调用。它的作用在于实例化一个类的时候来给对象的各个字段赋初始值。

    每个c#类在定义时会有一个默认的无参的构造函数,这个构造函数会对所有字段都赋予一个对应数据类
型的默认值。

    自定义的构造函数 语法,
 
    public 类名(参数列表)

    {

    }

    注意,一旦我们在类中定义了自己的构造函数,那么默认的构造函数就不会自动生成了,如果我们还需
要使用这个无参的构造函数,我们就必须显式的定义这个函数。

Windows Phone 7手机开发.Net培训、期待与您交流!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值