zoukankan      html  css  js  c++  java
  • 接口与类/结构

    接口: 

    接口不能被实例化,接口可以继承接口
    接口里的方法都是抽象的,没有方法体;
    接口可以包含事件、索引器、方法和属性
    Interface IA
    {
       string color {set;get;}
       void Add();
       string this[int ,index]{set;get;}
       event TestDelegate TestEvent
    }
    

    类:

    一个类可以实现多个接口 

    抽象类和接口都不能被实例化 

    1.Class可以被实例化,属于引用类型,分配在内存的堆(先进后出,属性)上,Struct属于值类型,分配在内存的栈(先进先出,地址)
    2.值类型转换成引用类型的时候,叫装箱;引用类型转换成值类型叫拆箱;
    (引用类型分配在堆中,因此两个对象指向同一个地址,修改值会该变原来的值)(值类型在栈中,赋值等于全部赋值到P2栈空间,保存的只是引用)
    3.结构的成员不能赋初值,类可以,结构不能实例化
    4.结构不能继承,但可以实现接口,类都可以
    5.结构可以定义带参的的结构函数,负责初始化所用的成员字段

    struct属于值类型,可以不用new,如果不new,结构体内的值就都是未赋值状态,
    需要在使用之前赋值,不然编译器会报错。若new了,结构体会调用无参构造函数,
    会初始化内部的值,比如int就会初始化为0
    namespace 结构
    {
        public struct Person
        {
            public string _name; //字段 一定要注意细节就是前面的下划线,用于与变量的区别
            public int _age;
            public Gender _Gender;
        }
        public struct MyColor
        {
            public int _red;
            public int _green;
            public int _blue;
        }
        public enum Gender
        {
            男, 女
        }
        class Program
        {
            static void Main(string[] args)
            {
                Person Person;
                Person._name = "张三";
                Person._age = 18;
                Person._Gender = Gender.男;
                Person P;
                P._name = "大黄";
                P._age = 12;
                P._Gender = Gender.女;
                Console.WriteLine("我叫{0}, 我今年 {1}岁了,我是{2}孩子", Person._name, Person._age, Person._Gender);
                Console.WriteLine("我叫{0}, 我今年 {1}岁了,我是{2}孩子", P._name, P._age, P._Gender);
                Console.ReadKey();
                // MyColor mycolor;
            }
        }
  • 相关阅读:
    Math类的用法
    c#中和java中可变参数对比
    c#中泛型集合directory和java中map集合对比
    C#调用短信接口(通过简单的工厂模式整合多个短信平台)
    C#用网易邮箱发送邮件(同步异步)
    新浪云-PHP实现上传原图,缩略图
    PHP 继承,组合,单模式,GUID,等混合实例
    ASP.Net MVC @Html类
    ASP.net MVC 无法初始化 ASP.NET Simple Membership 数据库
    PHP 单列模式实例讲解以及参考网址
  • 原文地址:https://www.cnblogs.com/ZkbFighting/p/7590861.html
Copyright © 2011-2022 走看看