// 基于类的面向对象编程示例 // 定义一个User类,用于表示用户信息 var User = /** @class */ (function () { // 类的构造函数,用于初始化实例 // 参数:firstName(名)、lastName(姓) function User(firstName, lastName) { this.firstName = firstName; // 初始化名 this.lastName = lastName; // 初始化姓 this.fullName = firstName + ' ' + lastName; // 拼接全名 } return User; }()); // 定义greeter函数,用于向符合Person接口结构的对象打招呼 // 参数:person(符合Person接口的对象) function greeter2(person) { // 返回拼接好的问候语 return 'Hello, ' + person.firstName + ' ' + person.lastName; } // 创建User类的实例,传入名"Yee"和姓"Huang" var user2 = new User('Yee', 'Huang'); // 调用greeter函数并打印结果 // 虽然传入的是User实例,但User类包含firstName和lastName属性,符合Person接口要求,因此可以正常使用 console.log(greeter2(user2)); // 输出:Hello, Yee Huang