kotlin入门-面向对象的基本概念

本文探讨了面向对象的设计理念,通过定义通用接口并让具体设备类实现这些接口的方式,实现了不同类型的输入设备(如USB和蓝牙设备)与计算机交互的统一处理机制。文中还通过具体的实例演示了如何创建USB鼠标类,并将其作为输入设备添加到计算机中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.本质上就是解决如何使用程序描述世界的问题

2.讨论如何把实际存在的东西抽象成程序的类和对象

3.一种程序设计的思路、思想、方法

/**
 * 定义一个接口 可以传入任何事件
 */
interface InputDevice {
    fun input(event: Any)
}

/**
 * 定一个Usb设备继承InputDevice
 */
interface UsbDevice : InputDevice

/**
 * 定义一个蓝牙设备继承InputDevice
 */
interface BlueToolsDevice : InputDevice


/**
 * 定义一个计算机类
 */
class Computer {
    fun addUsbDevice(inputDevice: UsbDevice) {
        println("插入Usb设备:${inputDevice}")
    }

    fun addBlueToolsDevice(inputDevice: BlueToolsDevice) {
        println("插入蓝牙设备:${inputDevice}")
    }

    fun addInputDevice(inputDevice: InputDevice) {
        when (inputDevice) {
            is BlueToolsDevice -> addBlueToolsDevice(inputDevice)
            is UsbDevice -> addUsbDevice(inputDevice)
            else -> {
                println("未知的设备")
            }
        }
    }
}

/**
 * 定一个USB鼠标,并且定义对象的toString方法
 */
class UsbMouse(var name: String) : UsbDevice {
    override fun input(event: Any) {

    }

    override fun toString(): String {
        return name
    }
}

fun main(args: Array<String>) {
    var computer = Computer()
    var mouse = UsbMouse("雷柏鼠标")
    computer.addInputDevice(mouse)
}
输出:插入Usb设备:雷柏鼠标
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值