Java 静态内部类作用?

Python018

Java 静态内部类作用?,第1张

1、变值权限修饰作用,在定义内部类的时候,可以在其前面加上一个权限修饰符static。此时这个内部类就变为了静态内部类。

2、在某些特殊的情况下,少了这个静态内部类还真是不行。如在进行代码程序测试的时候,如果在每一个Java源文件中都设置一个主方法(主方法是某个应用程序的入口,必须具有),那么会出现很多额外的代码。

3、最主要的时这段主程序的代码对于Java文件来说,只是一个形式,其本身并不需要这种主方法。但是少了这个主方法又是万万不行的。在这种情况下,就可以将主方法写入到静态内部类中,从而不用为每个Java源文件都设置一个类似的主方法。

这对于代码测试是非常有用的。在一些中大型的应用程序开发中,则是一个常用的技术手段。

扩展资料

例如:

对于两个类,拥有相同的方法:

class People{

run()

}

interface Machine{

run()

}

此时有一个robot类:

class Robot extends People implement Machine.

此时run()不可直接实现。

interface Machine{

void run()

}

class Person{

void run(){

System.out.println("run")

}

}

class Robot extends Person{

private class MachineHeart implements Machine{

public void run(){

System.out.println("heart run")

}

}

public void run(){

System.out.println("Robot run")

}

Machine.getMachine(){returnnew MachineHeart()

}

class Test{

publicstaticvoid main(String[] args){

Robot robot=new Robot()

Machine m=robot.getMachine()

m.run()

robot.run()

}

}

参考资料来源:百度百科-静态内部类

区别如下:

static 表示静态的,从始至终只获得一块内存空间。而且这块空间的资源还具有“全局性”,就是说所有的成员都可以无条件引用,另外,static修饰的不用程序调用,只要该类被执行,static修饰的也被执行。

如最常见的,Public static void main(){};又如 static int a那么所有的成员都可以引用a.

final 表示最终的,它修饰的类不能有子类。它修饰的变量是不可变的常数,所以final的变量要立刻赋值。如:class final A {}类A就不能被别的类继承;final String a=“abc”那么a永远只能是abc.

fianl static String a=“abc”,那么a不但是一个常数,还是一个全局常数。

java作用:

网络应用程序开发,例如:网上银行(中国银行,建设银行,工商银行的网上银行都是用J2EE开发出来的,你看看他网银的网页的后缀名JSP就知道),网页游戏等。

企业管理软件,现在很流行的B/S(浏览器/服务器)架构管理程序很多就是用J2EE开发的。

手机游戏,你看到那些手机游戏安装文件的后缀名.jar了吗?就是这JAVA开发出来的标志。开发这些东西一般用JAVA ME(J2ME)

嵌入式开发,例如给电视机顶盒,小型家电写程序。

不可以声明类为静态类的。

解释:静态类是没有实际意义的,而且运行初始化还要占用大量内存,而且假如有静态类,不能被重写,不能被创建,没啥实际意义。

Java是由Sun Microsystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。由James Gosling和同事们共同研发,并在1995年正式推出。Java最初被称为Oak,是1991年为消费类电子产品的嵌入式芯片而设计的。1995年更名为Java,并重新设计用于开发Internet应用程序。

用Java实现的HotJava浏览器显示了Java的魅力:跨平台、动态Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Javaapplet。另一方面,Java技术也不断更新。Java自面世后就非常流行,发展迅速,对C++语言形成有力冲击。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。