接口演示

166天前 · 未来与梦 · 167次阅读

注!:使用时请放在“jieko”包内,并将文件名设置为“jieko”

版本更迭查看最新版等请到奶糖的github查看奶糖的库

粗略版

粗略版(点击打开)

package jieko;
import java.util.Scanner;//引用Scanner类用于输入
/*接口类似与抽象类,
但是一个类可以实现多个接口,
一个类只能继承一个抽象类
 */
/*##########################by milkcandy##########################*/
//单接口
interface shuzhi {//接口
    double s();//计算面积
    double l();//计算周长
}
class juxing1 implements shuzhi {//实现接口
    double x, y;
    public void juxing(int x, int y) {//初始化长和宽
        this.x = x;
        this.y = y;
    }
    @Override
    public double s() {//计算面积
        return x*y;
    }
    @Override
    public double l() {//计算周长
        return 2*x+2*y;
    }
}
//多接口
interface shuchu{
    default void shuchu1(double a){// 默认方法,提供一个默认的打印信息实现,可重写
        System.out.println("体积"+a+"\t默认方法");
    }
    static void shuchu2(double a){// 静态方法,用于创建一个通用的打印消息,可不创建对象引用
        System.out.println("周长"+a+"\t静态方法");
    }
}
class juxing2 implements shuzhi,shuchu {//实现多接口
    double x, y;
    public void juxing(int x, int y) {//初始化长和宽
        this.x = x;
        this.y = y;
    }
    @Override
    public double s() {//计算面积
        return x*y;
    }
    @Override
    public double l() {//计算周长
        return 2*x+2*y;
    }
}
public class jieko {
    public static void main(String[] args) {
        System.out.println("长方形面积周长计算机兼接口演示");
        Scanner sc = new Scanner(System.in);
        juxing1 j1 = new juxing1();
        juxing2 j2 = new juxing2();//创建对象
        System.out.print("输入长");
        int x = sc.nextInt();//输入长
        System.out.print("输入宽");
        int y = sc.nextInt();//输入宽
        System.out.print("输入序号\t1.单接口无输出\t2.多接口有输出");
        int n = sc.nextInt();//选择
        if(n==1){//进入单接口,无输出的,进行测试
            j1.juxing(x,y);//初始化
            System.out.println("体积"+j1.s());//类中无输出,所有这里自己写输出
            System.out.println("周长"+j1.l());
        }
        else if(n==2){
            j2.juxing(x,y);
            j2.shuchu1(j2.s());//类中有输出,
            shuchu.shuchu2(j2.l());//静态方法可以直接引用
        }
    }
}

详解版

详解版(点击打开)

package jieko; // 定义包名为 jieko

import java.util.Scanner; // 导入 Scanner 类,用于从控制台获取用户输入

/* 接口类似于抽象类,
   但是一个类可以实现多个接口,
   一个类只能继承一个抽象类
 */
/*##########################by milkcandy##########################*/

// 单接口
interface shuzhi { // 定义一个接口 shuzhi
    double s(); // 抽象方法,用于计算面积
    double l(); // 抽象方法,用于计算周长
}

// 实现 shuzhi 接口的类
class juxing1 implements shuzhi { 
    double x, y; // 定义两个成员变量,分别表示矩形的长和宽

    // 初始化长和宽的方法
    public void juxing(int x, int y) { 
        this.x = x; // 将传入的参数 x 赋值给成员变量 x
        this.y = y; // 将传入的参数 y 赋值给成员变量 y
    }

    @Override
    public double s() { // 实现接口中的 s() 方法,计算矩形的面积
        return x * y; // 面积公式:长 × 宽
    }

    @Override
    public double l() { // 实现接口中的 l() 方法,计算矩形的周长
        return 2 * x + 2 * y; // 周长公式:2 × 长 + 2 × 宽
    }
}

// 接口的继承
interface shuchu { // 定义一个接口 shuchu,用于输出计算结果
    // 默认方法,提供一个默认的打印信息实现,子类可以重写
    default void shuchu1(double a) { 
        System.out.println("体积" + a + "\t默认方法"); // 打印体积信息
    }

    // 静态方法,用于创建一个通用的打印消息,可以直接通过接口名调用
    static void shuchu2(double a) { 
        System.out.println("周长" + a + "\t静态方法"); // 打印周长信息
    }
}

// 继承 shuchu 接口的子接口
interface shuchu2 extends shuchu { 
    // 默认方法,输出接口继承的信息
    default void shuchu2() { 
        System.out.println("这里是接口的继承"); // 打印接口继承的信息
    }
}

// 多接口实现类
class juxing2 implements shuzhi, shuchu2 { // 实现 shuzhi 和 shuchu2 接口
    double x, y; // 定义两个成员变量,分别表示矩形的长和宽

    // 初始化长和宽的方法
    public void juxing(int x, int y) { 
        this.x = x; // 将传入的参数 x 赋值给成员变量 x
        this.y = y; // 将传入的参数 y 赋值给成员变量 y
    }

    @Override
    public double s() { // 实现接口中的 s() 方法,计算矩形的面积
        return x * y; // 面积公式:长 × 宽
    }

    @Override
    public double l() { // 实现接口中的 l() 方法,计算矩形的周长
        return 2 * x + 2 * y; // 周长公式:2 × 长 + 2 × 宽
    }
}

// 主类
public class jieko {
    public static void main(String[] args) {
        System.out.println("长方形面积周长计算机兼接口演示"); // 打印程序标题

        Scanner sc = new Scanner(System.in); // 创建 Scanner 对象,用于接收用户输入
        juxing1 j1 = new juxing1(); // 创建 juxing1 类的对象,用于单接口测试
        juxing2 j2 = new juxing2(); // 创建 juxing2 类的对象,用于多接口测试

        // 用户输入长和宽
        System.out.print("输入长"); 
        int x = sc.nextInt(); // 从控制台读取用户输入的长,并赋值给变量 x
        System.out.print("输入宽");
        int y = sc.nextInt(); // 从控制台读取用户输入的宽,并赋值给变量 y

        // 用户选择功能
        System.out.print("输入序号\t1.单接口无输出\t2.多接口有输出");
        int n = sc.nextInt(); // 从控制台读取用户的选择,并赋值给变量 n

        if (n == 1) { // 如果用户选择 1,进入单接口测试
            j1.juxing(x, y); // 调用 juxing1 类的 juxing 方法,初始化长和宽
            System.out.println("体积" + j1.s()); // 调用 juxing1 类的 s() 方法计算面积,并打印结果
            System.out.println("周长" + j1.l()); // 调用 juxing1 类的 l() 方法计算周长,并打印结果
        } else if (n == 2) { // 如果用户选择 2,进入多接口测试
            j2.juxing(x, y); // 调用 juxing2 类的 juxing 方法,初始化长和宽
            j2.shuchu1(j2.s()); // 调用 juxing2 类的 shuchu1 方法,输出面积
            shuchu.shuchu2(j2.l()); // 调用 shuchu 接口的静态方法 shuchu2,输出周长
            j2.shuchu2(); // 调用 juxing2 类的 shuchu2 方法,输出接口继承的信息
        }
    }
}

中文演示版

中文演示版(点击打开)

package 接口示例; // 定义包名为 接口示例

import java.util.Scanner; // 导入 Scanner 类,用于从控制台获取用户输入

/* 接口类似于抽象类,
   但是一个类可以实现多个接口,
   一个类只能继承一个抽象类
 */
/*##########################by milkcandy##########################*/

// 单接口
interface 计算接口 { // 定义一个接口 计算接口
    double 计算面积(); // 抽象方法,用于计算面积
    double 计算周长(); // 抽象方法,用于计算周长
}

// 实现 计算接口 的类
class 矩形1 implements 计算接口 { 
    double 长, 宽; // 定义两个成员变量,分别表示矩形的长和宽

    // 初始化长和宽的方法
    public void 设置矩形(int 长, int 宽) { 
        this.长 = 长; // 将传入的参数 长 赋值给成员变量 长
        this.宽 = 宽; // 将传入的参数 宽 赋值给成员变量 宽
    }

    @Override
    public double 计算面积() { // 实现接口中的 计算面积() 方法,计算矩形的面积
        return 长 * 宽; // 面积公式:长 × 宽
    }

    @Override
    public double 计算周长() { // 实现接口中的 计算周长() 方法,计算矩形的周长
        return 2 * 长 + 2 * 宽; // 周长公式:2 × 长 + 2 × 宽
    }
}

// 接口的继承
interface 输出接口 { // 定义一个接口 输出接口,用于输出计算结果
    // 默认方法,提供一个默认的打印信息实现,子类可以重写
    default void 输出面积(double 面积) { 
        System.out.println("面积:" + 面积 + "\t默认方法"); // 打印面积信息
    }

    // 静态方法,用于创建一个通用的打印消息,可以直接通过接口名调用
    static void 输出周长(double 周长) { 
        System.out.println("周长:" + 周长 + "\t静态方法"); // 打印周长信息
    }
}

// 继承 输出接口 的子接口
interface 扩展输出接口 extends 输出接口 { 
    // 默认方法,输出接口继承的信息
    default void 输出继承信息() { 
        System.out.println("这里是接口的继承"); // 打印接口继承的信息
    }
}

// 多接口实现类
class 矩形2 implements 计算接口, 扩展输出接口 { // 实现 计算接口 和 扩展输出接口 接口
    double 长, 宽; // 定义两个成员变量,分别表示矩形的长和宽

    // 初始化长和宽的方法
    public void 设置矩形(int 长, int 宽) { 
        this.长 = 长; // 将传入的参数 长 赋值给成员变量 长
        this.宽 = 宽; // 将传入的参数 宽 赋值给成员变量 宽
    }

    @Override
    public double 计算面积() { // 实现接口中的 计算面积() 方法,计算矩形的面积
        return 长 * 宽; // 面积公式:长 × 宽
    }

    @Override
    public double 计算周长() { // 实现接口中的 计算周长() 方法,计算矩形的周长
        return 2 * 长 + 2 * 宽; // 周长公式:2 × 长 + 2 × 宽
    }
}

// 主类
public class 接口演示 {
    public static void main(String[] args) {
        System.out.println("长方形面积周长计算机兼接口演示"); // 打印程序标题

        Scanner 输入 = new Scanner(System.in); // 创建 Scanner 对象,用于接收用户输入
        矩形1 矩形实例1 = new 矩形1(); // 创建 矩形1 类的对象,用于单接口测试
        矩形2 矩形实例2 = new 矩形2(); // 创建 矩形2 类的对象,用于多接口测试

        // 用户输入长和宽
        System.out.print("输入长:"); 
        int 长 = 输入.nextInt(); // 从控制台读取用户输入的长,并赋值给变量 长
        System.out.print("输入宽:");
        int 宽 = 输入.nextInt(); // 从控制台读取用户输入的宽,并赋值给变量 宽

        // 用户选择功能
        System.out.print("输入序号\t1.单接口无输出\t2.多接口有输出:");
        int 选择 = 输入.nextInt(); // 从控制台读取用户的选择,并赋值给变量 选择

        if (选择 == 1) { // 如果用户选择 1,进入单接口测试
            矩形实例1.设置矩形(长, 宽); // 调用 矩形1 类的 设置矩形 方法,初始化长和宽
            System.out.println("面积:" + 矩形实例1.计算面积()); // 调用 矩形1 类的 计算面积() 方法计算面积,并打印结果
            System.out.println("周长:" + 矩形实例1.计算周长()); // 调用 矩形1 类的 计算周长() 方法计算周长,并打印结果
        } else if (选择 == 2) { // 如果用户选择 2,进入多接口测试
            矩形实例2.设置矩形(长, 宽); // 调用 矩形2 类的 设置矩形 方法,初始化长和宽
            矩形实例2.输出面积(矩形实例2.计算面积()); // 调用 矩形2 类的 输出面积 方法,输出面积
            输出接口.输出周长(矩形实例2.计算周长()); // 调用 输出接口 接口的静态方法 输出周长,输出周长
            矩形实例2.输出继承信息(); // 调用 矩形2 类的 输出继承信息 方法,输出接口继承的信息
        }
    }
}
👍 5

none

最后修改于164天前

评论

贴吧 狗头 原神 小黄脸
收起

贴吧

  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡

狗头

  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头

原神

  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神

小黄脸

  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  1. 搭积木 164天前

    麻了,你去出书吧!!!

  2. 晴天不下雨 166天前

    非常好

  3. svream 166天前

    催更催更!糖糖大佬~ tushe

目录

avatar

milkcandy

24

文章数

59

评论数

5

分类