C#类的概念
C#中类的概念
类修饰符 class 类名
{
}
类的修饰符:
public : 不限制对类的访问
protected: 只能从所在的类和所在类的子类(派生类)中进行访问
internal: 同一个程序集的任何代码都可以进行访问
private: 只有其所在的类才能访问
abstract: 抽象类
sealed : 密封类,不允许被继承
构造函数和析构函数
对象的生命周期从构造函数开始,以析构函数结束
.net framework类库有垃圾回收功能,会自动调用该类的析构函数实现垃圾回收
析构函数无法调用,是自动调用的。
对象的创建
Test test = new Test() ;
test对象就是一个对象的引用,这个引用在内存中为对象分配存储空间。
对象的引用
C#中一切都可以看成对象,真正的操作标识符实质上是一个引用
引用的语法
类名 对象引用名称 Demo01 d1, d1就是对象引用的名称
引用和对象关联的语法
Demo01 d1 = new Demo01() ; d1的是对象的而引用,后面new是对象
引用只是存放一个对象的内存地址,并非存放一个对象
this关键字
应用一:
private void setName(String name)
{
this.name = name ;
}
this关键字来代表本类对象的引用,this关键字被隐式的用于以用对象的成员变量和方法。
this引用的就是本类的一个对象,再局部变量或方法参数覆盖了成员变量时,用this来明确引用的式类成员还是局部变量或方法参数。
应用二:
作为方法的返回值
public Book getBook()
{
return this ;
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ClassDemo1
{
class Demo01
{
int i = 47;
public void call()
{
Console.WriteLine("调用Call()方法");
for (int i = 0; i < 3; i++)
{
Console.Write(i + " ");
if (i == 2)
{
Console.WriteLine("\n");
}
}
}
public Demo01()
{
}
public class Program
{
public static void Main(string[] args)
{
Demo01 d1 = new Demo01();
Demo01 d2 = new Demo01();
d2.i = 60;
Console.WriteLine("第一个实例对象调用变量i的结果:" + d1.i);//i = 47 ;
d1.call();
Console.WriteLine("第二个实例对象调用变量i的结果:" + d2.i); //i = 60 ;
//说明两个对象是独立的
d2.call();
Console.ReadLine();
}
}
}
}