Java中有类似内部类的东西吗?

新手上路,请多包涵

在 C# 中,您可以将一个类标记为 internal 以便它只能从同一个包中访问。 Java中有类似的东西吗?

原文由 Svish 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 671
2 个回答

您可以通过从类声明中省略安全修饰符(public、private)来创建包私有类。

 package com.sample;

class MyPackagePrivateClass
{
    ...
}

原文由 Bryan Kyle 发布,翻译遵循 CC BY-SA 3.0 许可协议

删除访问修饰符类似于 C# 中的内部。

C#

 public class A
{
    public static int X;
    internal static int Y;
    private static int Z;
}
internal class B
{
    public static int X;
    internal static int Y;
    private static int Z;
    public class C
    {
        public static int X;
        internal static int Y;
        private static int Z;
    }
    private class D
    {
        public static int X;
        internal static int Y;
        private static int Z;
    }
}

爪哇

public class A
{
    public static int X;
    static int Y;
    private static int Z;
}
class B
{
    public static int X;
    static int Y;
    private static int Z;
    public class C
    {
        public static int X;
        static int Y;
        private static int Z;
    }
    private class D
    {
        public static int X;
        static int Y;
        private static int Z;
    }
}

资料来源: http ://www.javacamp.org/javavscsharp/internal.html

原文由 Steven Jeuris 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题