首页 > 编程语言 >java-普通内部类和静态内部类区别

java-普通内部类和静态内部类区别

时间:2023-04-20 16:44:25浏览次数:36  
标签:部类 调用 java 内部 静态 访问 属性

  1. 静态内部类相对与外部类是独立存在的,在静态内部类中无法直接访问外部类中的变量、方法。如果要访问的话,必须要new一个外部类的对象,使用new出来的对象来访问。 但是可以直接访问静态变量,调用静态的方法。
  2. 普通内部类作为外部类一个成员而存在,在普通内部类中可以直接访问外部类属性,调用外部类的方法。
  3. 如果外部类要访问内部类的属性或者调用内部类的方法,必须要创建一个内部类的对象,使用该对象访问属性或者调用方法。
  4. 如果其他的类要访问普通内部类的属性或者调用普通内部类的方法,必须要在外部类中创建一个内部类的对象作为一个属性,外部类可以通过属性调用普通内部类的方法或者访问普通内部类的属性。
  5. 如果其他的类要访问静态内部类的属性或者调用静态内部类的方法,直接创建一个静态内部类对象即可

具体参考:https://blog.csdn.net/Apple_wolf/article/details/118419673

标签:部类,调用,java,内部,静态,访问,属性
From: https://www.cnblogs.com/little-bean-sprout/p/17337351.html

相关文章

  • java创建对象的几种方法
    Java一共有5种方法可以来创建对象例如对象User;使用new的方式来创建对象,newUser(),这种方法使用了构造器2.使用class的newInstance()例如:Useruser=User.class.newInstance();这种方法也使用了构造器3.使用Constructor类的newInstance()方法创建对象,例如:Useruser=......
  • Java多态
    Java多态封装、继承和多态是面向对象的三大特征多态polymorphism许多形态多态体现为父类引用变量可以指向子类对象。多态的定义与使用格式​定义格式:父类类型变量名=new子类类型();多态是同一个行为具有多个不同表现形式或形态的能力实现多态的条件1.继承:必......
  • java ThreadPool 线程池
    线程池的参数corePoolSize为核心线程;maximunPoolSize为最大线程;keepAliveTime为最长生命时间;unit是其时间单位;workQueue任务队列;handler是过多线程之后的策略对于线程池的处理线程机制,网上有一堆,但是机制核心是优先处理核心线程,优先堆满线程池,初学者建议不用轻易使用拒绝策略,除非......
  • java的synchronized
    不久前用到了同步,现在回过头来对JAVA中的同步做个总结,以对前段时间工作的总结和自我技术的条理话。JAVA中synchronized关键字能够作为函数的修饰符,也可作为函数内的语句,也就是平时说的同步方法和同步语句块。假如再细的分类,synchronized可作用于instance变量、objectreference(对象......
  • java 用ajax java后台传回值
       用ajaxjava后台传回值,包括传json publicstaticfinalvoidsendAsJson(HttpServletResponseresponse,Stringstr){response.setContentType("application/json;charset=UTF-8");if(null!=str)try{response.getWriter().write(st......
  • ArcGIS API for JavaScript 4.x加载GeoServer发布的WMTS服务
    前言 以前用OpenLayers加载GeoServer我记得很简单,现在用ArcGISAPI加载捣鼓了一天没搞好,第二天早上来参考一篇文章搞好了,我这纯属记录下。背景 客户没有ArcGISServer的许可,所以就只能用GeoServer发布或者离线切片,先研究下GeoServer,后面如果心情好再研究下离线切片。......
  • java EE开发之Servlet第十课:反射基础二
     ##一.反射类中的属性在Java中一切皆对象,那么类中任何一个属性都可以看做一个对象,一个属性对应一个Field对象####1.先建一个普通的类,写上不同修饰类型的属性publicclassStudent{ publicStringname; protectedintage; Stringsex; privatedoublemoney; publicstatic......
  • java 增删改查接口命名规范(service与mapper)
    阿里推荐命名规范:转载自:https://www.cnblogs.com/zengzy698/p/15939088.html......
  • c++ 静态编译和动态编译
      C++是一种高级编程语言,它支持两种不同的编译方式:静态编译和动态编译。下面是它们的介绍:静态编译  静态编译是将程序代码和库函数一起编译成一个可执行文件的过程。在静态编译过程中,程序代码和库函数的代码被组合在一起,形成一个独立的可执行文件,该文件可以在任何系统上运行......
  • JavaScript函数基础语法
    ●我们代码里面所说的函数和我们上学的时候学习的什么三角函数、二次函数之类的不是一个东西函数的概念●对于js来说,函数就是把任意一段代码放在一个盒子里面●在我想要让这段代码执行的时候,直接执行这个盒子里面的代码就行●先看一段代码//这个是我们以前写的一段代码for......