c# - 为什么我不能更改子类中的字段,除非它在方法 C# 中
问题描述
嗨,这可能是一个非常基本的答案,但我在谷歌搜索时找不到它。
基本上我了解继承如何工作的基础知识,但是我无法理解我正在玩的一个小示例代码来练习继承,我只能在子类的父类中更改一个 int 集的值。此示例的 shapeSize 方法:
public class Shape
{
public int shapeSize = 1;
public virtual void Draw()
{
Console.WriteLine("Draw a shape");
ShowShapeSize();
}
private void ShowShapeSize()
{
Console.WriteLine(shapeSize);
}
}
public class Circle : Shape
{
//Can't change value here of shapeSize here??
public override void Draw()
{
shapeSize = 2;
base.Draw();
Console.WriteLine("Testing none override");
}
}
有人可以解释为什么我不能更改我发表评论的区域中的字段,但为什么我可以在方法中。
解决方案
推荐阅读
- python - Python 检测 csv 文件中的分隔符/分隔符
- python - 修改元组
- timer - 生成同步和中心对齐的 PWM 信号。STM32立方体
- java - 如何获得默认布局以根据设备分辨率使用不同的样式表?
- r - 执行此操作并找到训练错误和混淆矩阵的正确方法是什么?
- firebase - 在 Flutter/dart 中延迟加载 Firestore 异物
- javascript - 如何阅读 Jade Pug 中的对象?
- python - 为 replace() 创建泛化规则
- excel - 如何在同一张表中使用类似的潜艇?
- javascript - 在现有的 div 中创建新的 div