c#面向对象(一)

先要了解对象的概念

对象

  1. 对象可以是现实世界中的任何一个事物,比如说书桌,计算机等。

  1. 在想,对象是有什么组成的呢。属性,方法。

  1. 也可以说分为静态和动态部分

  1. 静态:就是自身所具有的属性

  1. 动态:具备静态属性后有哪些行为/方法就称为动态部分

实例


类的概念

  1. 类是同一事物的统称,比如说:鸟类

  1. 在想对象就是一个事物对应的实体

  1. 类是封装对象的属性和行为的载体,也可以说,具有相同属性和行为的一类实体称为类。

  1. 面对问题时,先需要实例化,在拿(对象:这只大雁)去解决需求

  1. 在说,对象的行为是以方法的形式定义的,对象的属性是以成员变量的形式定义的

  1. 类包括对象的属性和方法

  1. 一个对象是类的一个实例

类的使用

类包含什么

类是一种数据结构,包含数据成员(常量和变量),函数成员(方法,属性,构造函数和析构函数)和嵌套函数

类的成员

包含

字段,属性,方法,构造函数

字段
概念

也就是程序开发过程中的常量和变量

实例
//求圆的面积
    static double r;
        const double PI = 3.14;//常量
        static void Main(string[] args)
        {
            Console.WriteLine("亲输入半径");
            Program.r=Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("面积为:" + PI * Math.Pow(r, 2));//Math.Pow方法返回指定某个数的指定次幂
            Console.ReadKey();
        }
属性
声明和概念
(权限修饰符) (类型)(属性名){
get{get访问器}
set{set访问器}
}
属性的概念:属性是对现实实体特征的抽象,提供对类或对象的访问
修饰符:指定属性的访问级别
类型:属性的类型
属性名:和变量的命名规则一样,首字母大写
get访问器:相当于一个具有属性类型返回值的无参数方法,return
set访问器:相当于一个具有单个属性类型值参数和void返回类型的方法,value
练习
  private int age;//字段
        public int Age//属性
        {
            get {// get访问器
            return age;
            }
            set { 
                if(value > 0 &&value<70)
                {
                    age = value;
                }
                else {
                    Console.WriteLine("输入的不合理");
                }
            }
        }
        static void Main(string[] args)
        {
            Program pro = new Program();
            while(true) {
                Console.WriteLine("输入年龄");
                pro.Age = Convert.ToInt32(Console.ReadLine());
            }
构造函数
特征
  1. 构造函数没有返回值

  1. 构造函数的名称与本类的名称相同

练习
//定义类的时候,定义了有参数的构造函数,这时如果还想要使用默认构造函数,就需要进行显式定义。
  static Program()
        {
            Console.WriteLine("static");//一次调用
        }
        private Program()
        {
            Console.WriteLine("实例构造函数");//每次调用
        }
        static void Main(string[] args)
        {
            Program p1 = new Program();
            Program p2 = new Program();
            Console.ReadLine();
        }

析构函数
概念

析构函数主要用来释放对象资源,当某个类的实例被认为是不在有效的,就符合析构条件,.net类库就会自动调用析构函数

~Program()
{

}
总结

构造函数和析构函数是比较特殊的两个成员函数,用来对象进行初始化和释放对象资源,对象的声明周期从构造函数开始,析构函数结束

权限修饰符

三大特征

  1. 封装

也就是将对象的属性和方法封装起来,载体是类。类对客户隐藏其实现的一些细节,这也就是封装的思想。

封装的优点

保证了类内部的数据结构的完整性,确保用户不能看到类的数据结构,只能看到允许公开的数据。

  1. 继承

实例

解释

  • 以矩形为例子,矩形有四边形的一些属性和方法,也有矩形自身所特有的一些属性和方法

  • 也可以说,继承是实现重复利用的一种方式,子类通过继承父类的属性和方法的同时,又添加了子类特有的属性和方法

  1. 多态

概念

  • 将父类对象应用于子类的特征就是多态

  • 也可以说,子类继承父类特征的同时,也具备自己的特征,并且能够实现不同的效果,这也就多态化的结构

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值