JAVA接口问题 我想知道:设计接口的初衷是什么? 使用接口有哪些好处? 接口存在的意义何在? 书上的解释不够详细,谁能给我一通俗详细的解释吗??谢谢!!大侠们 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 去看 java 编程思想 关于接口的章节,最好把多态多也看了.应该有些帮助. 接口为什么存在呢?一个众所周知的理由就是为了实现多重继承,这是C++里面的一个概念。由于每个类都有一个具体实现,多重继承会使你背上很沉重的包袱,也正是这个原因,java拒绝类的多重继承。然而这个概念其实是必要的,生活中也经常会出现x既是A又是B的现象,所以java利用接口来实现这种情况,因为接口没有任何具体实现,所以就没有任何与接口相关的存储,这里就避免了C++里出现的负担太重的问题。这个理由也可以描述为:为了能够使一个对象向上转型为多个基类型。还有第二个理由,这与抽象类是一致的,就是防止客户端程序员创建该类的对象。正因如此,我们就要明确一下,什么时候该用接口,什么时候该用抽象类。可以说接口既有接口的好处,又有抽象类的好处,那么如果我们要创建不带任何方法定义和成员变量(ps:接口可以定义数据成员,但默认是static final类型的,即他是一个常量)的基类,那就选择接口。事实上,当我们在创建基类的时候,首先应该想到是否可以让他是一个接口,只有在你必须要有方法定义或成员变量这样的限制的时候,才应该选择抽象类,或者更进一步,使其成为一个具体类。 同意樓上cybcha的觀點,“接口就是用来管理类的”。接口的“用戶”是程序員(即使用你所設計的類的人),而不是我們通常概念上的用戶,即終端用戶。只有當你把程序員當作你的用戶時,你才能真正體會接口的作用。把接口的作用理解為實現多繼承,絕對是一個天大的誤解。 请大侠帮忙! 【急】解析不规则excel 用什么来实现 GUI里面的 标签页 推荐本比较好的java编程思想BOOK sqlserver2k 使用jdbc调用存储过程返回游标 找好多天找不到正解! 如何将窗口程序最小化到任务栏? .Jar包 独立运行问题!帮忙啊!! java基础问题,关于中文输出。。 JAVA课程设计,紧急求助北京的朋友,在线等!给分又 加 报酬! 如何区别一个字符是英文还是汉字?? 【java】 多重修饰符修饰某个类/方法/域 JDK1.5以前的JDK版本里有什么方法可以利用给定的父类的实例对象和子类的类名将父类强制转换为子类实例啊(反射方面的)?
一个众所周知的理由就是为了实现多重继承,这是C++里面的一个概念。由于每个类都有一个具体实现,多重继承会使你背上很沉重的包袱,也正是这个原因,java拒绝类的多重继承。然而这个概念其实是必要的,生活中也经常会出现x既是A又是B的现象,所以java利用接口来实现这种情况,因为接口没有任何具体实现,所以就没有任何与接口相关的存储,这里就避免了C++里出现的负担太重的问题。这个理由也可以描述为:为了能够使一个对象向上转型为多个基类型。
还有第二个理由,这与抽象类是一致的,就是防止客户端程序员创建该类的对象。正因如此,我们就要明确一下,什么时候该用接口,什么时候该用抽象类。可以说接口既有接口的好处,又有抽象类的好处,那么如果我们要创建不带任何方法定义和成员变量(ps:接口可以定义数据成员,但默认是static final类型的,即他是一个常量)的基类,那就选择接口。事实上,当我们在创建基类的时候,首先应该想到是否可以让他是一个接口,只有在你必须要有方法定义或成员变量这样的限制的时候,才应该选择抽象类,或者更进一步,使其成为一个具体类。