不知道如何定义方法,如何使用方法。特别是定义一个方法,调用该函数时以特定格式输出这个很蒙逼。
谢谢!!
C#控制台程序,面向对象的问题请看图片
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- threenewbee 2018-12-14 11:43关注
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Reflection; namespace Q717058 { class Point { private double X { get; set; } private double Y { get; set; } private double Z { get; set; } private double T { get; set; } public Point(double x, double y, double z, double t) { X = x; Y = y; Z = z; T = t; } public static implicit operator Point(string s) { double[] d = s.Split(' ').Select(x => double.Parse(x)).ToArray(); return new Point(d[0], d[1], d[2], d[3]); } public override string ToString() { return string.Format("({0},{1},{2},{3})", X, Y, Z, T); } public void Print() { Console.WriteLine(this); } public double Distance(Point p) { return Math.Sqrt(new double[] { X - p.X, Y - p.Y, Z - p.Z, T - p.T } .Select(x => x * x) .Sum()); } public void Move(char c, double n) { var prop = GetType().GetProperty(c.ToString().ToUpper(), BindingFlags.NonPublic | BindingFlags.Instance); if (prop != null) prop.SetValue(this, (double)prop.GetValue(this, null) + n, null); } } class Program { static void Main(string[] args) { Point p1 = (Point)Console.ReadLine(); Point p2 = (Point)Console.ReadLine(); string l3 = Console.ReadLine(); p1.Move(l3[0], double.Parse(l3.Split(' ')[1])); p1.Print(); Console.WriteLine("Distance={0}", p1.Distance(p2)); } } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 乌班图ip地址配置及远程SSH
- ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
- ¥15 PSPICE制作一个加法器
- ¥15 javaweb项目无法正常跳转
- ¥15 VMBox虚拟机无法访问
- ¥15 skd显示找不到头文件
- ¥15 机器视觉中图片中长度与真实长度的关系
- ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
- ¥15 java 的protected权限 ,问题在注释里
- ¥15 这个是哪里有问题啊?