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

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

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

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

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

40    }

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

52    }

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

67    }

68}
完整例题代码下载:private_prtected_public.rar
posted @ 2007-02-27 17:08  dn  阅读(205)  评论(0编辑  收藏  举报