首页 > 其他分享 >C # 面对对象(2)

C # 面对对象(2)

时间:2024-03-19 22:31:25浏览次数:16  
标签:Console 对象 money 面对 public Birthday DateTime Teacher

C# 是一种支持面向对象编程(OOP)的语言,它提供了类、对象、继承、封装、多态等核心概念。

  1. 封装:通过属性和方法,我们可以隐藏对象的内部状态和实现细节,只暴露必要的接口给外部使用。这提高了代码的安全性和可维护性。

  2. 继承:子类可以继承父类的属性和方法,从而重用已有的代码。通过继承,我们可以构建层次化的类结构,实现代码复用和扩展。

  3. 多态:通过虚方法、抽象方法和接口等机制,我们可以在运行时确定对象的行为。这使得代码更加灵活和可扩展。

  4. 易于理解和维护:面向对象编程将复杂的系统分解为更小、更易于管理的部分(即对象),这使得代码更易于理解和维护。

using System;

namespace unit9._1;
public class Teacher
{
    public string Name { get; set; }

//公共属性Birthday,用于存储教师的生日,只读,只能在构造函数中设置 
        public DateTime Birthday { get;private set; }

    public int Age 
    {
// 公共属性Age,用于存储教师的年龄,只读,通过计算当前年份与生日年份的差值得到 
        get { return DateTime.Now.Year - Birthday.Year; }
    }
    
    private int _money;
    public int Money
    {
        get { return _money;}
        set { _money = value; }
    }
        public void Intro()
    {
        Console.WriteLine($"老师姓名:{Name}");  
        Console.WriteLine($"生日是:{Birthday}");  
        Console.WriteLine($"年龄是:{Age}");    
        Console.WriteLine($"Money: {Money}");
    }
    }
// 构造函数,用于创建Teacher对象并初始化其属性 
    public Teacher(string name,DateTime birthday,int money)
       {
          this.Name = name;
         this.Birthday = birthday;
          this.Money = money;
    }
}
}
using System;


namespace unit9._1
{
    class Program
    {
        static void Main(string[] args)
        {        
            Teacher teacher = new Teacher("清雨", new DateTime(1990, 9, 1), 10000);
            teacher.Intro();
        }
    }
}
    
    

 

标签:Console,对象,money,面对,public,Birthday,DateTime,Teacher
From: https://blog.csdn.net/m0_56643625/article/details/136857183

相关文章

  • Python面向对象编程之多态你学会了吗?
    在Python面向对象编程中,多态是一个非常重要的概念。多态意味着一个接口可以有多种实现方式,或者说一个接口可以被多种对象所实现。这在编程中非常重要,因为它可以帮助我们编写更加灵活和可扩展的代码。想象一下,如果你有一个函数,它需要处理不同的对象,但是这些对象都实现了同一......
  • Python面向对象编程之多继承,你真的懂了吗?
    hi,大家好!今天我们来聊聊Python面向对象编程中的一个重要概念——多继承!如果你还没搞清楚这个概念,那就赶紧跟着我一起学习吧!首先,我们来了解一下什么是继承。在面向对象编程中,继承是一个让子类可以继承父类的属性和方法的机制。这样,我们就可以避免重复编写相同的代码,并且让代......
  • Java基础 --- 面向对象综合训练
    面向对象综合训练案例一:文字版格斗游戏格斗游戏,每个游戏角色的姓名,血量,都不相同,在选定人物的时候(new对象的时候),这些信息就应该被确定下来。补充:publicclassTest{publicstaticvoidmain(String[]args){//两部分参数//第一部分参数:要输出的内容%......
  • C++高级面试题:解释 C++ 中的函数对象适配器
    解释C++中的函数对象适配器函数对象适配器是C++中的一种编程技术,用于修改或增强现有的函数对象的行为。它们通常通过组合或包装现有的函数对象来实现所需的功能。函数对象适配器允许我们在不修改原始函数对象的情况下,对其进行修改或扩展。这样可以实现代码的重用和可......
  • GEE高阶案例——利用eemont进行ee.Number对象类的运算(加减成熟运算公式)
    本教程的主要目的是利用eemont包对数字对象进行分析 代码!pipinstalleemont!pipinstallgeemapimportee,eemont,geemapimportgeemap.colormapsascm进行EE验证 验证并初始化地球引擎和地球地图。 Map=geemap.Map()让我们定义一些ee.Number对象作为近......
  • Java 学习笔记:面向对象
    目录Java学习笔记:面向对象什么是面向对象面向过程和面向对象创建与初始化对象回顾方法类与对象的关系构造方法(构造器)创建构造器内存分析封装、继承方法重载super关键字多态instanceof关键字static抽象类接口内部类Java学习笔记:面向对象2024/3/19狂神学Java:学习链接什么是面......
  • 创建与初始化对象
    使用new关键字创建对象创建时除了分配内存空间外,还会给创建好的对象进行默认的初始化以及类中构造的调用构造器构造器也称为构造方法,是进行创建对象的时候必须要调用的特点:1.必须和类的名字相同2.必须没有返回值,也不能写void作用:1.new本质是在调用构造方法2.初始化对象的......
  • 面对 Nvidia 的主导地位:非大型科技公司的敏捷机器学习开发策略(在供应和成本挑战中)
    在真正的大玩家中建立游戏业务从来都不是一件容易的事。2023年,在真正令人费解的突破的推动下,人工智能领域的竞争达到了前所未有的高度。OpenAI的发布GPT-4,整合与Bing聊天GPT,谷歌推出诗人,以及Meta备受争议的“开源”骆驼2发布。听起来像是一长串大人物的名......
  • Python面向对象——架构设计【2】
     练习1:打电话请使用面向对象思想描述下列情景:  小明使用手机打电话,还有可能使用座机....classPeople:def__init__(self,name):self.name=namedefcall_up(self,tool):print(self.name,end="")tool.call()cla......
  • 自动化测试框架、Python面向对象以及POM设计模型简介
    1 自动化测试框架概述   所谓的框架其实就是一个解决问题的思维,前言中描述的诸多问题如果得到解决,自然而然这种得到良好解决的东西它就可以称之为一个框架,只是这个框架用来解决如何组织开展自动化测试。一个典型的自动化测试框架一般包括测试用例集模块、测试执行控制模块......