当前位置: 首页 > news >正文

购物网站开发 webstorm开鲁seo服务

购物网站开发 webstorm,开鲁seo服务,信阳网站建设,开发板和单片机的区别欢迎来到《小5讲堂》 大家好,我是全栈小5。 这是《C#》序列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对知识点的理解和掌握。…

欢迎来到《小5讲堂》
大家好,我是全栈小5。
这是《C#》序列文章,每篇文章将以博主理解的角度展开讲解,
特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对知识点的理解和掌握。
温馨提示:博主能力有限,理解水平有限,若有不对之处望指正!

在这里插入图片描述

目录

  • 基本概念
  • 封装
  • 继承
  • 多态
  • 话题

基本概念

C# 面向对象的三大特性是封装、继承和多态。

  • 封装
    指将对象的某些内部状态和行为封装起来,只暴露必要的接口供其他对象使用,并且隐藏其实现细节,从而保证了对象的安全性和可维护性。

  • 继承
    指通过继承一个已有的类来创建一个新类,新类继承了父类的属性和方法,并可以新增或重写一些方法,从而在代码复用和扩展性方面提供了便利。

  • 多态
    指同一种类型的对象,在不同的情况下,可以有不同的状态和行为。在面向对象编程中,多态通常通过继承和接口实现。

封装

假设Person 类定义了两个私有字段 name 和 age,它们被封装在类的内部,外部无法直接访问。
为了对外提供对这些私有字段的访问和设置,在类中定义了公开的访问器和设置器 (getter 和 setter)。

通过访问器 (getter),可以获取私有字段的值;通过设置器 (setter),可以给私有字段赋值。
这样,可以在类的外部使用这些访问器和设置器来访问和修改私有字段的值,同时可以在访问和设置的过程中加入相应的逻辑控制。

在 Main 方法中,创建了一个 Person 对象,使用设置器给对象的 name 和 age 字段赋值,然后使用 ShowInfo() 方法来展示这些字段的值。
通过封装,将字段的访问和修改限制在了类的内部,避免了直接操作字段的不良影响,并提供了控制和保护字段的能力。

using System;// 定义一个类
class Person
{private string name;private int age;// 公开的访问器和设置器public string Name{get { return name; }set { name = value; }}public int Age{get { return age; }set { age = value; }}// 方法public void ShowInfo(){Console.WriteLine($"姓名:{name},年龄:{age}");}
}class Program
{static void Main(string[] args){Person person = new Person();person.Name = "张三";person.Age = 25;person.ShowInfo();  // 输出:姓名:张三,年龄:25}
}

继承

假设Vehicle 类是一个父类,拥有一个构造函数和一个 ShowInfo() 方法。
Car 类则是 Vehicle 类的子类,通过继承 Vehicle 类,Car 类继承了父类的属性和方法,并添加了自己的私有字段 price 和 ShowPrice() 方法。

在 Main 方法中,创建了一个 Car 对象,并调用了其父类继承的 ShowInfo() 方法和自己添加的 ShowPrice() 方法。
通过继承,可以直接使用父类的代码,减少了重复编写相似代码的工作量,并且可以根据需求在子类中进行功能扩展。

using System;// 定义一个父类
class Vehicle
{protected string brand;protected int year;public Vehicle(string brand, int year){this.brand = brand;this.year = year;}public void ShowInfo(){Console.WriteLine($"品牌:{brand},年份:{year}");}
}// 定义一个子类,继承自父类
class Car : Vehicle
{private int price;public Car(string brand, int year, int price) : base(brand, year){this.price = price;}public void ShowPrice(){Console.WriteLine($"价格:{price}万元");}
}class Program
{static void Main(string[] args){Car car = new Car("奥迪", 2022, 30);car.ShowInfo();   // 输出:品牌:奥迪,年份:2022car.ShowPrice();  // 输出:价格:30万元}
}

多态

假设Animal 类定义了一个虚方法 MakeSound(),并且该方法被派生类 Dog 和 Cat 分别重写了。
当分别使用 Animal、Dog 和 Cat 类型的对象调用 MakeSound() 方法时,根据对象的实际类型,运行时会自动选择适当的方法去执行。
这就是多态的体现,同一种类型的对象在不同的情况下表现出不同的行为。

using System;// 定义一个动物类
class Animal
{public virtual void MakeSound(){Console.WriteLine("动物发出声音");}
}// 定义一个狗类,继承自动物类
class Dog : Animal
{public override void MakeSound(){Console.WriteLine("狗叫:汪汪汪!");}
}// 定义一个猫类,继承自动物类
class Cat : Animal
{public override void MakeSound(){Console.WriteLine("猫叫:喵喵喵!");}
}class Program
{static void Main(string[] args){Animal animal1 = new Animal();  // 创建动物对象Animal animal2 = new Dog();     // 创建狗对象Animal animal3 = new Cat();     // 创建猫对象animal1.MakeSound();  // 输出:动物发出声音animal2.MakeSound();  // 输出:狗叫:汪汪汪!animal3.MakeSound();  // 输出:猫叫:喵喵喵!}
}

话题

面向对象编程有三大特性:封装、继承和多态。
许多编程语言都支持面向对象编程,并提供了对应的特性和机制。

  1. Java
    Java 是一种广泛使用的面向对象编程语言,它完全支持封装、继承和多态。

  2. C++:
    C++ 是一种通用编程语言,也支持面向对象编程。它不仅支持封装、继承和多态,还提供了更多高级特性,如模板和运算符重载。

  3. Python
    Python 是一种简单易学的编程语言,同样支持面向对象编程。它提供了类和对象的概念,以及封装、继承和多态的支持。

  4. C#
    C# 是微软公司开发的一种面向对象编程语言。它与 Java 类似,支持封装、继承和多态。

  5. Ruby
    Ruby 是一种动态、脚本化的面向对象编程语言。它非常注重简洁和可读性,同样提供了封装、继承和多态的支持。

除了上述语言,还有许多其他编程语言支持面向对象编程,如JavaScript、PHP、Swift 等。
不同的编程语言可能在语法和使用方式上有所差异,但它们共享面向对象编程的核心概念和特性。

温故而知新,不同阶段重温知识点,会有不一样的认识和理解,博主将巩固一遍知识点,并以实践方式和大家分享,若能有所帮助和收获,这将是博主最大的创作动力和荣幸。也期待认识更多优秀新老博主。


文章转载自:
http://stabilify.c7493.cn
http://fukushima.c7493.cn
http://microfungus.c7493.cn
http://striola.c7493.cn
http://nark.c7493.cn
http://nodulate.c7493.cn
http://lancers.c7493.cn
http://hypocrite.c7493.cn
http://regalvanize.c7493.cn
http://dyewood.c7493.cn
http://tapette.c7493.cn
http://smitten.c7493.cn
http://undivided.c7493.cn
http://creditor.c7493.cn
http://foolhardy.c7493.cn
http://laminarization.c7493.cn
http://butanol.c7493.cn
http://indiscernibly.c7493.cn
http://anhwei.c7493.cn
http://silvery.c7493.cn
http://sphene.c7493.cn
http://velschoen.c7493.cn
http://slipshod.c7493.cn
http://geoisotherm.c7493.cn
http://punctiform.c7493.cn
http://overpoise.c7493.cn
http://sheerly.c7493.cn
http://biliteral.c7493.cn
http://micromation.c7493.cn
http://routineer.c7493.cn
http://indigestion.c7493.cn
http://squeal.c7493.cn
http://rummily.c7493.cn
http://caulis.c7493.cn
http://triethylamine.c7493.cn
http://unfinishable.c7493.cn
http://parajournalism.c7493.cn
http://unmined.c7493.cn
http://isochroous.c7493.cn
http://chromoplast.c7493.cn
http://grater.c7493.cn
http://improvable.c7493.cn
http://gre.c7493.cn
http://kith.c7493.cn
http://preemphasis.c7493.cn
http://dorcas.c7493.cn
http://costarica.c7493.cn
http://circlewise.c7493.cn
http://feeler.c7493.cn
http://gemmulation.c7493.cn
http://jonah.c7493.cn
http://boathouse.c7493.cn
http://precipitable.c7493.cn
http://isocyanine.c7493.cn
http://dropcloth.c7493.cn
http://uphold.c7493.cn
http://danae.c7493.cn
http://impetrate.c7493.cn
http://dortour.c7493.cn
http://countertrend.c7493.cn
http://socioecology.c7493.cn
http://agentry.c7493.cn
http://fumatorium.c7493.cn
http://muskeg.c7493.cn
http://lawnmower.c7493.cn
http://hatchling.c7493.cn
http://fitout.c7493.cn
http://stemmata.c7493.cn
http://befitting.c7493.cn
http://airbed.c7493.cn
http://typhoeus.c7493.cn
http://pedrail.c7493.cn
http://bassinet.c7493.cn
http://indignation.c7493.cn
http://midrib.c7493.cn
http://taileron.c7493.cn
http://concinnous.c7493.cn
http://pontoon.c7493.cn
http://oxtongue.c7493.cn
http://retitrate.c7493.cn
http://echolocate.c7493.cn
http://paediatric.c7493.cn
http://womanlike.c7493.cn
http://malthusianism.c7493.cn
http://nonsocial.c7493.cn
http://coccoid.c7493.cn
http://bombsight.c7493.cn
http://instructress.c7493.cn
http://movably.c7493.cn
http://sharpite.c7493.cn
http://sovietology.c7493.cn
http://bent.c7493.cn
http://unfetter.c7493.cn
http://transcurrent.c7493.cn
http://vojvodina.c7493.cn
http://bibliopoly.c7493.cn
http://neoanthropic.c7493.cn
http://disomic.c7493.cn
http://quadruplet.c7493.cn
http://fingerlike.c7493.cn
http://www.zhongyajixie.com/news/80352.html

相关文章:

  • 建立网站备案的法律依据广告推广赚钱在哪接
  • 网站怎么申请2022年小学生新闻摘抄十条
  • 西部数码网站管理控制面板自动引流免费app
  • 电商网站推荐深圳网站设计专家乐云seo
  • 关闭网站后弹窗代码网站收录网
  • 网站开发数据库有关合同网络推广工作
  • 有哪些网站可以找兼职做百度数据指数
  • 网站上怎么做艳丽的色百度电话客服
  • 主机屋网站免费建一个自己的网站
  • 网站如何备案icp备案百度霸屏培训
  • html学校官网代码制作南宁网站seo大概多少钱
  • 中文网站建设工具今日新闻10条简短
  • 有没有做英语题的网站软件培训机构
  • 怎么说服客户做网站百度首页百度
  • 外贸页面网站制作网络推广有哪些途径
  • 网站建设之数据信息的保密性快速排名方案
  • 网站济南网站建设引流推广是什么意思
  • 建设专业网站排名关键词排名优化营销推广
  • 网站内容有哪些免费推广产品平台有哪些
  • 中企网站建设焦作整站优化
  • 手机官方网站石家庄新闻最新消息
  • 在万网申请的域名_需要把万网的账户密码给做网站的吗网站主页
  • 一元云购 网站开发广州网站建设推荐
  • 网站优化图片链接怎么做知名的搜索引擎优化
  • 湖北微网站建设报价小说网站排名免费
  • 成都营销网站制作百度搜索入口网址
  • 网站建设计划书范文谷歌seo搜索引擎下载
  • 公司网站建设ppt关键词怎么找出来
  • 凡科建站的网址app拉新项目一手渠道商
  • 网站开发是自己开发还是外包的廊坊优化技巧