写过接口吗?初学者回答interface,面试官说此接口非彼接口 - 蒙特利尔法语B2面试一对一教育微信fundes - 蒙特利尔回国行李-新加园 - Powered by Discuz!
查看: 868|回复: 2

写过接口吗?初学者回答interface,面试官说此接口非彼接口

[复制链接]

19万

主题

40万

帖子

109万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1096623
发表于 2021-5-10 19:52:51 | 显示全部楼层 |阅读模式
提示您:未获得智伍应用正式版的授权,部分功能受到影响!



尊敬的用户,您好!!


非常感谢您能安装智伍应用旗下的产品,为了产品的可持续发展和升级,云采集已经开始按天收费,建议购买200天,免费赠送400天,一共600天,平均每天仅需1.67元。


向用户收费是为了给用户更可靠的保障和服务,所收取的费用主要用于产品的正常运作、不断研发和改进,希望各位用户能够理解和支持。



购买正式版授权请打开下面的网址自助购买:
www.zhiwu55.com/authorization/buy_end_time.php?hzw_appid=9A8E4148CA303E563C85CDA0B7C6508D



购买之后,自动开通正式版授权,新采集的内容不会再出现未购买授权的提示信息,同时智伍应用旗下所有含云采集功能的产品,都无需再次购买云采集的正式版授权,即云采集的授权可以在智伍应用的各个产品那里通用!


如果您已经购买了正式版,还是会出现未购买授权的提示,或者有其它问题,请联系智伍应用官方在线客服QQ/微信:2085244671




初学者认知误区:经常听见一些大佬讲接口,他以为是interface。其实不是,此接口非彼接口。


给初学者解答:通常企业中程序员之间交流的接口是通讯接口(后期再做解释),不是interface。Interface是为了设计上做扩展,也是初学者必须掌握的基础知识。
Java 接口

接口(Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法
接口的声明
接口的声明语法格式如下:
[可见度] interface 接口名称 [extends 其他的接口名] {
// 声明变量
// 抽象方法
}
Interface关键字用来声明一个接口。下面是接口声明的一个简单例子。
/* 文件名 : DemoInterface.java */
import java.lang.*; //引入包
public interface DemoInterface {
//任何类型 final, static 字段
//抽象方法
}
接口有以下特性:
接口是隐式抽象的,当声明一个接口的时候,不必使用abstract关键字。
接口中每一个方法也是隐式抽象的,声明时同样不需要abstract关键字。
接口中的方法都是公有的。
接口的实现
当类实现接口的时候,类要实现接口中所有的方法。否则,类必须声明为抽象的类。类使用implements关键字实现接口。在类声明中,Implements关键字放在class声明后面。
实例如下:
Animal.java 文件代码:
...implements 接口名称[, 其他接口名称, 其他接口名称..., ...] ...
/* 文件名 : Dog.java */
public class Dog implements Animal{
public void eat(){
System.out.println("Dog eats");
}
public static void main(String args[]){
Dog d = new Dog ();
d.eat();
}
}
重写接口中声明的方法时,需要注意以下规则:
类在实现接口的方法时,不能抛出强制性异常,只能在接口中,或者继承接口的抽象类中抛出该强制性异常。
类在重写方法时要保持一致的方法名,并且应该保持相同或者相兼容的返回值类型。
如果实现接口的类是抽象类,那么就没必要实现该接口的方法。
在实现接口的时候,也要注意一些规则:
一个类可以同时实现多个接口。
一个类只能继承一个类,但是能实现多个接口。
一个接口能继承另一个接口,这和类之间的继承比较相似。
接口的继承

一个接口能继承另一个接口,和类之间的继承方式比较相似。接口的继承使用extends关键字,子接口继承父接口的方法。
// 文件名: Grandfather.java
public interface Grandfather
{
public void setSaveMoney(double money);
}
// 文件名: Father.java
public interface Father extends Grandfather
{
public void setSaveHouse (int num);
}
// 文件名: Son.java
public interface Son extends Father
{
public void setSaveCulture ();
}
Son接口自己声明了一个方法,从Father接口继承了两个方法,这样,实现Son接口的类需要实现三个方法。
接口的多继承

在Java中,类的多继承是不合法,但接口允许多继承。
public interface Son extends Father,Grandfather
接口特点

1.接口可以多继承
2.接口的方法声明必须是 public abstract 即便不写默认也是
3.接口里面不能包含方法具体实现
4.类实继承接口必须实现接口里申明的全部方法,除非该类是抽象类
5.类里面可以声明 public static final 修饰的变量
6.接口不能被实例化,但是可以被实现类创建
什么时候使用抽象类和接口

1、 如果你拥有一些方法并且想让它们中的一些有默认实现,那么使用抽象类吧。
2、 如果你想实现多重继承,那么你必须使用接口。由于Java不支持多继承,子类不能够继承多个类,但可以实现多个接口。因此你就可以使用接口来解决它。
3、如果基本功能在不断改变,那么就需要使用抽象类。如果不断改变基本功能并且使用接口,那么就需要改变所有实现了该接口的类。
4、在 JDK1.8,允许我们给接口添加两种非抽象的方法实现:
1、默认方法,添加 default 修饰即可;
2、静态方法,使用 static 修饰;示例如下:
interface Test{
//这个是默认方法
default String get(String aa){
System.out.println("我是jdk1.8默认实现方法...");
return "";
}
//这个是静态方法
static void staticmethod(){
System.out.println("我是静态方法");
}
}
调用得话,静态方法只能通过接口名调用,不可以通过实现类的类名或者实现类的对象调用,default 方法只能通过接口实现类的对象来调用。
接口的含义理解

接口可以理解成统一的协议, 而接口中的属性也属于协议中的内容。但是接口的属性都是公共的,静态的,最终的。
接口的成员特点:
1、成员变量只能是常量,默认修饰符 public static final
2、成员方法只能是抽象方法。默认修饰符 public abstract所以,Java 接口中,使用变量的时候,变量必须被赋值。
//所以接口定义属性
public interface People {
int age=10;
String name="输出名字"; // 接口里面定义的成员变量都是 public static final 修饰
public void eat();  
}
所有的变量必须给出初始值,且绝对不会被修改,因为隐藏的修饰符为 public static final。
Java 抽象类和接口总结

1、abstract class 在 Java 语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个 interface。
2、在 abstract class 中可以有自己的数据成员,也可以有非 abstarct 的成员方法,而在 interface 中,只能够有静态的不能被修改的数据成员(也就是必须是 static final 的,不过在 interface 中一般不定义数据成员),所有的成员方法都是 abstract 的。
3、abstract class 和 interface 所反映出的设计理念不同。其实 abstract class 表示的是 "is-a" 关系,interface 表示的是 "has-a" 关系。
4、实现抽象类和接口的类必须实现其中的所有方法。抽象类中可以有非抽象方法。接口中则不能有实现方法。
5、接口中定义的变量默认是 public static final 型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值。
6、抽象类中的变量默认是 friendly 型,其值可以在子类中重新定义,也可以重新赋值。
7、接口中的方法默认都是 public,abstract 类型的。
结论: abstract class 和 interface 是 Java 语言中的两种定义抽象类的方式,它们之间有很大的相似性。但是对于它【*****智伍应用提示您:未购买正式版授权,功能受到影响!!请根据最上面的引导提示,自助购买正式版授权,自动开通!!在线客服微信:ccccyyyy4444,官方网站:zhiwu55.com*****】 念本质的理解、对于设计意图的反映是否正确、合理,因为它们表现了概念间的不同的关系(虽然都能够实现需求的功能)。这其实也是语言的一种的惯用法,希望读者朋友能够细细体会。
回复

使用道具 举报

19万

主题

40万

帖子

109万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1096623
 楼主| 发表于 2021-5-10 20:22:51 | 显示全部楼层
是restful接口吧
回复

使用道具 举报

19万

主题

40万

帖子

109万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1096623
 楼主| 发表于 2021-5-10 20:52:51 | 显示全部楼层
转发了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | vip会员注册

本版积分规则

⚠️

AI客服助手

×
AI
您好!我是AI客服助手,有什么可以帮助您的吗?

请先登录后使用AI客服助手

立即登录
内容由观星云AI大模型生成,仅供参考,相关风险需自行承担。

关于我们 | 联系我们| 招贤纳士 | 友情链接 | 客服中心| 网站地图

快速回复 返回顶部 返回列表