第一章新增例题:访问修饰符

该例题对教材1.3.1提到的访问修饰符(public、protected、private)的可访问性进行演示
 1 None.gif using  System;
 2 None.gif
 3 None.gif namespace  private_prtected_public
 4 ExpandedBlockStart.gifContractedBlock.gif dot.gif {
 5ExpandedSubBlockStart.gifContractedSubBlock.gif    /**//// <summary>
 6InBlock.gif    /// Class1 的摘要说明。
 7ExpandedSubBlockEnd.gif    /// </summary>

 8InBlock.gif    class Class1
 9ExpandedSubBlockStart.gifContractedSubBlock.gif    dot.gif{
10InBlock.gif        public string s1="公有修饰符 public";
11InBlock.gif        private string s2="私有修饰符 private";
12InBlock.gif        protected string s3="保护修饰符 protected";  
13ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
14InBlock.gif        /// 应用程序的主入口点。
15ExpandedSubBlockEnd.gif        /// </summary>

16InBlock.gif        [STAThread]
17InBlock.gif        static void Main(string[] args)
18ExpandedSubBlockStart.gifContractedSubBlock.gif        dot.gif{
19InBlock.gif            Console.WriteLine("Class1内部访问");
20InBlock.gif            Class1 c1=new Class1();
21InBlock.gif            c1.vistedAll();
22InBlock.gif
23InBlock.gif            Console.WriteLine("Class1的派生类中访问");
24InBlock.gif            Class2 c2=new Class2();
25InBlock.gif            c2.vistedAll();
26InBlock.gif
27InBlock.gif            Console.WriteLine("Class1外部访问");
28InBlock.gif            Class3 c3=new Class3();
29InBlock.gif            c3.vistedAll();
30ExpandedSubBlockEnd.gif        }

31InBlock.gif
32InBlock.gif        //Class1内部访问
33InBlock.gif        public void vistedAll()
34ExpandedSubBlockStart.gifContractedSubBlock.gif        dot.gif{
35InBlock.gif
36InBlock.gif            Console.WriteLine(s1);
37InBlock.gif            Console.WriteLine(s2);
38InBlock.gif            Console.WriteLine(s3);
39ExpandedSubBlockEnd.gif        }

40ExpandedSubBlockEnd.gif    }

41InBlock.gif
42InBlock.gif    class Class2:Class1
43ExpandedSubBlockStart.gifContractedSubBlock.gif    dot.gif{
44InBlock.gif        //Class1的派生类中访问
45InBlock.gif        new public void vistedAll()
46ExpandedSubBlockStart.gifContractedSubBlock.gif        dot.gif{
47InBlock.gif            Console.WriteLine(s1);
48InBlock.gif            //不可访问Class1中的private修饰的成员
49InBlock.gif            //Console.WriteLine(s2);
50InBlock.gif            Console.WriteLine(s3);
51ExpandedSubBlockEnd.gif        }

52ExpandedSubBlockEnd.gif    }

53InBlock.gif
54InBlock.gif    class Class3
55ExpandedSubBlockStart.gifContractedSubBlock.gif    dot.gif{
56InBlock.gif        //Class1外部访问
57InBlock.gif        public void vistedAll()
58ExpandedSubBlockStart.gifContractedSubBlock.gif        dot.gif{
59InBlock.gif
60InBlock.gif            Class1 c1=new Class1();
61InBlock.gif            Console.WriteLine(c1.s1);
62InBlock.gif            //不可访问Class1中的private修饰的成员
63InBlock.gif            //Console.WriteLine(c1.s2);
64InBlock.gif            //不可访问Class1中的protected修饰的成员
65InBlock.gif            //Console.WriteLine(c1.s3);
66ExpandedSubBlockEnd.gif        }

67ExpandedSubBlockEnd.gif    }

68ExpandedBlockEnd.gif}
完整例题代码下载: private_prtected_public.rar

转载于:https://www.cnblogs.com/hhdn/archive/2007/02/27/658513.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值