从0开始学C#-part 3

7. 类和对象

  • 要深刻理解类和对象的含义,这是C#的精髓

以下这个实例很好的显示了类和对象的关系

class Circle  //定义了类Circle
{
 int radius;
 double Area()
 {
  return Math.PI * radius * radius;
 }
}

Circle c; //创建Circle变量
c = new Circle(); //初始化,new关键字新建类的实例,即“对象”   

类和对象不要混淆,类是类型的定义,对象则是该类型的实例,同一个类可以有多个实例

  • 封装:是定义类时的重要原则,即使用类的程序不应该关心类内部如何工作,只需要创建类的实例(即对象)并调用类的方法。
    封装有两个目的

    • 将方法和数据合并到类中
    • 控制对方法和数据的访问,也就是为了控制类的使用
  • 怎么样控制对方法和数据的访问?

    • 只能从类内部访问的方法和字段是私有的,即声明前加private关键字。该关键字默认
    • 能从类外部访问的声明前加public关键字
  • 理解构造器

构造器是创建对象时自动运行的方法,它与类同名,能获取参数,但不能返回任何值,每个类至少要一个构造器,如果不提供构造器,编译器会自动生成一个什么都不做的默认构造器,如下代码

class Circle
{
 private int radius;
 public Circle() //默认构造器,为公共构造器
 {
  radius = 0;
 }
 public double Area()
 {
  ...
 }
}

添加公共构造器后,Circle类就可以使用了

  • 重载构造器:构造器在本质上是方法,所以支持重载,在上例中,可以再写一个构造器如下:
public Circle(int initialRadius) //新的构造器,带有实参
{
 radius = initialRadius;
}

Circle c;
c = new Circle(45); //使用了新的构造器创建了新的Circle对象,这时候radius为45
  • const创建静态字段
    只有数值类型、字符串类型和枚举类型的字段才可以用const声明
  • 这里想把构造器学习得更透一点,因为C#的类使用中会有大量的构造器出现
  1. 构造器是一种特殊的方法:首先,构造器的名称必须和类相同;其次,构造器没有返回,void也不能有
  2. 构造器最主要的作用就是给类的变量赋值,初始化
  3. 一个类必须要有构造器,如果你不写,那编译器会自动给你写一个没有任何参数的构造器
  4. 这个理解不知道对不对,我们在声明类的时候有时候只能声明变量的种类,无法给它赋值,所以要利用构造器来做赋值和初始化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值