内部静态类与普通类的实例化区别 [问题点数:200分]

Bbs1
本版专家分:0
结帖率 99.53%
Bbs4
本版专家分:1435
Bbs7
本版专家分:12539
Blank
金牌 2018年7月 总版技术专家分月排行榜第一
2018年6月 总版技术专家分月排行榜第一
Blank
红花 2019年3月 Java大版内专家分月排行榜第一
2018年9月 Java大版内专家分月排行榜第一
2018年8月 Java大版内专家分月排行榜第一
2018年7月 Java大版内专家分月排行榜第一
2018年6月 Java大版内专家分月排行榜第一
Bbs3
本版专家分:875
Blank
黄花 2019年4月 Java大版内专家分月排行榜第二
静态类和非静态类区别
静态有一些特点:1.全局唯一,任何一次的修改都是全局性的影响2.只加载一次,优先于非静态3.使用方式上不依赖于实例对象。4.生命周期属于类级别,从JVM 加载开始到JVM卸载结束。静态方法与静态成员变量一样,属于类本身,在类装载的时候被装载到内存,不自动进行销毁,会一直存在于内存中,直到JVM关闭。非静态方法又叫<em>实例化</em>方法,属于实例对象,<em>实例化</em>后才会分配内存,必须通过类的实例来引用。不会常驻内存,...
JAVA内部静态类
package stringtest; /** * @Author: shuyizhi @Date: 2018-08-15 15:04 @Description: <em>内部</em><em>静态类</em> * 1、创建静态<em>内部</em>类方式:Outer.Inner inner = new Outer.Inner();静态<em>内部</em>类不依赖于外部类。 *2、外部类可通过<em>内部</em>类的对象调用<em>内部</em>类的私有成员变量或方法。 *3、静态<em>内部</em>类访...
Java静态类
在Java世界里,经常被提到静态这个概念,static作为静态成员变量和成员函数的修饰符,意味着它为该类的所有实例所共享,也就是说当某个类的实例修改了该静态成员变量,其修改值为该类的其它所有实例所见。最近一个项目里频繁用到static修饰的<em>内部</em>类,再读了一下《Effective Java》才明白为什么会用static来修饰一个<em>内部</em>类也就是本文的中心——<em>静态类</em>。 如果一个类要被声明为sta...
Java学习笔记(七):内部类、静态类和泛型
<em>内部</em>类 在Java中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为<em>内部</em>类。广泛意义上的<em>内部</em>类一般来说包括这四种:成员<em>内部</em>类、局部<em>内部</em>类、匿名<em>内部</em>类和静态<em>内部</em>类。下面就先来了解一下这四种<em>内部</em>类的用法。 成员<em>内部</em>类 成员<em>内部</em>类可以无条件访问外部类的所有成员属性和成员方法(包括private成员和静态成员)。 1 class Circle { 2 private...
Java类的加载,以及静态内部类的问题。
http://blog.csdn.net/lengyueaiq/article/details/51143064 1、属性的加载以及初始化的问题 当要<em>实例化</em>一个类时,JVM会首先加载该类,并且在加载过程中检查这个类是否有静态属性以及静态代码块,如果有,就按顺序分配内存并初始化他们,并且只在类加载的过程中初始化一次。 对于构造代码块,以及<em>普通</em>属性,是在类<em>实例化</em>时进行的,
静态内部类和普通内部类的区别
静态<em>内部</em>类和<em>普通</em><em>内部</em>类的<em>区别</em>
普通内部类和静态内部类的一点区别
看了<em>普通</em>的<em>内部</em>类和静态<em>内部</em>类的<em>区别</em>,进行了一些探索与发现。 Case1: public class Test { public static void main(String[] args) { int ab[] = new int[3]; int ii = ab.length; } static class A{ } } Case2: public class...
Java静态内部类的实例化问题
最近遇到的一个问题,记录一下。 静态<em>内部</em>类可以被<em>实例化</em>! 1.首先在外部类中的static方法中不能使用<em>普通</em><em>内部</em>类,因为<em>内部</em>类必须要与外部类建立关联才能使用,可以说是同生共死。 2.我在编码过程中,需要2个类共同完成一个功能,其中一个工具类只会被用来完成这个功能,所以我选择将这个类作为<em>内部</em>类,但是这个<em>内部</em>类与外部类又没有直接的关联(使用<em>普通</em><em>内部</em>类,我需要new一个外部类,通过外部类才能new一
内部类及静态内部类的实例化
<em>内部</em>类的<em>实例化</em> 如果<em>内部</em>类未声明为static,在<em>实例化</em>时首先需要new一个外部类的对象。并通过p.new Inner()的方式new <em>内部</em>类,表明这个<em>内部</em>类指向该外部类。<em>内部</em>类的class类型为:Parent.Inner,而不是p.Inner,这个需要和new的方式区分开。 public class Test {  public static void main(String[]
java 内部实例化方式
1、java成员和静态<em>内部</em>类的使用,适用类本身适用,旨在减少文件个数和方便维护管理; 2、匿名<em>内部</em>类方便不同业务实现下的灵活使用; 3、局部<em>内部</em>类,跟匿名<em>内部</em>类相仿,但功能不同。 本文着重讲: ①java成员<em>内部</em>类和静态<em>内部</em>类的<em>实例化</em>方式, ②<em>内部</em>类的方法调用方式 代码实现如下: package com.innerClass; import com.google.gson.Gso...
Java静态内部类——重点是精妙的demo
什么是<em>内部</em>类 大部分时候,类被定义成一个独立的程序单元。在某些情况下,也会把一个类放在另一个类的<em>内部</em>定义,这个定义在其他类<em>内部</em>的类就被称为<em>内部</em>类(有些地方也叫做嵌套类),包含<em>内部</em>类的类也被称为外部类(有些地方也叫做宿主类) 作用?? 更好的封装性 <em>内部</em>类成员可以直接访问外部类的私有数据,因为<em>内部</em>类被当成其外部类成员,但外部类不能访问<em>内部</em>类的实现细节,例如<em>内部</em>类的成员变量
Java中一个类的静态方法与实例化的简单理解
我们把类看作是一个房子。房子里面有家具,桌椅板凳之类的,房子里面还有人。 房子里面所有的人都应该是共有一套家具的。也就是说,这些家具是唯一的,如果某个家具坏了,那么大家都用不了。 我们再看一看定义, java的静态变量也叫做类变量,它开始于类的创建,结束于类的消亡。 非静态变量叫做实例变量,它开始于类的实例的创建,结束语类的实例的消亡。 静态变量被所有实例所共享。也就是如上面的例子,座椅板凳...
类模板的static成员实例化
转一篇模板类静态方法的文章,收藏一下 与任何其他类相同,类模板可以声明 static 成员: template &amp;amp;lt;typename T&amp;amp;gt; class Foo { public: static std::size_t count() { return ctr; } void addctr() { ctr++; } ...
java中的静态类
java中的<em>静态类</em> 在Java世界里,经常被提到静态这个概念,static作为静态成员变量和成员函数的修饰符,意味着它为该类的所有实例所共享,也就是说当某个类的实例修改了该静态成员变量,其修改值为该类的其它所有实例所见。最近一个项目里频繁用到static修饰的<em>内部</em>类,再读了一下《Effective Java》才明白为什么会用static来修饰一个<em>内部</em>类也就是本文的中心——<em>静态类</em>。 如果一个...
Java 静态类、静态方法和静态变量
转载自Java <em>静态类</em>、静态方法和静态变量Java <em>静态类</em>、静态方法和静态变量static 是Java中的一个关键字,我们不能声明<em>普通</em>外层类或者包为静态的。static用于下面四种情况。1.静态变量:我们可以将类级别的变量声明为static。静态变量是属于类的,而不是属于类创建的对象或实例。因为静态变量被类的所有实例共用,所以非线程安全的。通常静态变量还和关键字final一起用,作为所有对象共用的资
JAVA中的静态类
提到JAVA中的<em>静态类</em>,就要提到static这个修饰符,书中说明static作为 静态成员变量 和 成员函数(类中的方法) 的修饰符,注意两个字是“成员”。意味着它为该类的所有实例所共享,也就是说当某个类的实例修改了该静态成员变量,其修改值为该类的其它所有实例所见。也就是静态变量只有一份拷贝!这里就很明确了,如果是一个类被定义为static,那这个类只有一种可能就是静态<em>内部</em>类!最最简单的例子: I...
java中static详解
static修饰类中的变量 static修饰变量使得该变量有了静态属性,又叫类属性。这个变量会被保存在全局数据区(方法区–所有对象共享的区域) 在调用过程中通过类名调用,无需<em>实例化</em>出对象。 static是不能修饰方法中的变量的,因为方法(无论静态方法还是<em>普通</em>方法)是定义在栈中的,栈上定义的变量都是局部变量,而且方法是依赖与对象而静态变量不依赖对象。这不是很矛盾嘛。所有Java中规定局static修...
java静态类
如果一个类要被声明为static的,只能是静态<em>内部</em>类。
java静态类,块语句相关执行顺序
面试中碰到的一个面试题,其实我还记得我在《Java编程思想》中也看到过,可能当时还是理解的不够透彻,所以还是没有做对。 A类: public class A { { System.out.print(&quot;A&quot;); } static { System.out.print(&quot;B&quot;); } A() { Sys...
java之静态内部类/非静态类内部类的创建
package test; import test.TestClass.Inner; public class Implements { public static void main(String[] args) { TestClass test = new TestClass(); Inner inner = test.new Inner(); ...
JAVA静态成员和静态内部
    <em>静态类</em>(static class)即定义了静态方法,静态变量,静态代码块或者<em>内部</em><em>静态类</em>的类。这些静态成员不需要<em>实例化</em>即可直接引用。 静态方法:不需要<em>实例化</em>,可直接引用。 静态变量:不需要<em>实例化</em>,可直接引用。 静态代码块:在系统初始化时时使用 静态<em>内部</em>类:不能操作访问外部数据。 静态的类在运行时加载到内存中,不需要<em>实例化</em>,在类的<em>内部</em>也不能使用this。 1. 在类中生命一个方...
【Java基础】静态类
前几天在交流IOC的时候,提到了<em>静态类</em>的写法,我的一个误区<em>静态类</em> 长这个样子: public static class StaticClass{ //TODO }      然鹅,“事与愿违”,<em>静态类</em>直接在class前加入"static"在Java中是一种错误的写法,在北京工作的时候由于写过工具类就天真的认为java的世界中也是酱紫,那就正好整理下在java语言中<em>静态类</em>如何玩吧。
Java类中静态成员的初始化
//: initialization/StaticInitialization.java// Specifying initial values in a class definition./* *   2018年3月20日10:09:27 *   代码位置: java编程思想 P95 *    *   代码片目的,为了说明: *     无论创建多少个对象,静态数据都只占用一份存储区域。 *...
JAVA的静态变量、静态方法、静态类
静态变量和静态方法都属于静态对象,它与非静态对象的差别需要做个说明。 (1)Java静态对象和非静态对象有什么<em>区别</em>?       比对如下:                                          静态对象                                                        非静态对象      拥有属性:
再议单例模式和静态类
单例模式还是<em>静态类</em>,这是一个老话题了,从我刚开始接触Java的时候就看到这样的讨论。在这里我总结一下,也添加一点点新东西。   首先要澄清和<em>区别</em>一些概念,“<em>静态类</em>”和“所有方法皆为静态方法的类”。   严格说来,Java中的<em>静态类</em>,指的是“static class”这样修饰的类定义,语法上的要求,使得这样的类一定是<em>内部</em>类,换言之,“静态<em>内部</em>类”是对它的完整定义。静态<em>内部</em>类最大的好处在于可以...
java中类加载与静态变量、静态方法与静态代码块详解与初始化顺序
我们知道java中类的生命周期为装载、连接、初始化、使用和卸载五个过程,如下图所示:1.加载     我们编写一个java的源文件,经过编译后生成一个后缀名为.class的文件,这结合四字节码文件,java虚拟机就识别这种文件,java的生命周期就是class文件从加载到消亡的过程。 关于加载,其实,就是将源文件的class文件找到类的信息将其加载到方法区中,然后在堆区中<em>实例化</em>一个java.lan...
日常小结-java静态类及其应用
概述<em>静态类</em>的三个主要特效、常用的使用方式以及设计思想。
【小家java】静态类、静态方法、内部类、匿名内部类、非静态类的一些实践
1、概述 本文不论述java中值传递和引用传递之间的问题(有需求的可移步理解java中值传递和引用传递),而重点讨论Java中提供了4个级别的引用:强应用、软引用、弱引用和虚引用。这四个引用定义在java.lang.ref的包下。讲述这个话题的原因,也是我第一次在集合框架里看到WeakHashMap而被带进来,闲话不多说,直接进入主题~ 2、栗子 强引用( Final Refere...
Java静态类(static class)是什么意思?
<em>静态类</em>就是在类前声明一个static吗?如static class XXX,<em>静态类</em>主要用在什么地方?谁能给个<em>静态类</em>的例子?除了public static void main。
java中static类的作用
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。static关键字主要有两种作用:第一,为某特定数据类型或对象分配单一的存储空间,而与创建对象的个数无关。第二,实现某个方法或属性与类而不是对象关联在一起具体而言,在Java语言中,static主要有4中使用情况:成员变量、成员方法、代码块和<em>内部</em>类(1)s...
Java类的静态成员类
遇到多个构造器参数时要考虑用构建器: 静态工厂和构造器有个共同的局限性,它们都不能很好的扩展到大量的可选参数。 JavaBeans模式,在这种模式下调用一个无参数构造器来创建对象,然后调用setter方法来设置每个必要的参数,以及每个 相关的可选参数。 Builder模式,既能保证向重载构造器模式那样安全,也能保证像JavaBeans模式那么好的可读性。 静态<em>内部</em>类模式: package...
java中的静态类和嵌套类
在Java中类可以是静态的么? 在Java中类可以是静态的。在Java中有静态实例变量,静态方法,以及静态块,类也可以是静态的。在Java中我们可以在类中再次定义一个类。这种类被称为嵌套类。嵌套类外围的类被称为外部类。在Java中不能使最顶层类为<em>静态类</em>,而只有嵌套的类可以是<em>静态类</em>。 <em>静态类</em>与非<em>静态类</em>的<em>区别</em>? 下面列出了<em>静态类</em>与非<em>静态类</em>的主要<em>区别</em>
java中静态类和静态变量和静态方法分别有什么特点?
一、static  请先看下面这段程序:public class Hello{ public static void main(String[] args){ //(1) System.out.println(&quot;Hello,world!&quot;); //(2) } }  看过这段程序,对于大多数学过Java 的从来说,都不陌生。即使没有学过Java,而学过其它的高级...
java静态类与非静态类
一 . 静态<em>内部</em>类可以有静态成员,而非静态<em>内部</em>类则不能有静态成员。 二 . 静态<em>内部</em>类的非静态成员可以访问外部类的静态变量,而不可访问外部类的非静态变量; 三 . 非静态<em>内部</em>类的非静态成员可以访问外部类的非静态变量。  非<em>内部</em>类不能用static关键字修饰 参考: 静态<em>内部</em>类与非静态<em>内部</em>类的<em>区别</em> http://blog.csdn.net/fgakjfd/article/detail
java的静态方法可以直接用类名调用的理解
public class myClass{ public void fun(){ Helper.help(); } } public class Helper{ public static void help(){ System.out.println("静态方法"); } }因为该类的静态方法是程序启动时自动放在内存中了的,是属于程序
java什么时候使用静态类以及静态类的特点
这里的静态,指以static关键字修饰的,包括类,方法,块,字段。非静态,指没有用static 修饰的。静态有一些特点:1.全局唯一,任何一次的修改都是全局性的影响2.只加载一次,优先于非静态3.使用方式上不依赖于实例对象。4.生命周期属于类级别,从JVM 加载开始到JVM卸载结束。可参考 :http://blog.csdn.net/zhandoushi1982/article/details/8...
Java静态变量的初始化
Java静态变量的初始化 C/C++在脑海中的印象太深了,以至于一看到 static 的变量(Java中叫做:域),本能的以为它一旦初始化就不能改变了。 原来Java在还有 final 。 转自:http://blog.csdn.net/darxin/article/details/5293427 在网上看到了下面的一段代码: ...
JAVA 内部静态类--解析静态内部类的使用目的与限制
public class PrefixTrie { // supports 7-bit chars. private static final int SIZE = 128; Node root = new Node(); public void put(String prefix, Object value) { No
java 静态内部类的使用
Java基础第十二讲:面向对象基础(六)[<em>内部</em>类] http://android.yaohuiji.com/archives/3247 本讲内容:<em>内部</em>类 Java语言允许在类中再定义类,这种在其它类<em>内部</em>定义的类就叫<em>内部</em>类。<em>内部</em>类又分为:常规<em>内部</em>类、局部<em>内部</em>类、匿名<em>内部</em>类和静态嵌套类四种。我们<em>内部</em>类的知识在Android手机开发中经常用到。 一、常规<em>内部</em>类 所谓常规<em>内部</em>类,
为什么Java工具类方法为静态类
转自:Java静态工具类线程安全的一些建议基础:每个线程都有自己的线程栈,栈与线程同时创建,每一个虚拟机线程都有自己的程序计数器PC,在任何时刻,一个虚拟机线程只会执行一个方法的代码,这个方法称为该线程的当前方法,如果这个方法不是native的,程序计数器就保存虚拟机正在执行的字节码指令的地址。线程调用方法的时候会创建栈帧,用于保存局部变量表和操作数栈以及指向该类常量池的引用 静态方法虽然是同一个
JAVA中静态的使用及注意方法
1.static是一个修饰符,用来修饰成员被所有的对象所共享。 例如:类Person,country变量被static修饰,所以country能够被由该类创建的所有的对象所共享。在代码中,country的值本来是cn,后因p2更改了共享变量country的值,所以在两个对象中的值都发生改变 class StaticDemo{ public static void main(String
Java中的设计模式 - 适配器模式(接口适配器)
Java中的设计模式 - 适配器模式(接口适配器)应用场景:不想实现接口中的所有方法#1 - 创建接口/** * Created by 谭健 2017年7月2日 20:56:08 * 定义端口接口,提供通信服务 */ public interface Port { // 远程SSH端口22 public void SSH(); // 网络端口80 public vo
Java中的静态类以及嵌套类
原文地址: http://www.geeksforgeeks.org/static-class-in-java/ 在Java中类可以是静态的么? 在Java中类可以是静态的。在Java中有静态实例变量,静态方法,以及静态块,类也可以是静态的。在Java中我们可以在类中再次定义一个类。这种类被称为嵌套类。嵌套类外围的类被称为外部类。在Java中不能使最顶层类为<em>静态类</em>,而只有嵌套的类可
java对象——new对象的理解
学了好长时间的java对于java中的对象一直没有理清楚,今天楼主对java中的对象进行了整理,希望对大家有帮助。     理解和使用java中的对象,我们首先了解一下构造方法与对象的创建。  类是面向对象语言中最重要的一种数据,可以用类声明变量。面向对象语言中,用类声明的变量称为对象。 和基本数据类型不同,在声明对象后,还必须创建对象,即为声明的对象分配所拥有的的变量(确定对象所具有的属性)
Java中单例模式和静态类区别
转:http://www.2cto.com/kf/201311/260911.html 单例模式与<em>静态类</em>(一个类,所有方法为静态方法)是另一个非常有趣的问题,在《Java中有关单例模式的面试问题》博文中露掉了,由于单例模式和<em>静态类</em>都具有良好的访问性,它们之间有许多相似之处,例如,两者可以直接使用而无须创建对象,都可提交唯一实例,在一个非常高的高度上看起来它们都为是用于同样的任务。由于它们具有较多
Java 静态类
一、<em>静态类</em>的特点              静态是不需要建立对象而直接进被虚拟机放入方法区(三大区:栈内存、堆内存、               方法区)​      二、类如何使用              类被使用的前提就是有已经被建立的对象​      三、总结            <em>静态类</em>就是当程序一旦被执行,<em>静态类</em>直接被放入方法区,可以直接通过类名进行  
Java之静态内部类(static class)
标签: java static it Java之静态<em>内部</em>类(static class)在一个类中创建另外一个类,叫做成员<em>内部</em>类。这个成员<em>内部</em>类可以静态的(利用static关键字修饰),也可以是非静态的。一、静态<em>内部</em>类的使用目的。在 定义<em>内部</em>类的时候,在其前面加上一个权限修饰符static。这个<em>内部</em>类就变为了静态<em>内部</em>类。如在进行代码程序测试的时候,如果在每一个Java源文件中 都设置一个主方法(主方
java单例和静态类区别
Java中单例与静态的<em>区别</em>? <em>静态类</em>比单例具有更好的性能,因为静态方法在编译期绑定 再次,它们的<em>区别</em>是override的能力,因Java中的静态方法是不可以覆盖的,这就导致其木有太多的灵活性,另一面,你可通过继承的方式覆盖单例类中定义的方法 <em>静态类</em>很难模拟,因此难于单例测试,单例更容易模拟,因为也比<em>静态类</em>易于编写单元测试,不论神马单例期望神马,你都可以传递模拟对象,例如构造方法或方法参数 如
Java中垃圾回收和静态类
今天在网上看到一个讨论命题:当一个单例的对象长久不用时,会不会被jvm的垃圾收集机制回收。 答案为:单例模式中静态成员不会被垃圾回收机制回收。
static class 静态类
一般情况下是不可以用static修饰类的。如果一定要用static修饰类的话,通常static修饰的是匿名<em>内部</em>类。 在一个类中创建另外一个类,叫做成员<em>内部</em>类。这个成员<em>内部</em>类可以静态的(利用static关键字修饰),也可以是非静态的。由于静态的<em>内部</em>类在定义、使用的时候会有种种的限制。所以在实际工作中用到的并不多。 在开发过程中,<em>内部</em>类中使用的最多的还是非静态地成员<em>内部</em>类。不过在特定的情况
java中用静态方法返回类名
54powerman最初碰到这个问题,首先想到的是getClass()方法,如下尝试:public static String getClassName(){ String className=null; className=this.getClass().getName();//静态方法中不可访问变量 this return className;}结果失败。偶然发现有人利用异常处理可以获得,真是
Java---- 静态内部类与非静态内部类的区别
在面试中回答的很不全,所以再此做一个总结。1 static 静态修饰符在程序中任何变量或者代码都是在编译时由系统自动分配内存来存储的。 static修饰表示静态的,在类加载时JVM会把它放到方法区,被本类以及本类中所有实例所公用。在编译后所分配的内存会在一直存在,直到程序退出内存才会释放这个空间。如果一个被所有实例公用的方法被申明为static,那么就可以节省空间了,不用每个实例初始化的时候都被分
Java 静态内部类 与 内部区别
静态<em>内部</em>类的作用:只是为了降低包的深度,方便类的使用,静态<em>内部</em>类适用于包含类当中,但又不依赖于外在的类,不用使用外在类的非静态属性和方法,只是为了方便管理类结构而定义。在创建静态<em>内部</em>类的时候,不需要外部类对象的引用。非静态<em>内部</em>类有一个很大的优点:可以自由使用外部类的所有变量和方法一、非静态<em>内部</em>类:1、变量和方法不能声明为静态的。(类的编译顺序:外部类--静态方法或属性--<em>内部</em>类)2、<em>实例化</em>的时候需...
静态内部类和非静态内部类的区别
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;如果一个类中定义了静态成员变量和静态方法,那么静态方法可以访问静态成员变量,而无法访问非静态成员变量,并且静态成员变量和静态方法是随着类的加载而加载、非静态成员变量和方法的声明周期是由对象的声明周期控制的。 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;静态<em>内部</em>类和非静态<em>内部</em>类同静态方法和非静态方法类似。 为什么要使用<em>内部</em>类 &amp;nbsp;&amp;n...
Java中静态内部类和非静态内部类有什么区别
Java中的<em>内部</em>类是在Jdk1.1版本之后增加的,<em>内部</em>类是Java语言中一个比较重要的概念,如果能把<em>内部</em>类运用好,那么会明显增强Java程序的灵活性。 要想清楚static<em>内部</em>类和非static<em>内部</em>类的<em>区别</em>,首先要了解<em>内部</em>类的概念及特点,然后再进行一个全面的对比。 什么是<em>内部</em>类呢?简单的说就是在一个类的<em>内部</em>又定义了一个类,这个类就称之为<em>内部</em>类(Inner Class)。看一个简单的例子: 内...
android的内部类和静态内部类的区别
1.static静态修饰符 在程序中任何变量或者代码都是在编译时由系统自动分配内存来存储的。  static修饰表示静态的,在类加载时JVM会把它放到方法区,被本类以及本类中所有实例所公用。在编译后所分配的内存会在一直存在,直到程序退出内存才会释放这个空间。如果一个被所有实例公用的方法被申明为static,那么就可以节省空间了,不用每个实例初始化的时候都被分配到内存。2.<em>内部</em>类 定义在一个类内...
简述内部类、静态内部类、匿名内部类的区别
<em>内部</em>类:    成员<em>内部</em>类可访问外部类所有的方法和成员变量。    不能有静态的方法和成员变量。静态<em>内部</em>类:    只能访问外部类的静态成员变量与静态方法。    静态<em>内部</em>类的非静态成员可访问外部类的静态变量,而不可访问外部类的非静态变量。匿名<em>内部</em>类:    没有类名,没有class关键字也没有extends和implements等关键字修饰。    类的定义和<em>实例化</em>同时进行。...
Java面试题—内部类和静态内部类的区别
<em>内部</em>类和静态<em>内部</em>类的<em>区别</em> <em>内部</em>类: 1、<em>内部</em>类中的变量和方法不能声明为静态的。 2、<em>内部</em>类<em>实例化</em>:B是A的<em>内部</em>类,<em>实例化</em>B:A.B b = new A().new B()。 3、<em>内部</em>类可以引用外部类的静态或者非静态属性及方法。 静态<em>内部</em>类: 1、静态<em>内部</em>类属性和方法可以声明为静态的或者非静态的。 2、<em>实例化</em>静态<em>内部</em>类:B是A的静态<em>内部</em>类,A.B b = new A.B()。 3、静态<em>内部</em>类只能引用...
普通内部类和静态内部类总结
<em>普通</em><em>内部</em>类可以访问其外部类的各种类型成员,但是静态<em>内部</em>类只能访问静态成员 <em>普通</em><em>内部</em>类里面不能定义各种静态的成员(包括静态变量、静态方法、静态代码块和静态<em>内部</em>类),而静态<em>内部</em>类中则可以; 静态变量和静态方法会出现这个语法错误(static methods can only be declared in a static or top level type)意思就是static方法只能在静态或者顶级类
静态嵌套类和内部类的区别
[转自:http://www.blogjava.net/strawsoft/articles/258368.html] 一. 什么是嵌套类及<em>内部</em>类?  可以在一个类的<em>内部</em>定义另一个类, 这种类称为嵌套类(nested classes),它有两种类型:  静态嵌套类和非静态嵌套类.静态嵌套类使用很少, 最重要的是非静态嵌套类, 也即是被称作为 <em>内部</em>类(inner).嵌套类从JDK1.
四种内部类及详解,主要是内部类和静态内部类的差别
https://www.cnblogs.com/hasse/p/5020519.html 辅看这个: https://www.cnblogs.com/nzhbk/p/6489005.html <em>内部</em>类分为: 成员<em>内部</em>类、局部<em>内部</em>类(在类中的一个方法里定义了一个类)、静态嵌套类、匿名<em>内部</em>类 。 private Handler mHandler =new Handler(...
Java 枚举与类的区别
定义:枚举是指一组固定常量组成合法值的类型 首先是固定常量,一组有限常量集,比如一年的四个季节,太阳系的行星。其次,枚举是一种特殊的类型,定义了自己的一些规则,这些规则是建立在类规则之上的,是一种 type。 性质:枚举是真正的 final,客户端不允许创建枚举类的实例,也不能对其进行拓展 Java 枚举本质上是 int 值。只能通过公有的静态 final 域为枚举类导出实例。 public
java.lang.Enum类 与 enum关键字 的区别
使用 enum xxx{}这样声明的枚举类型都是继承自java.lang.Enum的 它的name()方法跟toString()方法默认是一样的 但是如果需要自定义返回此枚举名称的时候,优先调用toS
java内部类总结 问题:内部类、静态内部区别、使用场景?
问题:<em>内部</em>类、静态<em>内部</em>类<em>区别</em>、使用场景?1.静态<em>内部</em>类可以有静态成员(方法,属性),而非静态<em>内部</em>类则不能有静态成员(方法,属性)。2.静态<em>内部</em>类只能够访问外部类的静态成员,而非静态<em>内部</em>类则可以访问外部类的所有成员(方法,属性)。3.<em>实例化</em>方式不同:(1)<em>实例化</em>成员<em>内部</em>类“”通过外部类对象创建OutClassTest oc1 = new OutClassTest();OutClassTest.Inn...
Java内部类(inner Class)和嵌套类(static inner Class)也就是静态内部类的区别
<em>静态类</em>和嵌套类的<em>区别</em>,他们各有什么特点,常用的场合等等
Java中的静态内部
定义:静态<em>内部</em>类是 static 修饰的<em>内部</em>类 代码://外部类 public class HelloWorld { // 外部类中的静态变量score private static int score = 84; // 外部类中的静态变量a private static int a = 78; // 外部类中的非静态变...
java中的静态内部类与非静态内部类的联系
java中的静态<em>内部</em>类与非静态<em>内部</em>类的联系<em>区别</em>1. 从使用上说:静态<em>内部</em>类中才能有静态属性和静态方法,非静态<em>内部</em>类中不能有静态属性和静态方法。2. 从生命周期上说:静态<em>内部</em>随着外部类的加载而加载,不是伴随着外部类的对象产生而产生的。外部类的实例与静态<em>内部</em>类的实例没有任何关系的。而非静态<em>内部</em>类的实例是需要依赖外部类实例才能创建的。换句话说非静态<em>内部</em>类是附属在外部类实例基础之上的,需要先创建一个外部类的
Java 静态内部类 与 非静态内部类的区别?什么时候用静态内部类,又是什么时候用非静态内部类?
Java中<em>内部</em>类加载时间:一般是只有运到了才会初始化,而不是外部内加载的时候(不管是静态还是非静态<em>内部</em>类)。 注意到一个问题: <em>内部</em>类只有是静态的,其<em>内部</em>类中才能有静态属性和静态方法; 如果<em>内部</em>类非静态的,其<em>内部</em>类不能有静态属性和静态方法。 例子: public class OutClass { static{ System.out.println("OutCla
静态内部类和非静态内部区别
静态<em>内部</em>类可以创建静态的成员,而非静态的<em>内部</em>类不可以,原因:<em>内部</em>类相当于外部类的一个属性,非静态<em>内部</em>类中如果可以使用静态成员,但是非静态<em>内部</em>类是相当于非静态成员,是在类<em>实例化</em>的时候才可以使用的,所以在非<em>静态类</em>中定义静态变量有一点多余,所以不可以这样使用。但是在非静态<em>内部</em>类中可以定义static final int i=1;不知道怎么解释。 静态<em>内部</em>类只可以访问外部类中的静态成员变量与成员方法而非静
静态内部类和成员内部类的区别
如果你不需要<em>内部</em>类对象与其外围类对象之间有联系,那你可以将<em>内部</em>类声明为static。这通常称为嵌套类(nested class)。Static Nested Class是被声明为静态(static)的<em>内部</em>类,它可以不依赖于外部类实例被<em>实例化</em>。而通常的<em>内部</em>类需要在外部类<em>实例化</em>后才能<em>实例化</em>。想要理解static应用于<em>内部</em>类时的含义,你就必须记住,<em>普通</em>的<em>内部</em>类对象隐含地保存了一个引用,指向创建它的外围类
java 内部类和内部静态类
(1) 与一般<em>内部</em>类不同,在静态代码中不能够使用this操作,所以在静态<em>内部</em>类中只可以访问外部类的静态变量和静态方法。使用静态<em>内部</em>类的目的和使用<em>内部</em>类相同。如果一个<em>内部</em>类不依赖于其外部类的实例变量,或与实例变量无关,则选择应用静态<em>内部</em>类。 (2)  因为非静态<em>内部</em>类只能声明非静态成员或方法,而静态<em>内部</em>类则可拥有静态的成员和方法。 但静态<em>内部</em>类中只能引用其外部类的静态成员或变量。因为<em>内部</em><em>静态类</em>
java静态内部
转载:http://www.cnblogs.com/Alex--Yang/p/3386863.html    http://book.51cto.com/art/201202/317517.htm 如果一个类要被声明为static,只有一种情况,就是静态<em>内部</em>类。即外部类是不能被static修饰的。 静态<em>内部</em>类和<em>内部</em>类的<em>区别</em>: 1、静态<em>内部</em>类和静态方法一样,只能访问外部类的静
静态内部类中的静态变量和静态代码块是否依然有必要
-
Java内部类与静态内部类的区别
在阅读Java Collection Framwork时,LinkedList中有个静态<em>内部</em>类: private static class Node&amp;lt;E&amp;gt; { E item; Node&amp;lt;E&amp;gt; next; Node&amp;lt;E&amp;gt; prev; Node(Node&amp;lt;E&amp;gt; prev, E elem...
static静态类,final,Java中程序的加载和执行过程
final 意为 :最终的 不可改变的 在java中可以用来修饰类,属性和方法。 final用来修饰类,表示该类不可被继承。 final用来修饰变量,叫常量。表示该变量的值不可被修改,只能初始化一次 final用来修饰方法,表示该方法不可被重写。 我们可以从final的字面意思来理解这个关键字的用法,因为他意为不可改变的我们可以联想到用在类中它就不能被继承,用在变量中则不可被修改...
请问java什么时候用静态方法
我看大多数的程序都是用非静态方法,那如果我没有输入的话,在main里面调用非静态方法还要构造对象,这样不是很麻烦吗
java静态分配的理解
最近觉得自己的java基础知识有些忘了,所以闲暇时间巩固一下,看到了Java的静态多分配的概念,竟有些陌生了(个人觉得Java往往有很多高大上的概念,其实都是我们在实际应用中用到过的,但是说到这些概念我们就会无知感爆棚,有木有同感,面试的时候很多都是问概念的,虽然平时会用但是不懂这些概念的话会很吃亏),可能也有些人不知道静态多分配的概念,Java 是一种静态多分配、动态单分配的语言(C++也是),...
Java静态方法(类方法)的继承
Java静态方法、静态变量是可以被继承的 背景:最近因为个人工作的原因,转战到Java领域。在学习过程中发现,网上有关Java静态继承,都说不能继承,且子类静态方法重写说成是隐藏了父类方法云云的。 下面我来挑战一下,如果不对请高手指正;如果对了希望对静态继承困惑的程序员有所帮助 1.类与对象的关系,先来张图压压惊 这里先来说明一下 · Sub、Father为Java类结构
java项目启动加载一个类,执行一个方法。用static{}能做到吗?
-
java内部类的作用分析
提起Java<em>内部</em>类(Inner Class)可能很多人不太熟悉,实际上类似的概念在C++里也有,那就是嵌套类(Nested Class),关于这两者的<em>区别</em>与联系,在下文中会有对比。<em>内部</em>类从表面上看,就是在类中又定义了一个类(下文会看到,<em>内部</em>类可以在很多地方定义),而实际上并没有那么简单,乍看上去<em>内部</em>类似乎有些多余,它的用处对于初学者来说可能并不是那么显著,但是随着对它的深入了解,你会发现Java的...
幕后英雄的用武之地——浅谈Java内部类的四个应用场景
                                                                    幕后英雄的用武之地                                                        ——浅谈Java<em>内部</em>类的四个应用场景 Java<em>内部</em>类是Java言语的一个很重要的概念,《Java编程思想》花了很大的篇幅来
java内部类解析及应用场景简介
转自:http://blog.csdn.net/historyasamirror/article/details/6049073 所谓<em>内部</em>类,就是一个类的定义放在了另一个类定义的<em>内部</em>,如: [java] view plaincopy public class OuterClass {       private int outerData
oracleDSI408下载
ORACLE是一种适用于大型、中型和微型计算机的关系数据库管理系统,它使用SQL(Structured guery language)作为它的数据库语言。甲骨文公司(Oracle)是世界上最大的企业软件公司,向遍及145多个国家的用户提供数据库、工具和应用软件以及相关的咨询、培训和支持服务。甲骨文公司总部设在美国加利福尼亚州的红木城。甲骨文公司 1989年正式进入中国。 DSI是Data Server Internals的缩写,是Oracle公司内部用来培训Oracle售后工程师使用的教材. 这样的文档上通常都印着:Oracle Confidential:For internal Use O 相关下载链接:[url=//download.csdn.net/download/ilovemilk/2371979?utm_source=bbsseo]//download.csdn.net/download/ilovemilk/2371979?utm_source=bbsseo[/url]
Firebug使用教程下载
Firbug插件要配合firefox浏览器来使用,开发web,不用firebug是在是太out了。 下去下载个firefox,在选中 工具 ,点击 附加组件 ,右上角有一个search框,输入 firebug 、、、、、 装好之后,参考本教程就OK了 相关下载链接:[url=//download.csdn.net/download/levi12345/4089724?utm_source=bbsseo]//download.csdn.net/download/levi12345/4089724?utm_source=bbsseo[/url]
GSM移动信令网中移动应用部分_MAP_的监测下载
GSM移动信令网中移动应用部分_MAP_的监测,通信专业的必会知识,程控交换的核心内容 相关下载链接:[url=//download.csdn.net/download/a514223963/4274196?utm_source=bbsseo]//download.csdn.net/download/a514223963/4274196?utm_source=bbsseo[/url]
相关热词 c#串口测试应用程序 c# 匹配 正则表达式 c#防止窗体重绘 c#读写txt文件 c#挖地雷源代码 c#弹框选项 c# 移除 队列 c# 密码写入配置文件 c# 获取可用内存大小 c# 嵌入excel编辑
我们是很有底线的