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();
        }
    }
}
相关推荐
Bruce_Liuxiaowei13 分钟前
PHP文件包含漏洞详解:原理、利用与防御
开发语言·网络安全·php·文件包含
泽020222 分钟前
C++之STL--list
开发语言·c++·list
YGGP26 分钟前
吃透 Golang 基础:数据结构之 Map
开发语言·数据结构·golang
~plus~28 分钟前
Harmony核心:动态方法修补与.NET游戏Mod开发
开发语言·jvm·经验分享·后端·程序人生·c#
步、步、为营34 分钟前
.NET 事件模式举例介绍
java·开发语言·.net
htj1036 分钟前
C# 使用正则表达式
正则表达式·c#
~plus~37 分钟前
WPF八大法则:告别模态窗口卡顿
开发语言·经验分享·后端·程序人生·c#
就是有点傻1 小时前
使用WPF的Microsoft.Xaml.Behaviors.Wpf中通用 UI 元素事件
c#
march of Time1 小时前
go工具库:hertz api框架 hertz client的使用
开发语言·golang·iphone
24K纯学渣1 小时前
Python编码格式化之PEP8编码规范
开发语言·ide·python·pycharm