作者longrider (龙骑士2)
看板java
标题[问题] Object 的基本问题
时间Sun Jul 17 21:56:28 2011
大家好, 有一些基本的 Object 问题请教大家
希望大家别见笑
我在看 Java vs C# 的比较时
http://www.harding.edu/fmccown/java_csharp_comparison.html
看到几段 Code
---------Java
SuperHero hero = new SuperHero();
hero.setName("SpamMan");
hero.setPowerLevel(3);
hero.Defend("Laura Jones");
SuperHero.Rest(); // Calling static method
SuperHero hero2 = hero; // Both refer to same object
hero2.setName("WormWoman");
System.out.println(
hero.getName()); // Prints WormWoman
---------C#
SuperHero hero = new SuperHero();
hero.Name = "SpamMan";
hero.PowerLevel = 3;
hero.Defend("Laura Jones");
SuperHero.Rest(); // Calling static method
SuperHero hero2 = hero; // Both refer to same object
hero2.Name = "WormWoman";
Console.WriteLine(
hero.Name); // Prints WormWoman
---------
这个差异, 是因为 Java 不允许外部对 Object 里面变数的读写吗?
所以需要另外额外的 setName() 与 getName() 来负责读写动作.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.141.41.163
1F:→ dos792:public data不行吗? 07/17 22:13
2F:→ longrider:我在 VB 与 C++ 是可以用 public, 但 Java 不确定(不熟) 07/17 22:44
4F:→ qrtt1:没基础看这种东西是危险的。 07/18 00:16
5F:推 gozha:C#看起来是直接存取变数 其实是accessors 07/18 10:54