----------继承--------------
--先制作一个Person类作为父类
class Person // { public string Name { get; set; } public Person() { } public Person(string name) { this.Name = name; } public virtual void Read() { Console.WriteLine("zzzzzz"); } public void Say() { Console.WriteLine("sssss"); } }
--值做一个Student类作为Person的子类
class Student:Person { public Student() { } public Student(string name):base(name){ this.Name =name; } public void Say() { Console.WriteLine("22222"); } public override void Read() { Console.WriteLine("read"); } }
当我们在Main方法里面调用 Student实现他的方法时:
首先编译器执行到子类的方法时,不执行,执行的父类方法(给父类的属性赋值) ,回到子类的方法,如果父类的方法没有virtual关键字,编译器默认走子类的方法,特有方法。
我们创建的所有类 默认继承Object类 ,所以我们不用new就可以单纯的调用Object里的方法,最常见的有ToString()
面试题:c#中Object的四个默认方法
java中Object的默认方法:
---equals()
---getClass()
---hashCode()
---notify()
---notifyAll()
---toString()
---