c#上班,上学,交通方式接口

cs 复制代码
using System;


namespace INTERFACE
{
    abstract class Person
    {
        public string Name { get; set; }
        public int Age { get; set; }

        public virtual void ShowInfo()
        {
            Console.WriteLine($"Name: {Name}, Age: {Age}");
        }
    }

    // 接口 IWork
    interface IWork
    {
        void GotoCompany();
    }

    // 接口 IStudy
    interface IStudy
    {
        void GotoSchool();
    }

    // 接口 ITransport
    interface ITransport
    {
        void Transport();
    }

    // Student 类
    class Student : Person, IStudy, ITransport
    {
        public string School { get; set; }

        public override void ShowInfo()
        {
            Console.WriteLine($"School: {School} Name: {Name}, Age: {Age}");
        }

        public void GotoSchool()
        {
            Console.WriteLine($"去{School}上学");
        }

        public void Transport()
        {
            Console.WriteLine("乘地铁去学校");
        }
    }


    class Engineer : Person, IWork, ITransport
    {
        public string Company { get; set; }

        public override void ShowInfo()
        {
            Console.WriteLine($"Name: {Name}, Age: {Age}");
            Console.WriteLine($"Company: {Company}");
        }

        public void GotoCompany()
        {
            Console.WriteLine($"去{Company}上班");
        }

        public void Transport()
        {
            Console.WriteLine("开车去公司");
        }
    }

    class Program
    {
        static void Main()
        {
            Student student = new Student { Name = "Alice", Age = 20, School = "南京工业职业技术大学" };
            student.ShowInfo();
            student.Transport();
            student.GotoSchool();

            Engineer engineer = new Engineer { Name = "Bob", Age = 30, Company = "华为" };
            engineer.ShowInfo();
            engineer.GotoCompany();
            engineer.Transport();
            Console.Read();
        }
    }
}
相关推荐
四维碎片3 小时前
【Qt】线程池与全局信号实现异步协作
开发语言·qt·ui·visual studio
IT码农-爱吃辣条4 小时前
Three.js 初级教程大全
开发语言·javascript·three.js
☺����4 小时前
实现自己的AI视频监控系统-第一章-视频拉流与解码2
开发语言·人工智能·python·音视频
染翰4 小时前
lua入门以及在Redis中的应用
开发语言·redis·lua
王者鳜錸5 小时前
PYTHON让繁琐的工作自动化-函数
开发语言·python·自动化
妮妮学代码5 小时前
c#:TCP服务端管理类
java·tcp/ip·c#
兔老大RabbitMQ5 小时前
git pull origin master失败
java·开发语言·git
tt5555555555555 小时前
C/C++嵌入式笔试核心考点精解
c语言·开发语言·c++
xiao助阵5 小时前
python实现梅尔频率倒谱系数(MFCC) 除了傅里叶变换和离散余弦变换
开发语言·python
科大饭桶6 小时前
C++入门自学Day14-- Stack和Queue的自实现(适配器)
c语言·开发语言·数据结构·c++·容器