You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#定义两类实现指定字符串输出,现有代码无法运行求修正方案

正确实现方案

先明确你现有代码的核心问题:

  • 类A的Console.WriteLine参数不完整,第二个占位符没有对应变量
  • 类B的ex2方法仅定义了字符串变量,既无返回值也无输出逻辑,且从未被调用
  • 未按需求让两个类分别提供对应字符串的方法,也没处理首字母大写的要求

实现思路

让两个类分别提供返回对应字符串的方法(便于拼接成单行输出),在入口方法中调用这两个方法,获取字符串后拼接输出,同时修正首字母大写和字符串内容的问题。

实例方法实现(需实例化对象)

using System;

// 第一个类,提供获取"C sharp"的方法
class CSharpClass
{
    public string GetCSharpString()
    {
        return "C sharp";
    }
}

// 第二个类,提供获取"programming"的方法
class ProgrammingClass
{
    public string GetProgrammingString()
    {
        return "programming";
    }
}

// 入口类
class Program
{
    public static void Main()
    {
        // 实例化两个类的对象
        CSharpClass cSharpObj = new CSharpClass();
        ProgrammingClass programmingObj = new ProgrammingClass();
        
        // 拼接字符串并单行输出
        Console.WriteLine($"{cSharpObj.GetCSharpString()} {programmingObj.GetProgrammingString()}");
    }
}

静态方法实现(无需实例化)

如果不需要创建对象,可以用静态方法简化实现:

using System;

class CSharpClass
{
    public static string GetCSharpString()
    {
        return "C sharp";
    }
}

class ProgrammingClass
{
    public static string GetProgrammingString()
    {
        return "programming";
    }
}

class Program
{
    public static void Main()
    {
        // 直接调用静态方法获取字符串并输出
        Console.WriteLine($"{CSharpClass.GetCSharpString()} {ProgrammingClass.GetProgrammingString()}");
    }
}

代码说明

  • 两个类各自承担单一职责:一个负责提供"C sharp"字符串,另一个负责提供"programming"字符串
  • 入口方法Main中通过实例化对象(或直接调用静态方法)获取字符串,用字符串插值语法拼接成单行输出
  • 修正了原代码中字符串内容错误(原B类用了"program"而非需求的"programming")以及首字母大写的问题

内容的提问来源于stack exchange,提问作者Nanda kumar Baskar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 05:34:55