您的位置:首页 > 其它

A2.3封装 P374

2015-08-24 09:40 218 查看
面向对象编程的核心是封装、继承和多态。

c#使用访问修饰符public,protected,internal,protected internal,private 决定类或者类成员的可见性,尽可能封装内部实现。

访问修饰符 意义

public 完全公开,可以在类的内部或者外部的任何地方访问

protected 同一个名字空间内的派生类可以访问;

internal 同一个名字空间内的任何地方可以访问;

protected internal 满足protected 或internal 的条件可以访问

private 仅在类内部可以访问

在c#中,可以通过set ,和get方式将属性设置为“可写”或者“只读”。

set 方式有一个隐藏参数value,它即是指向属性的参数,

只使用get 方式的属性,它将是一个只读属性,只能被访问,不能改变它的数值。

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
public class Player
{
private string m_name = ""; //私有, 不能直接访问
public string Name
{
set { m_name = value; } //通过访问Name属性改变m_name的值
get { return m_name; } //通过访问Name属性获得m_name的值
}

private int m_life = 100; //私有,不能直接访问
public int Life
{
get { return m_life; } //通过访问Life属性获得m_life的值
}
}

class Program
{
static void Main(string[] args)
{
Player player = new Player();
player.Name = "player1";    //OK
//player.Life = 10; 	    //错误,Life是只读属性

Console.WriteLine(player.Name); // 输出Name
Console.WriteLine(player.Life);  // 输出Life的值100

// 输入任意键退出
Console.ReadKey();
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: