C#基础知识(八)——面向对象
2016-07-31 20:03
302 查看
一、一些主要概念:
对象:就是一个实体。可以是一个事物,也可以是一个人。是看得见、摸得到的具体的东西。
属性:对象具有的各种特征。例如:张三的属性有姓名,性别,年龄等等。
属性值:描述这个特征的值。
方法:对象的行为、动作、执行的操作。例如:老师的行为:上课。
类:类是模子,确定对象将会拥有的特征(属性)和行为(方法)。类是对象的类型。
类和对象的区别:
类是抽象的概念,不仅仅是模板。比如说“人”类;对象是一个你能够看得到、摸得着的具体实体。
类是对象的抽象;对象是类的具体实例。
类是抽象的,不占用内存;而对象是具体的,占有内存空间。
例如:类就是水果,对象就是苹果。
二、类的定义:
语法:
[访问修饰符] class 类名
{
成员;
......
}
类在命名空间下面写,类中可以包含变量的定义、方法。
例子:
三、类的实例化:
语法:
类 实例名 = new 类 ();
类的成员的访问:
实例名.属性 实例名.方法名();
字段、方法、属性都可以叫做类的成员Member,它们都需要定义访问级别。访问级别的用处在于控制成员在哪些地方可以被访问,这样达到面向对象中“封装”的目的。
访问修饰符:public private (internal protected)
例如:
构造方法用来创建对象,并且可以在构造函数中对对象进行初始化。
构造函数是用来创建对象的特殊方法,方法名和类名一样,没有返回值,连void都不用。
构造函数可以有参数,new对象的时候传递函数参数即可。
如果不指定构造函数,则类有一个默认的无参构造函数。如果指定了构造函数,则不再有默认的无参构造函数,如果需要无参构造函数,则需要自己来写。
构造函数可以重载,也就是有多个参数不同的构造函数。
例子:
面试题:
简述 private、 protected、 public、 internal 修饰符的访问权限。
private : 私有成员, 在类的内部才可以访问。类中字段和方法默认的访问修饰符是private 。
protected : 保护成员,该类内部和继承类中可以访问。
public : 公共成员,完全公开,没有访问限制。
internal: 当前程序集内可以访问。
对象:就是一个实体。可以是一个事物,也可以是一个人。是看得见、摸得到的具体的东西。
属性:对象具有的各种特征。例如:张三的属性有姓名,性别,年龄等等。
属性值:描述这个特征的值。
方法:对象的行为、动作、执行的操作。例如:老师的行为:上课。
类:类是模子,确定对象将会拥有的特征(属性)和行为(方法)。类是对象的类型。
类和对象的区别:
类是抽象的概念,不仅仅是模板。比如说“人”类;对象是一个你能够看得到、摸得着的具体实体。
类是对象的抽象;对象是类的具体实例。
类是抽象的,不占用内存;而对象是具体的,占有内存空间。
例如:类就是水果,对象就是苹果。
二、类的定义:
语法:
[访问修饰符] class 类名
{
成员;
......
}
类在命名空间下面写,类中可以包含变量的定义、方法。
例子:
<pre name="code" class="csharp">public class Person { //字段 private string _name; private char _gender; private int _age; public void SayHello() { Console.WriteLine("hello,大家好,我是小明"); } public void Walk() { Console.WriteLine("我走着走"); } }
三、类的实例化:
语法:
类 实例名 = new 类 ();
类的成员的访问:
实例名.属性 实例名.方法名();
字段、方法、属性都可以叫做类的成员Member,它们都需要定义访问级别。访问级别的用处在于控制成员在哪些地方可以被访问,这样达到面向对象中“封装”的目的。
访问修饰符:public private (internal protected)
例如:
static void Main(string[] args) { Person per = new Person(); per._name="张三"; per._age=18; per._gender='男'; per.SayHello(); per.Walk(); Console.WriteLine(per._name); Console.ReadKey(); }四、构造函数:
构造方法用来创建对象,并且可以在构造函数中对对象进行初始化。
构造函数是用来创建对象的特殊方法,方法名和类名一样,没有返回值,连void都不用。
构造函数可以有参数,new对象的时候传递函数参数即可。
如果不指定构造函数,则类有一个默认的无参构造函数。如果指定了构造函数,则不再有默认的无参构造函数,如果需要无参构造函数,则需要自己来写。
构造函数可以重载,也就是有多个参数不同的构造函数。
例子:
class Program { static void Main(string[] args) { Person per = new Person(); //写一个类,如果没有写任何的构造函数,那么这个类有个默认的无参数的构造函数。 } }
//定义Person类: public class Person { public Person(string name, char gender, int age) { this._name = name;//指示代词 this._gender = gender; this._age = age; } public Person(string name) { this._name = name; } //构造函数的重载 public Person() { } }
class Program { static void Main(string[] args) { Person per = new Person("张三", '男', 18); Person p = new Person("张三"); Person p1=new Person(); } }
面试题:
简述 private、 protected、 public、 internal 修饰符的访问权限。
private : 私有成员, 在类的内部才可以访问。类中字段和方法默认的访问修饰符是private 。
protected : 保护成员,该类内部和继承类中可以访问。
public : 公共成员,完全公开,没有访问限制。
internal: 当前程序集内可以访问。
相关文章推荐
- C# 基础知识系列之面向对象基础
- 黑马程序员--C#面向对象基础知识
- 黑马程序员 C#面向对象基础知识点
- php面向对象全攻略 (一) 面向对象基础知识
- C#基础系列(9)-- 第三部分 面向对象相关 -- 抽象类与接口(2)
- JAVA面向对象中的基础知识整理-JAVA课堂笔记
- 传智播客.Net培训—C#面向对象基础
- C#面向对象基础12--抛出异常
- 用《叩响C#之门》复习C#基础知识 第七章 面向对象编程:类和对象(一)
- 面向对象基础知识(二)-类的继承
- 黑马程序员-面向对象基础知识
- C# 面向对象设计基础 二(上)
- JAVA第一周学习周记:java基础及面向对象基础知识
- C#面向对象基础(二) 构造与析构 欢乐农场篇
- 黑马程序员——C#面向对象基础复习日记
- C# 面向对象设计基础 二(中)
- C#基础系列(8)-- 第三部分 面向对象相关 -- 类与结构(1)
- C#学习笔记五面向对象基础
- javascript: 面向对象基础知识
- 黑马程序员_学习日记2_有关C#基础知识总结归纳之对象和类型