当前位置: 代码迷 >> Java相关 >> package 2; static ***************谢!比如创建对象,最好能稍做讲解。
  详细解决方案

package 2; static ***************谢!比如创建对象,最好能稍做讲解。

热度:916   发布时间:2008-04-14 19:56:24.0
package 2; static ***************谢!比如创建对象,最好能稍做讲解。
package p1;


public class Original
{
    int n_friendly = 1;
    private int n_private = 2;
    protected int n_protected = 3;
    public int n_public = 4;
    
    void Access()
    {
        System.out.println("**** In same class,you can access...");
        System.out.println("friendly member" +n_friendly);
        System.out.println("private member" +n_private);
        System.out.println("protected member" +n_protected);
        System.out.println("public member" +n_public);
    }
    
    
    class Derived extends Original
    {
        void Access()
        {
            System.out.println("**** 相同包的子类 ****");
            System.out.println("friendly member" +n_friendly);
            //System.out.println("private member" +n_private); 不能访问
            System.out.println("protected member" +n_protected);
            System.out.println("public member" +n_public);
            
            Original o = new Original();
            System.out.println("**** 相同包的子类的其他对象****");
            System.out.println("friendly member" +o.n_friendly);
            //System.out.println("private member" +o.n_private); 不能访问
            System.out.println("protected member" +o.n_protected);
            System.out.println("public member" +o.n_public);
        }
    }
   
   
    class SamePackageClass
    {
        void Access()
        {
            Original o = new Original();                    //?
            System.out.println("**** 相同包的其他类 ****");
            System.out.println("friendly member" +o.n_friendly);
            //System.out.println("private member" +o.n_private); 不能访问
            System.out.println("protected member" +o.n_protected);
            System.out.println("public member" +o.n_public);
        }
    }
   
    class AccessControl
    {
        public static void main(String[] args)
        {
            Original o = new Original();
            o.Access();
            Derived d = new Derived();
            d.Access();
            SamePackageClass s = new SamePackageClass();
            s.Access();
        }
    }
   
   
   

package p2;

    class Derived extends p1.Original
    {
        void Access()
        {
            System.out.println("**** 不同包中的子类 ****");
            //System.out.println("friendly member" +n_friendly);
            //不能访问
            //System.out.println("private member" +n_private);
            System.out.println("protected member" +n_protected);
            //子类可以访问父类
            System.out.println("public member" +n_public);
        
        p1.Original O = new Original();
        System.out.println("**** 访问在不同包中的父类 ****");
        //System.out.println("friendly member" +o.n_friendly);
        //System.out.println("private member" +o.n_private); 不能访问
        //System.out.println("protected member" +o.n_protected);
        System.out.println("public member" +o.n_public);
        }
    }
   
   
    class AnotherPackageClass
    {
        void Access()
        {
            p1.Original o = new p1.Original();
            System.out.println("**** 另一包中的其他类 ****");
            //System.out.println("friendly member" +o.n_friendly);
            //System.out.println("private member" +o.n_private); 不能访问
            //System.out.println("protected member" +o.n_protected);
            System.out.println("public member" +o.n_public);
        }
    }
   
   
    public class AccessControl
    {
         public static void main (String [] args)
            {
                Derived d = new Derived();
                d.Access();
                AnotherPackageClass a =new AnotherPackageClass();
                a.Access();
        }
    }
}
搜索更多相关的解决方案: package  static  对象  讲解  

----------------解决方案--------------------------------------------------------
  相关解决方案