A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 付家辉 中级黑马   /  2015-3-13 16:42  /  1600 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Java匿名构造方法与静态代码块的区别,写法。

7 个回复

倒序浏览
JAVA没有匿名构造方法。。。。。。构造方法必须是类名
回复 使用道具 举报
JAVA应该是没有一种叫匿名构造方法的函数,只有一种匿名内部类。例如:
public class Parcel6 {
        public Contents cont() {
                return new Contents() {
                     private int i = 11;
   
                     public int value() {
                            return i;
                     }
              }; // 在这里需要一个分号
        }
   
        public static void main(String[] args) {
                Parcel6 p = new Parcel6();
                Contents c = p.cont();
        }
}

而静态代码块
class ...
{
       static
       {
       .......
       ........
       ........
       }
}
在这个类第一次被调用或实例化的时候就会被执行。
静态代码块只会执行一次,一般会用来初始化一些值,并且在所有对象中全局共享。
就像Car中颜色和内部零件不同但是他们都是四个轮胎一样,那么轮胎就可以写在里面!
回复 使用道具 举报
http://www.cnblogs.com/sophine/p/3531282.html 这个帖子可以看一看
回复 使用道具 举报
你说的是构造代码块把
回复 使用道具 举报
你说的是构造代码块吧? 与静态代码块的区别就是一个用static修饰,一个用
回复 使用道具 举报
hamesksk 发表于 2015-3-13 16:54
JAVA没有匿名构造方法。。。。。。构造方法必须是类名

有,匿名构造方法必须在所有构造方法之前运行。操作:{   }
回复 使用道具 举报
android-liu 发表于 2015-3-14 03:15
你说的是构造代码块把

不是,构造静态代码块是static{    };
匿名构造方法在类所有构造方法之前运行。即{    }
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马