.net技术----类和对象

类和对象

  • 前言
  • 面向对象概念
    • 继承——代码的重用
    • 多态性
    • 类(class)
    • 声明类的基本语法
    • 类的访问修饰符
    • 创建对象——以类为模板
    • 分部类
  • System.Object类和通用方法
    • 目的:
  • 对象的生命周期
  • 总结


前言

  • 面向对象的基本概念

  • 类的声明

  • 创建和使用对象

  • 分部类的概念和使用

  • System.Object类和通用方法

  • 对象的生命周期

面向对象概念

  • 对象(object)
  • 从概念层面讲,就是某种事物的抽象(功能)

.net技术----类和对象_第1张图片

  • 对象封装了数据和代码(数据和程序)

  • 封装

  • 是把客观事物抽象并封装成对象,即将数据成员、属性、方法和事件等集合在一个整体内

继承——代码的重用

是允许使用现有类的功能,并在无需重新改写原来的类的情况下,对这些功能进行扩展

被继承的类称为“基类”、“父类”或“超类”;通过继承创建的新类称为“子类”或“派生类”

与C++不同,C#语言一个子类只能有一个基类(单一继承),但允许实现多个接口

多态性

  • 是指同样的消息被不同类型的对象接收时导致完全不同的行为

  • 抽象类与接口

  • 图形绘制例子

类(class)

  • C#语言的核心

  • C#的一切类型都是类,所有的语句都必须位于类内

  • 类是一个数据结构,引用数据类型

  • 定义数据类型的数据(字段)和行为(方法和其他函数成员)

  • 对象是基于类的具体实体,有时称为类的实例(instance)

声明类的基本语法

[特性]
[类修饰符][partial] class 类名 [类型形参] [: 基类或接口[类型形参约束]]
{
类体
}[;]

public class Person
  {
	public String name; protected int age; //姓名(public)、年龄(protected)
                      public Person() 
                      {//不带参数的构造方法
	    this.name = "未知"; this.age = 0;
	}
	public Person(String name, int age)
                      { //带2个参数的构造方法
	    this.name = name; this.age = age;
	}
}

类的访问修饰符

用来控制所修饰成员的可访问域,实现数据和代码的隐藏

.net技术----类和对象_第2张图片

创建对象——以类为模板

类名 对象名 = new 类名([参数表]);

访问对象成员
类的对象使用“.” 运算符来引用类的成员

变量 = 对象名.成员变量;
对象名.方法 ([参数表]);

分部类

  • 分部类型(partial type)
  • 可以将类(以及结构和接口)划分为多个部分,存储在不同的源文件中,以便于开发和维护

.net技术----类和对象_第3张图片

  • 当类的源码十分庞大或需要不同程序员同时进行维护时
  • 当使用继承开发工具源代码生成器时,将计算机生成的类型部分和用户编写的类型部分互相分开,以便更容易地扩充工具生成的代码
// PartialTest.cs
public class PartialTest1
{
   protected string name; private int x;
   public void f1() { }
   public void f2() { }
   class Inner  
   {
       int y; int z;
   }
}
// PartialTest1_1.cs
public partial class PartialTest1
{
   protected string name;
   public void f1() { }
   partial class Inner  
   {
       int y;
   }
}
//PartialTest1_2.cs
public partial class PartialTest1
{
   private int x;
   public void f2() { }
   partial class Inner  
   {
       int z;
   }
}

.net技术----类和对象_第4张图片

System.Object类和通用方法

  • System.Object类型是C#编程语言的类层次结构的根类型

  • 所有的类型都隐含地最终派生于System.Object类

  • Object数据类型保存引用对象的地址,默认值为null

目的:

  • 可使用object引用绑定任何类型的对象
  • Object类型执行许多基本的一般用途方法:Equals(),GetHashCode(),GetType()和ToString()
    【例6.10】System.Object类示例

对象的生命周期

  • 三个阶段:对象的创建、对象的使用、对象的销毁

  • 创建对象后,可以访问对象的成员(即使用对象)

  • CLR使用垃圾回收器(GC)机制来销毁对象,大大减少程序员销毁对象的工作

总结

你可能感兴趣的:(.net,.net,c#,java)