深入类的方法

Posted 技术之路永无止境~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深入类的方法相关的知识,希望对你有一定的参考价值。

1.构造的概念:是类的一种方法名和类名相同,没有返回值类型,
并且主要完成对象的处始化工作
 
2.new SE() 三层含义:1.开辟空间 2.调用构造 3.创建对象 
 C#关键字扩充解释:

  1. new :

    开辟空间

    调用构造

    实例化对象

  2. this:

    当前类的实例,用来区分入参和成员变量

  3.  void  

    void修饰的方法表示返回值类型为空,并不代表没有返回值

二.构造函数

 特点:   1.方法名与类名相同

              2.没有返回值类型

     3.主要完成对象的初始化工作

无参构造:

  语法:  访问修饰符  类名(){  

                    //方法体

                 }

带参的函数构造

语法:访问修饰符  类名(参数列表){

               //方法体

}

优点  : 1.灵活性更好

      2.通过参数来动态控制对象的特征

隐私构造函数

    在没有手动编写构造时,系统会给我们自动生成一个无参构造. 

 

         系统为什么自动生成无参构造?
         为了给将来给高级框架,高级框架在底层可以通过无参构造给我们的
类创建对象
 
方法重载:
特点:

           1 .   方法名相同

     2. 方法参数类型不同或者参数个数不同

     3.在同一个类中                                            并且 方法名及参数列表相同的方法,仅是返回值类型不同,不能称为方法重载

            方法重载不仅能避免命名的麻烦,还能使调用者不必判断方法名就可直接调用

            示例代码:           

public void Say() { }
        public string Say(int age)
        { 
            return "1"; 
        }
 public void Eat(int age,string name) 
        {
 
        }
        public void Eat(string name, int age)
        {
 
        } 
对象交互:
1.在面向对象的世界里,万物皆对象。
2.对象与对象相互独立,互不干涉
3.每个类都有自己的特性和功能,我们把它们封装为属性和方法
4.对象之间通过属性和方法进行交互
5.可认为方法的参数和返回值都是对象间相互传递的消息
示例代码:
//遥控器
    public class Contol
    {
       
        public void Open(Tv tv)
        {
            tv.Open();
        }
        public void Close(Tv tv) 
        {
            tv.Close();
        }
        public void ChangeChannel(Tv tv,string channelName)
        {
            tv.ChangeChannel(channelName);
        }
    }
 

    /// <summary>
    /// 电视机
    /// </summary>
    public class Tv
    {
        //维护一个状态
        bool state = false;//关闭
        public void Open() 
        {
            if (state==false)//关闭的
            {
                state = true;//状态切换到开 机状态
                Console.WriteLine("电视机打开啦!!!!!~~~~~");
            }   
        }
        public void Close()
        {
            if (state == true)//开着的
            {
                state = false;//状态切换到关 机状态
                Console.WriteLine("电视机关闭啦!!!!!~~~~~");
            }
        }
        public void ChangeChannel(string channelName)
        {
            if (state==true)
            {
                Console.WriteLine("您已经成功切换到"+channelName);
            }
        }
    }
        static void Main(string[] args)
        {
            //01.买一个电视机
            Tv tv = new Tv();

            //02.买一个遥控器
            Contol control = new Contol();
            //03.进行操作
            control.Open(tv);
            control.ChangeChannel(tv, "凤凰卫视");
            control.Close(tv);

        }

以上是关于深入类的方法的主要内容,如果未能解决你的问题,请参考以下文章

深入类的方法

深入类的方法

深入类的方法。

深入类的方法

深入类的方法

深入类的方法