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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郑雪 中级黑马   /  2013-5-1 15:24  /  1582 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 郑雪 于 2013-5-2 10:35 编辑

接口中有没有默认的空参数的构造函数?

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

6 个回复

倒序浏览
接口没有构造函数。接口里面的方法都是抽象的,接口不能new。
回复 使用道具 举报
本帖最后由 吴东泽 于 2013-5-1 15:41 编辑

接口中无法定义构造函数,也就没有默认的构造函数。你可以看下api
回复 使用道具 举报
接口中是没有构造函数的,接口都是抽象的,只有实现接口的非抽象类里面才有构造函数的。

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
你得了解构造函数的作用,简单说,构造函数是用来创建实例对象的,如果接口中含有构造函数的话,那么就能创建对象,但是我们说接口是不能创建对象的,所以里面没有构造函数
从另一个角度想,接口是抽象的,既然抽象的,当然不能示例化了,方法都是抽象的,那么构造函数是实现了的特殊的方法,不是抽象的,所有没有构造函数
同理,你想想抽象类有没有构造函数呢?
希望可以帮到楼主哦,嘿嘿
回复 使用道具 举报
接口有没有应该无所谓吧,
1、接口要个构造函数干什么?又不能直接new
2、接口就算有,实现它的类也调用不到啊,super是父类,访问不到接口
3、实现类是有默认构造函数,但是那是它自带的,从哪儿来的谁也不知道

总结:
不知道有没有,无从考证,但也没必要考证,用不上
回复 使用道具 举报
        接口里面的方法都是抽象的  所以他是不能创建对象的  要想创建对象 需要子类对接口进行实例化,也就是说必须把接口里面的方法进行重写。
interface Inter{  //接口
       
        public abstract void show();
}

class Test implements Inter{
       
        public void show(){};   //子类对接口的抽象方法进行重写  才可以创建对象
}

public class TestInter{
        public static void main(String[]args){
                Test t = new Test();
               
        }
}

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马