初学java之接口基础
时间:2022-05-05
本文章向大家介绍初学java之接口基础,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1 /*
2 长城牌电视机
3 联想奔月5008PC机
4 */
5
6
7 package st;
8 //接口回调实例
9 interface ShowMessage
10 {
11 void 显示商标 (String s);
12 }
13 class TV implements ShowMessage
14 {
15 public void 显示商标(String s)
16 {
17 System.out.println(s);
18 }
19 }
20 class PC implements ShowMessage
21 {
22 public void 显示商标 (String s)
23 {
24 System.out.println(s);
25 }
26 }
27 public class example_1
28 {
29 public static void main(String args[])
30 {
31 ShowMessage sm; //声明接口变量
32 sm=new TV(); //接口变量中存放对象的引用
33 sm.显示商标("长城牌电视机"); //接口回调
34 sm=new PC();
35 sm.显示商标("联想奔月5008PC机");
36 }
37 }
1 /*
2 * 对于接口理解的一个列子
3 * 详情请关注龚细军(Gxjun)的博客
4 * */
5 package st;
6
7 abstract class Motorvehicles
8 {
9 abstract void brake();
10 }
11 // 接口1
12 interface ControlTemperature
13 {
14 void ControlAirTemperature();
15 }
16 //接口2
17 interface MonenyFare
18 {
19 void Charge();
20 }
21 class Bus extends Motorvehicles implements MonenyFare
22 {
23 void brake()
24 {
25 System.out.println("公交车来啦!,嘟嘟");
26 }
27 public void Charge()
28 {
29 System.out.println("公交车收费为5毛");
30 }
31 }
32 class taxi extends Motorvehicles implements MonenyFare , ControlTemperature
33 {
34
35 void brake()
36 {
37 System.out.println("taxi来啦!,嘟嘟");
38 }
39 public void Charge()
40 {
41 System.out.println("taxi收费为5毛");
42 }
43 public void ControlAirTemperature()
44 {
45 System.out.println("taxi执行温度控制开关!");
46 }
47 }
48 class Cinema implements MonenyFare , ControlTemperature
49 {
50 public void Charge()
51 {
52 System.out.println("电影院收费为5毛");
53 }
54 public void ControlAirTemperature()
55 {
56 System.out.println("电影院执行温度控制开关!");
57 }
58 }
59 public class example_1 {
60 public static void main(String args[])
61 {
62 Bus myBus = new Bus();
63 taxi mytaxi = new taxi();
64 Cinema mycinema = new Cinema();
65 myBus.brake();
66 myBus.Charge();
67 mytaxi.brake();
68 mytaxi.Charge();
69 mytaxi.ControlAirTemperature();
70 mycinema.Charge();
71 mycinema.ControlAirTemperature();
72 }
73 }
/*
公交车来啦!,嘟嘟
公交车收费为5毛
taxi来啦!,嘟嘟
taxi收费为5毛
taxi执行温度控制开关!
电影院收费为5毛
电影院执行温度控制开关!
*/
接口与多态:
1 /*
2 11.23 22.78
3 a和b的算术平均值为:17.005000000000003
4 a和b的几何平均值为:15.99435525427643
5
6 */
7
8
9 package st ;
10 import java.util.Scanner;
11 interface c_average
12 {
13 public double average(double a, double b);
14 }
15 // 求算术平均值
16 class A implements c_average
17 {
18 public double average(double a , double b)
19 {
20 return (a+b)/2;
21 }
22 }
23 class B implements c_average
24 {
25 public double average(double a,double b)
26 {
27 return Math.sqrt(a*b);
28 }
29 }
30 public class example_1
31 {
32 public static void main(String args[])
33 {
34 Scanner reader=new Scanner(System.in);
35 double a,b;
36 a=reader.nextDouble();
37 b=reader.nextDouble();
38 A mya = new A();
39 System.out.println("a和b的算术平均值为:"+mya.average(a, b));
40 B myb=new B();
41 System.out.println("a和b的几何平均值为:"+myb.average(a,b));
42 }
43 }
44
- 【Spring实战】—— 5 设值注入
- 科学家预测:未来100万年人类将变成半机械人类
- 【Spring实战】—— 8 自动装配
- 【Spring实战】—— 7 复杂集合类型的注入
- 【Spring实战】—— 6 内部Bean
- 几款可替代Dreamweaver的HTML5开发工具
- Linux下的Telnet设置方法介绍
- 2017年11月互联网和相关服务业保持快速增长
- 深度学习胸部x射线
- C+实现神经网络之壹—Net类的设计和神经网络的初始化
- 死亡不可避免,但何时死,人工智能或有发言权
- 打开手机的这个功能,微信支付宝不怕盗刷!
- 手把手教你cuda5.5与VS2010的编译环境搭建
- Apache实现反向代理负载均衡
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- MySQL系列之二进制日志Binlog学习笔记
- jQuery 效果
- jQuery 属性操作
- jQuery 文本属性值
- 10.4【前端开发】页面布局:如何理解 “CSS 视觉格式化模型”?
- Android Material UI控件之ShapeableImageView
- jQuery 元素操作
- jQuery 事件注册和事件处理
- 10.5 块级盒子模型(原盒子模型):两种盒子有什么不同?
- Android Material UI控件之MaterialButton
- jQuery (事件、拷贝)对象
- 10.6 border-color简写属性:如何理解四值语法?
- jQuery 插件
- dotnet 基于 dotnet format 的 GitHub Action 自动代码格式化机器人
- 10.7 border-width边框粗细:outline与border有什么不同?