构造函数前面有public和啥也没有,有什么区别,感谢

解决方案 »

  1.   

    有public就是这个类所在的包外也可以使用
    啥也没有就是默认的包访问,只有在同一个包里的程序才能使用
      

  2.   

    这个页面的地址强悍:http://community.csdn.net/Expert/topic/4444/4444444.xml?temp=.5776178好多44444
      

  3.   

    构造函数只有两种修饰:public/private.
    其中默认修饰是:public.
    有public和啥也没有,没有区别,都能被其他类不受限制地访问.
    而private一般用于单态设计模式.
      

  4.   

    public 这个构造方法在其他包中也可以访问
    没有   包可见性,只能在本包中访问
    private 在本类之外无法通过构造方法创建对象,用于单例模式
      

  5.   

    权限的问题 默认的是 package access 即包可见 有public 所有包可见
      

  6.   

    你这是访问权限控制的问题,在java中存在以下的访问权限控制:default 包中的其他类访问。不包括子类,不包括其他包 例如:int size; public 所有类,包括其他包的。 例如:public int size; protected 所有子类,不包括其他包 例如:protected int size; private 当前类,不包括其他类 例如:private int size;构造函数前没有public表示其是默认形式,也就是default的情况。
      

  7.   

    构造函数只有两种修饰:public/private.
    其中默认修饰是:public.
    有public和啥也没有,没有区别,都能被其他类不受限制地访问.
    而private一般用于单态设计模式.--------------------
    这人纯粹不懂
      

  8.   

    表示这个构造函数是公用的~~~~~~~~~~~~~~~~~
    一般构造函数不会是private的~~~~~~~~~~~~`
      

  9.   


    你这是访问权限控制的问题,在java中存在以下的访问权限控制:default 包中的其他类访问。不包括子类,不包括其他包 例如:int size;public 所有类,包括其他包的。 例如:public int size;protected 所有子类,不包括其他包 例如:protected int size;private 当前类,不包括其他类 例如:private int size;
    --------------------
    怎么在好几篇帖子上都见到这个
      

  10.   

    protected 所有子类,不包括其他包 例如:protected int size; 
    -------------------------------------------------------------
    实际情况是子类和本包可见
      

  11.   

    没写就默认protect
    ----------------
    谁说的?
      

  12.   

    在java中存在的访问权限应该是四种吧
      

  13.   

    构造函数只有两种修饰:public/private.
    其中默认修饰是:public.
    有public和啥也没有,没有区别,都能被其他类不受限制地访问.
    而private一般用于单态设计模式.
     这个人确实什么也不懂
     
    我建议大家一开始的时候把书好好的看一遍,特别是基础的,基础扎实了,后面才快
    这是我的经验
    希望大家仔细看书,自己多思考,这样才有效果
      

  14.   

    没写就默认protect
    ————————————————————
    这位仁兄,错了,没写是package权限,不是protected
      

  15.   

    看来我要好好补补基础知识了,我一直认为没写就是默认protected,另外package和protected权限有什么区别???我一直觉得是一样的。。
      

  16.   

    另外package和protected权限有什么区别???--------------------------------
    啤酒肚啊,我感觉不一样啊,package是在同一个包中可以访问吧?而protected只有子类能访问??
      

  17.   

    应该是这样的,protected同包的所有子类都能访问,而默认的是同包中其它类,不包括子类可以访问,这样应该没错了吧!
      

  18.   

    访问权限的问题,如果前面没有PUBLIC的话,在外边的package中就不能使用,而用PUBLIC修饰的话,就可以便用.
      

  19.   

    各位大哥,别争了,小弟从书上查到:
                         private   default  protected  public
    同一个类中              Y         Y        Y          Y
    同一个包中的子类                  Y        Y          Y
    同一个包中的非子类                Y        Y          Y
    不同包中的子类                             Y          Y 
    不同包中的非子类                                      YY表示可以访问,很清楚吧
      

  20.   

    各位大哥,别争了,小弟从书上查到:
                         private   default  protected  public
    同一个类中              Y         Y        Y          Y
    同一个包中的子类                  Y        Y          Y
    同一个包中的非子类                Y        Y          Y
    不同包中的子类                             Y          Y 
    不同包中的非子类                                      YY表示可以访问,很清楚吧
      

  21.   

    各位大哥,别争了,小弟从书上查到:
                         private   default  protected  public
    同一个类中              Y         Y        Y          Y
    同一个包中的子类                  Y        Y          Y
    同一个包中的非子类                Y        Y          Y
    不同包中的子类                             Y          Y 
    不同包中的非子类                                      YY表示可以访问,很清楚吧
      

  22.   

    gary_jojo(英雄!哗,大英雄!) 说的不错,我再补充一点:有时在需要类型转换时"public"也会影响结果,现给出“Java编程思想”中的一个例子。(这个例子中有两个类,Blip1和Blip2,它们非常相似,只是构造函数不同,Blip1的是public, Blip2的是default. 注意程序代码中被屏蔽掉的两行,它在运行期间会发生错误,因为访问不到Class Blip2的构造函数。)
    //: c11:Blips.java
    // From 'Thinking in Java, 2nd ed.' by Bruce Eckel
    // www.BruceEckel.com. See copyright notice in CopyRight.txt.
    // Simple use of Externalizable & a pitfall.
    import java.io.*;
    import java.util.*;class Blip1 implements Externalizable {
      public Blip1() {
        System.out.println("Blip1 Constructor");
      }
      public void writeExternal(ObjectOutput out)
          throws IOException {
        System.out.println("Blip1.writeExternal");
      }
      public void readExternal(ObjectInput in)
         throws IOException, ClassNotFoundException {
        System.out.println("Blip1.readExternal");
      }
    }class Blip2 implements Externalizable {
      Blip2() {
        System.out.println("Blip2 Constructor");
      }
      public void writeExternal(ObjectOutput out)
          throws IOException {
        System.out.println("Blip2.writeExternal");
      }
      public void readExternal(ObjectInput in)
         throws IOException, ClassNotFoundException {
        System.out.println("Blip2.readExternal");
      }
    }public class Blips {
      // Throw exceptions to console:
      public static void main(String[] args) 
      throws IOException, ClassNotFoundException {
        System.out.println("Constructing objects:");
        Blip1 b1 = new Blip1();
        Blip2 b2 = new Blip2();
        ObjectOutputStream o =
          new ObjectOutputStream(
            new FileOutputStream("Blips.out"));
        System.out.println("Saving objects:");
        o.writeObject(b1);
        o.writeObject(b2);
        o.close();
        // Now get them back:
        ObjectInputStream in =
          new ObjectInputStream(
            new FileInputStream("Blips.out"));
        System.out.println("Recovering b1:");
        b1 = (Blip1)in.readObject();
        // OOPS! Throws an exception:
    //! System.out.println("Recovering b2:");
    //! b2 = (Blip2)in.readObject();
      }
    } ///:~
      

  23.   

    http://community.csdn.net/Expert/topic/4444/4444444.xml?temp=.4444444这贴子URL真帅..
      

  24.   

    构造函数可以是private,用于singleton模式,但是所有方法为static
      

  25.   

    回复人: zhkchi(火焰神▲▲▲▲▲▲) ( ) 信誉:95  2005-12-07 18:32:00  得分: 0  
     
     
       这个页面的地址强悍:http://community.csdn.net/Expert/topic/4444/4444444.xml?temp=.5776178好多44444
      
     观察能力好强.
      

  26.   

    public 所有包中的所有类均可访问
    protected 所在包中的类和其他包中当前 类的继承类可以访问
    无(friendly) 只有所在包中的类可以访问
    private 只有当前类可以访问
      

  27.   

    第2楼的讲的对,core java里面都讲清楚了,搂住自己去看看吧
      

  28.   

    反正以后都写上吧 虽然没有什么多大的区别 
    默认的情况下也是PUBLIC 
    全当给自己一个良好的习惯
      

  29.   

    好像没写的情况是friendly权限。上面有人说构造函数只有两种权限public和private还我紧张了一下我还以为构造函数的权限和普通的有什么不一样的性质呢,好在下面的人提出来了,不然就被误导了。所以大家如果不是很确定的就别乱说啊~~~