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;
            }
        }
  • 相关阅读:
    Web.xml配置详解
    JAVA的StringBuffer类
    工作空间造成的javaweb项目无法新建
    典型程序实现代码汇总(1)
    TCP/UDP常见端口参考
    HTTP状态码详解
    struts2的java.lang.NoSuchMethodException异常处理
    python学习之路-6 冒泡算法、递归、反射、os/sys模块详解
    python学习之路-5 基础进阶篇
    python学习之路-4 内置函数和装饰器
  • 原文地址:https://www.cnblogs.com/ZkbFighting/p/7590861.html
Copyright © 2011-2022 走看看