黑马程序员--构造方法与继承
----------------------
第一、先说构造方法。
1、使用构造方法的好处:
(1)对多个属性进行赋值时,不需要实例名;
(2)可以保证用户在new一个对象的时候必须对某一个属性进行赋值;
(3)在创建对象时,对只读属性进行初始化;
(4)构造方法可以重载,也就是有多个参数不同的构造方法,和普通方法一样。
2、如何定义一个构造方法:
构造方法是以特殊的方法,它的名字和它所属的类的名字相同,并且没有返回值,连void都可以省略不写;还有一个就是要说的:当我们定义好一个类之后,如果我们没有写构造方法,,系统就会自动的给我们加上一个默认的没有参数的构造方法,只是我们看不到而已;不过,一旦我们自己写了一个构造方法后,系统原先默认添加的那个构造方法就不会再添加有了。
3、举例(举个简单点的)
class Program
{
static void Main(string[]args)
{
Person p1=new person(“John”);//new一个对象出来,对name这个属性//进行赋值
}
}
Class person //自己定义一个person类
{
String name;
Public stringname(get{return name;})//只读属性
Public person(string name)//定义一个构造方法
{
this.name=name;
}
}
第二、继承
1、子类可以使用父类的所有功能,并且对这些功能进行扩展,子类自己也可以定义自己的功能。
2、语法:class 自定义类名:要继承的类名
3、举例(构造方法与继承的结合运用)
class Program
{
static void Main(string[]args)
{
Teacher p=newTercher ();
p.Name=”tom”;
p.Age=19;
p.SayHello();
console.readkey();
}}
Class person //定义一个类,被继承的类
{
Publicperson(string name,int age) //定义一个构造方法
{
This.name=name;
This.age=age;
}
String name;
Public stringName{set;get}//属性
Int age;
Public intAge{set;get}//属性
Public voidSayHello() //定义一个方法
{
Console,WriteLine(“我叫{0},今年{1}岁!”,Name,Age);
}
}
Class Teacher:person //在定义一个类,这个类继承与person类,为继//承类。
{
Public person(string name,intage):base(name,age)//调用基类的构造方
//法。
{
}
Public voidSayHello() //定义一个方法
{
Console,WriteLine(“我叫{0},今年{1}岁!”,Name,Age);
}
----------------------