面向对象基础(一)
————————————————————————————————————————————
类与实例
对象是一个自包含的实体,用一组可识别的特性和行为来标识。
类是具有相同属性和功能的对象的抽象的集合。
class,是类的关键字,cat是类的名称,shout是类的方法
class Cat
{
public string Shout()
{
return"喵";
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
类的定义要求:
一、类名称首字母要大写,多个单词则各个首字母大写。
二、对外公开的方法都需要用public修饰符。
实例,就是一个真实的对选哪个,实例化就是创建对象的过程,使用new关键字来创建。
private void button_Click(boject sender,EventArgs e)
{
Cat cat=new Cat();//将cat类实例化
//这里的代码实际上是做了两件事
//Cat cat;//声明一个Cat的对象,对象名为cat
//cat=new Cat();//将这个cat对象实例化
MessageBox.show(cat.Shout());
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
cat实例化之后就相当于生出了一只小猫,下面需要用到小猫的时候就可以直接实例化它。
构造方法
构造方法,又叫构造函数,对类进行初始化,构造方法与类同名,无返回值,也不需要void,在new的时候调用。所有的类都有构造方法,如果你不编码那么系统默认生成空的构造方法,如果你有定义的构造方法,那么默认的构造方法会失效。
构造方法是为了对类进行初始化。
class Cat
{
private string name="";//声明cat类的私有字符串变量name
public Cat(string name)//定义cat类的构造方法,参数是输入一个字符串
{
this.name=name;//将参数赋值给私有变量name
}
//类的方法
public string Shout()
{
return"我的名字叫"+name+"喵";
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
在客户端填写小猫的名字
private void button_Click(boject sender,EventArgs e)
{
Cat cat=new Cat"猫咪";
MessageBox.Show(cat.Shout());
}
- 1
- 2
- 3
- 4
- 5
方法重载
方法重载提供了创建同名的多个方法的能力,但是这些方法需要使用不同的参数类型,所有的方法都可以进行重载。
在重载方法时,两个方法必须要方法名相同,但是参数类型或个数必须要有所不同,否则重载没有意义。
重载的好处:可以在不改变原方法的基础上,新增功能。方法重载算是提供了函数可扩展的能力。
class Cat
{
private string name="";
public Cat(string name)
{
this.name=name;
}
//将构造函数重载
public Cat()
{
this.name="无名";
}
public string Shout()
{
return "我的名字叫"+name+"喵";
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
属性与修饰符
属性是一个方法或者一对方法,但是在调用他的代码看来,他是一个字段,即 属性适合于以字段的方式使用方法调用的场合。
字段是存储类要满足其设计所需要的数据,字段是与类相关的变量。
属性的get和set是什么意思?
属性的两个方法get和set,get访问器返回与声明的属性相同的数据类型,表示的意思是调用时可以得到内部字段的值或引用,set访问器没有显示设置参数,但是他有一个隐式参数,用关键字value表示,它的作用是调用属性时可以给内部的字段或者引用赋值。
//声明一个内部子弹,注意是private,默认叫的次数是3
private int shoutNum=3;
//get 表示外界调用时可以得到shoutNum的值,set表示外界可以给内部的shoutNum赋值。
//get是读,set是写。
//ShoutNum属性,注意是public。
public int ShoutNum
{
get{return shoutNum;}
set{shoutNum=value;}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
修饰符
public 它所修饰的类成员可以允许其他任何类来访问,共有的。
private 表示只允许同一个类中的成员访问,其他类包括它的子类无法访问,私有的。
通常字段都是private,也就是私有的,属性都是public ,公有的变量。(公有的是对外的,所以一般首字母大写,而字段一般首字母小写或者前面加’_’)
protected 表示继承时子类可以对基类有完全访问权,即,有protected修饰的类成员,对子类公开,但不对其他类公开。
文章来源: blog.csdn.net,作者:张艳伟_Laura,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/Laura__zhang/article/details/112977287
- 点赞
- 收藏
- 关注作者
评论(0)