aardio 类与对象基础

今天开始探索 aardio 里的类与对象啦,感觉就像踏入编程世界的角色扮演环节,类是角色模板,对象是具体角色,用它们能让代码更规整,这学习过程还挺有意思!

一、类的定义

类是对象的抽象模板,规定了对象的属性和方法。就像设计游戏角色模板,确定角色特征和能做的事。比如定义 GameCharacter 类:

kotlin 复制代码
class GameCharacter {
    ctor(name,grade){
        this.name = name; 
        this.grade = grade; 
    }
    showInfo = function() { 
        ..print("角色名称:", this.name);
        ..print("角色等级:", this.grade);
    }     
}

这里 GameCharacter 类有 namegrade 属性,showInfo 方法,this 关键字能访问对象自身的属性和方法,就像角色用自己的特征做事。

二、对象的创建

有了类模板,就能创建具体对象啦。像依据游戏角色模板生成具体角色,代码示例:

ini 复制代码
var character1 = GameCharacter(); 
character1.name = "张三";
character1.grade = 5; 
character1.showInfo(); 

创建 character1 对象后,给属性赋值,再调用 showInfo 方法展示角色信息,让模板变成有具体特征的"角色"。

三、构造函数

构造函数在创建对象时自动调用,用于初始化属性,好比创建角色时设置初始特征。优化后的 GameCharacter 类用构造函数:

ini 复制代码
class GameCharacter {
    ctor(name,grade){
        this.name = name;
        this.grade = grade;
    }
    showInfo = function() {
        ..print("角色名称:", this.name);
        ..print("角色等级:", this.grade);
    }     
}

var character1 = GameCharacter("张三",5); 
character1.showInfo();
null

构造函数 ctor 接收参数,创建对象时直接传参初始化属性,更方便快捷,一步到位给对象"定好初始模样"。

四、实践

定义 Student 类,包含 nameagescore 属性,用构造函数初始化,还有 showReport 方法显示信息,最后创建对象调用方法。

代码在这:

ini 复制代码
class Student {
    ctor(name, age, score){
        this.name = name;
        this.age = age;
        this.score = score;
    }
    showReport = function(){
        ..print("姓名:", this.name);
        ..print("年龄:", this.age);
        ..print("成绩:", this.score);
    }
}

var student = Student("王五", 15, 90); 
student.showReport(); 
null

把类的定义、对象创建、构造函数和方法使用结合起来,完成后对类与对象基础理解更深了,感觉在面向对象编程路上迈出扎实一步,超有成就感,继续加油!

相关推荐
希赛网2 天前
软考软件设计师常考知识点:(一)计算机组成与体系结构
软考·uml·编程语言·计算机基础·软件设计师
沢田纲吉5 天前
《LLVM IR 学习手记(二):变量表达式编译器的实现与深入解析》
前端·编程语言·llvm
Moonbit7 天前
MoonBit Pearls Vol.9:正则表达式引擎的两种实现方法:导数与 Thompson 虚拟机
后端·正则表达式·编程语言
沢田纲吉12 天前
《LLVM IR 学习手记(一):无量表达式编译器的实现与实践总结》
编程语言·llvm
Moonbit13 天前
MoonBit 三周年 | 用代码写就 AI 时代的语言答卷
后端·程序员·编程语言
阿里云云原生14 天前
再见 Cursor,Qoder 真香!这波要改写 AI 编程格局
编程语言
数据智能老司机14 天前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
Moonbit15 天前
用MoonBit开发一个C编译器
后端·编程语言·编译器
Moonbit16 天前
MoonBit 正式加入 WebAssembly Component Model 官方文档 !
前端·后端·编程语言