菜鸟求教:这种static写法是什么意思

Aaron9979215 2007-04-19 09:43:18
class A
{
......
static final void add(String entity, int value)
{
.......
}
......
static
{
add(" ",160)
}
}


请问:(1)第二个static这样写是什么意思?
(2)在html实体字符里" "与160之间是什么关系?
...全文
524 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
junit777 2007-04-20
  • 打赏
  • 举报
回复
to daniel_kaka():
这里有个例外情况,如果你调用类的静态方法,那么静态块的内容也会被调用,而不需要实例化对象。
CHENXIANJUNJUN 2007-04-19
  • 打赏
  • 举报
回复
楼上的都说的很清楚了!
顶下!
daniel_kaka 2007-04-19
  • 打赏
  • 举报
回复
静态块里的代码不一定是第一次被加载时执行,
确切的说应该是第一次实例化的时候执行~
因为他的执行和类的加载方式有关:
看看下面的:
1,测试类:
package com.daniel.test;

public class TestStatic {
static{
System.out.println("执行静态块!");
}
public void print(){
System.out.println("执行TestStatic.print()!");
}
}
2,主类:
package com.daniel.test;
public class StaticTest {
public static void main(String[] args) throws Exception {
StaticTest st = new StaticTest();
System.out.println("准备加载com.daniel.test.TestStatic...");
Class clazz = st.getClass().getClassLoader().loadClass("com.daniel.test.TestStatic");
System.out.println("加载com.daniel.test.TestStatic成功!");
System.out.println("准备实例化com.daniel.test.TestStatic...");
TestStatic ts = (TestStatic)clazz.newInstance();
System.out.println("实例化com.daniel.test.TestStatic成功!");
ts.print();
}
}

3,执行结果:
准备加载com.daniel.test.TestStatic...
加载com.daniel.test.TestStatic成功!
准备实例化com.daniel.test.TestStatic...
执行静态块!
实例化com.daniel.test.TestStatic成功!
执行TestStatic.print()!


从结果很明显看出,静态块的执行是类第一次实例化的时候进行的~~~~~
而 不是 大家常说的第一次加载类的时候执行的!!!!!
lm_pla 2007-04-19
  • 打赏
  • 举报
回复
第二个static是静态代码块
fdinor 2007-04-19
  • 打赏
  • 举报
回复
匿名内部类,不知道是不是
zhscnd 2007-04-19
  • 打赏
  • 举报
回复
哦,又学到一点了
WIN_ANGEL 2007-04-19
  • 打赏
  • 举报
回复
static
{
add(" ",160)
}
被成为静态块 它在类加载的时候就会执行 通过它调用add方法 执行方法里的语句
laiwusheng 2007-04-19
  • 打赏
  • 举报
回复
static块内的代码只在JVM第一次加载该类的时候运行
首先调用的是static静态快的代码,然后调用启动方法.而static块的执行顺序是由代码的编写顺序执行的过程.
junit777 2007-04-19
  • 打赏
  • 举报
回复
第二个static是静态块,类加载(不管是不是需要实例化)的时候会先调用到。
iwillrockyou 2007-04-19
  • 打赏
  • 举报
回复
你没有把add的方法体内的东西写出来,回答不了你" "与160之间有什么关系;
只知道" "在html中是空格。。。
第二个static的用噶也没有看过。。。是内部类?不清楚。。。等高手。。。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧