一道基础题 考考你们 要说出原因

橙色阳光 2018-05-11 02:08:41
public class Test
{
string name="Tom";
public Test(string name)
{
name=name;
}
public static void main(String [] args){
Test t = new Test("Jack");
Console.WriteLine(t.name);
}
}
...全文
232 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
维秀斯丢丢 2018-05-11
  • 打赏
  • 举报
回复
这有什么好考的,不知道的人都会看绿色部分。
橙色阳光 2018-05-11
  • 打赏
  • 举报
回复
引用 12 楼 twotuli_software 的回复:
[quote=引用 9 楼 bbjiabcd 的回复:] “public static void main(String [] args){” 这是Java的Main方法。C#的Main方法,M应该大写,而且没有public
你讲过java有Console.WriteLine吗[/quote] 哈哈哈 考倒一大片 话说 还是我出题不严禁哈; 第一个点确实有问题 C# Main 确实要大写 如果不大写 就报错 会报

错误	2	程序“c:\Users\...”不包含适合于入口点的静态“Main”方法	
那这道题就因为是报错了。 如果忽略我的问题即 Main 是大写了。那么正确答案是Tom 因为 一楼正解哈 方法的入参如果和类的成员字段(属性)同名,不加this的调用都是指入参。 [quote=引用 1 楼 wddw1986 的回复:] Tom 什么原因? name=name; 方法的入参如果和类的成员字段(属性)同名,不加this的调用都是指入参。
  • 打赏
  • 举报
回复
会变绿。。。
维秀斯丢丢 2018-05-11
  • 打赏
  • 举报
回复
引用 9 楼 bbjiabcd 的回复:
“public static void main(String [] args){” 这是Java的Main方法。C#的Main方法,M应该大写,而且没有public
你讲过java有Console.WriteLine吗
bbjiabcd 2018-05-11
  • 打赏
  • 举报
回复
“public static void main(String [] args){” 这是Java的Main方法。C#的Main方法,M应该大写,而且没有public
xuzuning 2018-05-11
  • 打赏
  • 举报
回复
Test.name”不可访问,因为它受保护级别限制
引用 6 楼 wddw1986 的回复:
编译报错吗?实际应该不报错吧,报什么错?
bbjiabcd 2018-05-11
  • 打赏
  • 举报
回复
呵呵,这是在考还是在问?呵呵,Java程序代码,放到C#板块提问,我也是醉了
exception92 2018-05-11
  • 打赏
  • 举报
回复
name=name; -》这就是语法声明的问题,这种写法完全让编译器不知道等号的左边到底是全局变量name还是 参数name。
zhuzhenhua_vip 2018-05-11
  • 打赏
  • 举报
回复
这种写法是不可取的,不能对同一变量进行赋值,而且类中定义的name属性默认是private,在其他地方是访问不到的。
csdnFUCKINGSUCKS 2018-05-11
  • 打赏
  • 举报
回复
t.name无法访问 应为访问级别的关系 如果重点在构造函数里的话 没加this修饰即对同一变量赋值 跟Test类的name字段无关 所以输出是Tom
cheng2005 2018-05-11
  • 打赏
  • 举报
回复
引用 2 楼 xuzuning 的回复:
报错,无法通过编译
引用 4 楼 ducker3590 的回复:
t.name无法访问 应为访问级别的关系 如果重点在构造函数里的话 没加this修饰即对同一变量赋值 跟Test类的name字段无关 所以输出是Tom
编译报错吗?实际应该不报错吧,报什么错?
xuzuning 2018-05-11
  • 打赏
  • 举报
回复
报错,无法通过编译
正怒月神 2018-05-11
  • 打赏
  • 举报
回复
没什么基础的啊。。。正如1楼所说。 如果不适用this,那就只是给参数在赋值,而不是你的字段
cheng2005 2018-05-11
  • 打赏
  • 举报
回复
Tom 什么原因? name=name; 方法的入参如果和类的成员字段(属性)同名,不加this的调用都是指入参。

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧