//与java不同,c#不允许使用对象实例调用静态方法,让我惊讶啊!! //c++可不这样 using System;using System.Collections.Generic;using System.Text; namespace __5{ //class Program //{ // static void Main(string[] args) // { // } //} abstract public class person { string name; string ssn; int age; float salary; public person(string name, string ssn, int age, float sal) { this.name = name; this.ssn = ssn; this.age = age; this.salary = sal; } private string getssn() //?? { return ssn; } protected int getage() { return age; } internal float getsalary() { return salary; } string getname() { return name; } protected static string getbloodcolor() //静态方法 { return "red"; } static int getnumberofeyes() { return 2; } public override string ToString() { return name; } public override int GetHashCode() { //return base.GetHashCode(); return 12222; } public sealed override bool Equals(object obj) { //return base.Equals(obj); person p = obj as person; if (p == null) return false; return this.name.Equals(p.getname()); } public virtual void calcinvestments() { Console.WriteLine("person funds"); } public virtual void calcdebt() { Console.WriteLine("person debt"); } public abstract void work(); } public class man : person { public man(string name, string ssn, int age, float sal) : base(name, ssn, age, sal) { } public override void work() { Console.WriteLine("works like a dog"); } public override void calcinvestments() { //base.calcinvestments(); Console.WriteLine("man funds"); } public new void calcdebt() { Console.WriteLine("man debt"); } public static void Main(string[] agrs) { man m = new man("jack","12345678",23,40000f); //Console.WriteLine(m.getbloodcolor()); //与java不同,c#不允许使用对象实例调用静态方法 //Console.WriteLine(m.getnumberofeyes()); //无访问权限 //Console.WriteLine(m.getssn()); //Console.WriteLine(m.getname()); Console.WriteLine(m.getsalary()); Console.WriteLine(m.getage()); m.calcinvestments(); person p = m as person; p.calcinvestments(); Console.WriteLine("----"); ((person)m).calcinvestments(); m.calcdebt(); p.calcdebt(); Console.WriteLine("----"); ((person)m).calcdebt(); } }}

评论