精华内容
下载资源
问答
  • 外部类,成员内部,局部内部能被哪些修饰修饰
    千次阅读
    2019-10-07 14:52:11
    1.类指外部类,最大的类,修饰符有public(表示该类在项目所有类中可以被导入),default(该类只能在同一个package中使用),abstract,final
    2.内部类指位于类内部但不包括位于块、构造器、方法内,且有名称的类,修饰符有public,private,protected访问控制符,也可以用static,final关键字修饰,public和private比较简单,一个表示所有可以被所有类访问,一个表示只能被自身访问,protected修饰的成员类可以被同一个包中的类和子类访问。而default修饰的成员类只能被同一个包中的类访问。
    3.局部内部类指位于块、构造器、方法内的有名称类,最多只能有final修饰

    转载于:https://www.cnblogs.com/xhlwjy/p/11316057.html

    更多相关内容
  • java外部类修饰符问题

    2021-02-05 20:04:08
    而对于内部来说就可以使用private和protected修饰符了,因为内部类外部有三个作用域:外部类、同包或者任何位置,以及还有父子。因此,内部使用private修饰,限定为本外部类使用;内部使用protected修饰,...

    为什么java中外部类的修饰符只能是public和default

    原因

    外部类的上一层单元是包,对于外部类来说,只有两个作用域:同包或者任何位置,因此只需要两种控制权限:包控制权限和公开控制权限,即default和public。

    而对于内部类来说就可以使用private和protected修饰符了,因为内部类外部有三个作用域:外部类、同包或者任何位置,以及还有父子类。因此,内部类使用private修饰,限定为本外部类使用;内部类使用protected修饰,限定为本外部类及父子类使用;内部类使用default修饰,限定为同包使用;内部类使用public修饰,任何位置均可使用。

    如何理解

    MVC框架中,把类分为三层,一层层调用类,如果定义为private或者protected就无法调用。

    如果将外部类定义为这两种控制权限,其他类就无法就无法调用它,它就会变成一个独立的存在,也就毫无意义,因此不能给外部类使用这两种修饰符。

    展开全文
  • 外部类只能用public、final或者abstract(二选一)。 内部类比外部类多三种:private、protected、...其中,前两种只要不用private修饰,另一个都可访问它们。后两种,另一个不允许访问它们。 匿名内部可看作是局部

    外部类只能用public、final或者abstract(二选一)。

    内部类比外部类多三种:private、protected、static。

    局部内部类:fianl或者abstract

    内部类分为四种:带static的

           不带static的

           局部内部类

           匿名内部类

    其中,前两种只要不用private修饰,另一个类都可访问它们。后两种,另一个类不允许访问它们。

    匿名内部类可看作是局部内部类的特殊,都是在方法里的类。

    展开全文
  • 自从用eclipse写Java代码后,虽然效率得到了解放。但是很多Java有关的概念一下子弱了很多。没办法,自动提示、自动导包、自动这自动那的...最近重温了Java中权限...一、权限修饰修饰外部类的包内包外情况分析:...

    自从用eclipse写Java代码后,虽然效率得到了解放。但是很多Java有关的概念一下子弱了很多。没办法,自动提示、自动导包、自动这自动那的...最近重温了Java中权限修饰符和包的知识点,才发现上一篇关于这个知识点的博客(Java权限修饰符的访问权限大小以及里面涉及到包的细节)理解存在着不小的偏差,特来补进一下,毕竟学知识嘛,越到后面理解才越深。

    一、权限修饰符修饰外部类的包内包外情况分析:

    1、首先能修饰外部类的权限修饰符只有public和default,为什么不能是private和protected呢?

    这是因为:我们知道外部类中的成员(成员变量、成员方法、嵌套类等)的上层结构是类,而外部类的上层结构是包。

    ① 如果外部类使用private修饰,表明该包下的这个类被私有,无法被其它类访问,那就根本谈不上继承、多态这些的特征,因此该类也失去了存在的意义,所以不能使用private来修饰类。而且编译也通不过:Illegal modifier for the class XXX; only public, abstract & final are permitted,意思是:非法修饰符,只允许用 public, abstract,final来修饰外部类。

    ② 如果外部类使用protected修饰,表示该类所在的包的其它类可以访问该类;或该类所在的包的子包的类可以访问该类,但是包没有继承的概念,所以后一句是不对。所以用protected来修饰外部类也是没有意义的。

    综上,类只有public和default修饰可以修饰外部类。

    2、default修饰外部类,则该外部类相当于被封装在包内。

    包内:该外部类出现在包内的其他类中不需要加包名;

    包外:该外部类无法存在于包外的其他类中,即使导包也没用。

    3、public修饰外部类,该类不仅能被包内的其他类所访问,也能被包外的其他类所访问。

    包内:该外部类出现在包内的其他类中则不需要加包名;

    包外:该外部类若想被包外的其他类中所访问,可以在类名前面加上包名,也可以通过import关键字进行导包。

    二、权限修饰符修饰成员的包内包外情况分析:

    ps:因为静态成员方法相当于和方法所在类所绑定,可以直接通过方类名去调用,也可以通过方法所在类的对象来调用(相当于非静态方法的调用了)。为了方便,都以权限修饰符修饰非静态成员方法进行分析,权限修饰符修饰成员变量是一个道理,就不浪费空间了

    1、public修饰成员方法

    包内:可以在包中任意类中直接创建该方法所在类或子类的对象进行方法的调用;

    包外:可以在包外任意类中直接创建该方法所在类或子类的对象进行方法的调用。

    2、protected修饰成员方法:最想写的就是这个修饰符,它是专门为子类所提供的一个权限修饰符。

    包内:可以在包中任意类中直接创建该方法所在类或子类的对象进行方法的调用;

    包外:只能创建该方法所在类的子类的对象进行方法的调用,方法所在类的对象无法进行调用。

    3、default修饰成员方法:则该外方法相当于被封装在包内了。

    包内:可以在包中任意类中直接创建该方法所在类或子类的对象进行方法的调用;

    包外:无法访问该方法。

    4、private修饰成员方法:则该外方法相当于被封装在类中了。

    包内:仅在方法所在类中可以被访问,包中其他类也无法访问;

    包外:无法访问该方法。

    小结一下:

    ① 外部类仅能被public和default修饰。倘若外部类被default修饰则只能在包内中进行访问;被public修饰既能在包内中进行访问也能在包外访问,在包外出现时必须带上包名,否则就导包。

    ② 成员可以被4中权限修饰符所修饰,由大到小依次为public、protected、default、private。其中该成员若想在包外被调用,则只能用public和protected权限修饰符所修饰。包外:成员被public修饰时,方法所在类的对象和子类的对象都能调用;成员被protected修饰时,只有子类的对象能调用。

    ps:纯属个人见解,若有不对之处,欢迎大家批评指正!

    展开全文
  • 一、内部类可以为四种:⒈ 静态内部⒉ 成员内部⒊ 局部内部⒋匿名内部几种内部的共性:A、内部仍然是一个独立的,在编译之后会内部会被编译成独立的.class文件,但是前面冠以外部类命和$符号。...
  • 类修饰

    千次阅读 2021-03-31 16:48:18
    1、 修饰符分为:可访问控制符和非访问控制符两种。 可访问控制符是:公共类修饰符 public protect 非访问控制符有:抽象类修饰符 abstract ;最终类修饰符 final 1、公共类修饰符 public : Java 语言中的可...
  • java内部外部类的区别

    千次阅读 2021-03-07 00:47:13
    内部类可以声明public、protected、private等访问限制,可以声明 为abstract的供其他内部外部类继承与扩展,或者声明为static、final的,也可以实现特定的接口。外部类按常规的访问方式使用内部 ,唯一的...
  • Java中修饰符有哪些?

    千次阅读 2021-07-14 20:52:48
    普通外部类):只能用public、default(不写)、abstract、final修饰。 (成员)内部:可理解为外部类的成员,所以修饰类成员的public、protected、default、private、static等关键字都能使用。 局部内部...
  • public, protected ,default, private(java访问权限控制,只有这四位老哥) java 外部类只能被public 和 default 修饰(但是这是为什么?...默认是default,即缺省的时候外部类前面的权限修饰符是default...
  • Java中的权限修饰

    2021-02-28 15:48:16
    public:允许所有外部类访问使用publicprotected:允许子类和同包访问使用protectedprivate:...私有权限(private)private可以修饰数据成员,构造方法,方法成员,不能修饰类(此处指外部类,不考虑内部)。被pri...
  • 深入理解Java?内部

    2021-01-20 03:36:17
     (1)、内部仍然是一个独立的,在编译之后内部会被编译成独立的.class文件,但是前面冠以外部类的类名和$符号 。  (2)、内部不能用普通的方式访问。  (3)、内部声明成静态的,不能随便的访问外部类的...
  • Java程序在定义时,除了使用class关键字标识之外,还可以在class之前增加若干修饰符来修饰限定所定义的的特性。修饰符分为访问控制符和非访问控制符两大修饰符之间的先后排列次序对的性质没有任何...
  • 使用private修饰内部

    千次阅读 2019-10-09 15:12:59
    public class OuterClass { private class InnerClass { public void print() { System.out.println("打印内部 "); } } public static void main(String[] args) { ...
  • 首先:外部类是不能直接有static 修饰的,静态内部能不能实例化? 既然使用到了内部有没有必要使用public来修饰静态内部 内部是不是用于隐藏的? 初步理解: 通过示例可以看出 静态内部可以通过new ...
  • java基础(四)static修饰类

    千次阅读 2018-12-02 14:47:01
    前面的博客中,谈到了static修饰类内部变量及代码块的用法,却忽略了其用来修饰内部的情况。 为何会有用来修饰类的用法,及所有static用法的本质是什么?这篇文章就解释着两个问题。 一、内部 如果一个要被...
  • private(公共的 ) (受保护的) (默认的) (私有的)二、简单认识四种访问修饰符1、public权限修饰符public——可以修饰类,方法,构造方法,接口,方法成员。被public修饰的成员,可以在任何一个中被调用,不管同包...
  • java中final关键字、权限修饰符、内部(成员内部、局部内部、匿名内部
  • C++ static 修饰

    千次阅读 热门讨论 2021-05-05 22:40:55
    C++ static 修饰符是什么 & static 修饰符的使用场景以及用法.
  • 我知道当内部变量和和外部类变量同名时要用this修饰,但是我下面这段代码 /******内部***********/ @SuppressWarnings("serial") public class ChessImage extends JPanel { public void init() ...
  • 本小节详细介绍了 Java 访问修饰符。它们控制 Java 及其成员(函数和数据)的可见性。它们是公共的、私有的和受保护的。 但是,当没有修饰符存在时,Java 也实现了默认情况。这意味着一个、它的函数、字段只能...
  • python - 成员修饰

    千次阅读 2020-12-24 08:44:16
    在java,c#的成员修饰符...python成员:字段,方法,属性每个成员的修饰符有两种:公有成员:内部外部都能访问私有成员:字段前面加两个_,比如:__cc,只有自己的内部能访问,继承的父类,子类均不能访问.一、私有...
  • 【详细】Java的四种访问控制修饰

    千次阅读 2020-04-27 07:34:56
    (1)定义:public是公共的,被public所修饰的成员可以在任何中都能被访问到。 (2)修饰的成分: public能用来修饰类,在一个java源文件中只能有一个被声明为public,而且一旦有一个为public,那这个java...
  • Java封装(修饰符+包+内部)

    千次阅读 2016-04-30 16:41:38
    封装(修饰符+包+内部 的简单用法)
  • 一、public (1)定义:public是公共的,被public所修饰的成员可以在任何中都能被访问到。 (2)修饰的成分: public能用来修饰类,在一个java源文件中只能有一个被声明为public,而且一旦有一个为public,那这个...
  • 众所周知,在定义成员方法或者成员变量的时候,可以给其加上一些权限的修饰词,以防止其他的访问。如在成员变量或者成员方法前面,加上Private关键字,则其他就无法调用这个中的成员方法或则和成员变量。但是...
  • 内部接口可以被什么修饰修饰

    千次阅读 2017-05-08 21:47:10
    我觉得可以这样理解static的意义,当它描述外部的“东西”(,接口)时它表示是否可以被实例化(因为接口不可被实例化,所以外部接口不可被修饰为static);而当他描述内部的东西时(字段,方法,,接口)他就...
  • static修饰符 ...中的静态变量和静态方法能够与类名一起使用,不需要创建一个的对象来访问该的静态成员,所以,static修饰的变量又称作“变量”。static属性的内存分配 一个中,一个stati
  • 在C#中使用一个时,分两个阶段。首先需要定义这个,即告诉编译器这个由什么字段和方法组成。然后(除非只使用静态方法)实例化的一个对象。使用委托时,也需要经过这两个步骤。首先定义要使用的委托,对于委托...
  • 一、public(1)定义:public是公共的,被public所修饰的成员可以在任何中都能被访问到。(2)修饰的成分:public能用来修饰类,在一个java源文件中只能有一个被声明为public,而且一旦有一个为public,那这个java...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 77,254
精华内容 30,901
关键字:

外部类前面可以修饰

友情链接: Kmeans_process.zip