美文网首页
006_类的定义和声明。

006_类的定义和声明。

作者: 立秋i | 来源:发表于2018-05-21 15:51 被阅读0次

namespace _006_类的定义和声明 {

    class Program {

        static void Main(string[] args) {

            //Vehicle car1 = new Vehicle();

            //car1.speed = 100;

            //car1.Run();

            //car1.Stop();

            //Console.WriteLine(car1.speed);

            //Vector3 v1 = new Vector3();

            //v1.x = 1;

            //v1.y = 1;

            ////v1.z = 1;

            //v1.SetX(1);

            //v1.SetY(1);

            //v1.SetZ(1);

            Vector3 v1 = new Vector3(1,1,1);

            //Console.WriteLine(v1.Length());

            //使用属性

            //v1.MyIntProperty = 600;//对属性设置值

            //int temp = v1.MyIntProperty;//对属性取值

            //Console.WriteLine(temp);

            //v1.X = 100;

            //Console.WriteLine(v1.X);

            v1.Name = "siki";

            Console.WriteLine(v1.Name);

            Console.ReadKey();

        }

    }

}

———————————————————————————————————————————————————————————————

namespace _006_类的定义和声明 {

    public class Vector3//设置为public 这样才别 的项目中才可以访问

    {

        //我们定义了一个构造函数,那么编译器不会为我们提供构造函数了

        public Vector3()

        {

            Console.WriteLine("Vector3的构造函数被调用了");

        }

        public Vector3(float x, float y, float z)

        {

            this.x = x;

            this.y = y;

            this.z = z;

            length = Length();

        }

        //编程规范上 习惯把所有的字段 设置为private ,只可以在类内部访问,不可以通过对象访问

        private float x, y, z, length;

        private int age;

        //private string name;

        //public String Name

        //{

        //    get { return name; }

        //    set { name = value; }

        //}

        public string Name { get; set; }//编译器会自动给我们提供一个字段,来存储name

        public int Age

        {

            set

            {

                //通过set方法 在设置值之前做一些校验的工作  属性的更多好处,需要在写代码过程中体会

                if (value >= 0)

                {

                    age = value;

                }

            }

        }

        public float X// 也可以叫做get set方法

        {

            get { return x; }

            set { x = value; }//如果在get 或者 set前面加上 private,表示这个块只能在类内部调用

        }

        //为字段提供set方法,来设置字段的值

        public void SetX(float x)

        {

            //如果我们直接在方法内部访问同名的变量的时候,优先访问最近 (形参)

            //我们可以通过this.表示访问的是类的字段或者方法

            this.x = x;

        }

        public void SetY(float y)

        {

            this.y = y;

        }

        public void SetZ(float z)

        {

            this.z = z;

        }

        public float Length() {

            return (float)Math.Sqrt(x * x + y * y + z * z);

        }

        //定义属性

        public int MyIntProperty {

            set {

                Console.WriteLine("属性中set块被调用");

                Console.WriteLine("在set块中访问value的值是:"+value);

            }

            //如果没有get块,就不能通过属性取值了

            get {

                Console.WriteLine("属性中的get块被调用 ");

                return 100;

            }

        }

    }

}

———————————————————————————————————————————————————————————————

namespace _006_类的定义和声明 {

    class Vehicle

    {

        public float speed;

        public float maxSpeed;

        public float weight;

        public void Run()

        {

            Console.WriteLine("这个车正在以"+speed+"m/s的速度前行");

        }

        public void Stop()

        {

            speed = 0;

            Console.WriteLine("车辆停止");

        }

    }

}

相关文章

  • 006_类的定义和声明。

    namespace _006_类的定义和声明 { class Program { static voi...

  • 006_变量的声明和赋值。

    namespace _006_变量的声明和赋值 { class Program { static vo...

  • 2018-03-08

    Java中定义类主要分为两部分:类的声明和类体,介绍如下: 1.类的声明 在类声明中,需要定义类的名称、对该类的访...

  • Objective-C 类和对象

    类定义 oc 中定义一个类会产生两个文件 .h 和 .m .h 文件放类的声明,包括成员变量、属性和方法声明(.h...

  • ES6中的class(初识)

    1.定义类 类,实际上是一个“特殊的函数”,就像你能定义函数表达式和函数声明一样,你也可以定义类表达式和类声明。 ...

  • Kotlin学习笔记(三)类与对象

    类 类的声明 类的定义:类通过class关键字来声明,类声明由类名、类头(指定其类型参数、主 构造函数等)和由大括...

  • OC学习之类和对象

    类 定义和C++一样,都需要类的声明和实现,而且头文件进行类声明,.m文件类的实现。类在@interface和@e...

  • 说说面对对象

    一 、什么是面向对象?二 、类和对象的区别?三 、类的声明定义语法操作?1 声明定义类型2 初始化类型属性3定义...

  • 代码组织方式

    以往自己写代码,都是将函数声明、类声明和定义等写到 .h文件,将函数定义、类实现等写到 .cpp 文件。最近发现很...

  • Kotlin面向对象编程

    1、类与对象 Kotlin中类的声明和Java类一样,都是用关键字class来声明类 Person类已经定义完成,...

网友评论

      本文标题:006_类的定义和声明。

      本文链接:https://www.haomeiwen.com/subject/izofjftx.html