HarmonyOS class类对象基础使用

按我们之前的写法
就是

@Entry
@Component
struct Dom {p:Object = {name: "小猫猫",age: 21,gf: {name: "小小猫猫",age: 18,}}build() {Row() {Column() {// @ts-ignoreText(this.p.gf.name)}.width('100%')}.height('100%')}
}

直接用 Object 一层一层往里套
这个结构 其实并不是那么友好 而且编辑器没有那么认可 需要用 // @ts-ignore标识才能通过语法检查
不过 运行到没什么问题
在这里插入图片描述
我们可以直接将代码结构改成这样

class Person{name: stringage: numbergf: Personconstructor(name: string, age: number,gf?: Person) {this.name = name;this.age = age;this.gf = gf;}
}
@Entry
@Component
struct Dom {p: Person =new Person('小猫猫',21,new Person('小小猫猫', 18))build() {Row() {Column() {Text(this.p.gf.name)}.width('100%')}.height('100%')}
}

这是 我们声明的对象结构体 一个class 类型 其中包含3个属性
string字符串类型的 name
number数字类型的 age
gf比较特殊 它是 Person类型 就是我们声明的这个类的类型的 简单说 就是 Person的gf可以再套一个Person对象
然后构造函数

然后 constructor 构造函数 相当于创建对象时 就会触发
然后 它接收 三个参数 分别就是我们的三个属性 然后 给自己的赋值

然后 我们定义一个 Person 类型的 属性 叫 p
第一个参数 name 赋值为 小猫猫
第二个参数 age 赋值为 21
然后 第三个参数 gf 类型是 Person 于是 我们new一个Person对象
这个我们只给了两个参数 name 小小猫猫 age 18
这也间接告诉大家 如果类对象的字段 你不想赋值 直接不传就好了
运行结果如下
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/675308.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++进阶(十三)异常

📘北尘_:个人主页 🌎个人专栏:《Linux操作系统》《经典算法试题 》《C》 《数据结构与算法》 ☀️走在路上,不忘来时的初心 文章目录 一、C语言传统的处理错误的方式二、C异常概念三、异常的使用1、异常的抛出和捕获2、异常的重新…

java之spring AOP

AOP 面向切面编程&#xff0c; 切入点&#xff0c;就是你写的函数&#xff0c;装饰器&#xff0c;装饰到那些函数上 在哪里生效 引入依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifact…

网络学习:数据链路层VLAN原理和配置

一、简介&#xff1a; VLAN又称为虚拟局域网&#xff0c;它是用来将使用路由器的网络分割成多个虚拟局域网&#xff0c;起到隔离广播域的作用&#xff0c;一个VLAN通常对应一个IP网段&#xff0c;不同VLAN通常规划到不同IP网段。划分VLAN可以提高网络的通讯质量和安全性。 二、…

MySQL进阶查询篇(5)-事务的隔离级别与应用

数据库事务(Transaction)是指作为一个单元执行的一系列操作&#xff0c;要么全部成功完成&#xff0c;要么全部失败回滚。数据库事务具有四个特性&#xff0c;即原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。本文将重点介绍MySQL数据库中的…

2024年华为OD机试真题-螺旋数字矩阵-Java-OD统一考试(C卷)

题目描述: 疫情期间,小明隔离在家,百无聊赖,在纸上写数字玩。他发明了一种写法: 给出数字个数n和行数m(0 < n ≤ 999,0 < m ≤ 999),从左上角的1开始,按照顺时针螺旋向内写方式,依次写出2,3...n,最终形成一个m行矩阵。 小明对这个矩阵有些要求: 1.每行数字的…

跟着小德学C++之TCP基础

嗨&#xff0c;大家好&#xff0c;我是出生在达纳苏斯的一名德鲁伊&#xff0c;我是要立志成为海贼王&#xff0c;啊不&#xff0c;是立志成为科学家的德鲁伊。最近&#xff0c;我发现我们所处的世界是一个虚拟的世界&#xff0c;并由此开始&#xff0c;我展开了对我们这个世界…

红队打靶练习:GLASGOW SMILE: 1.1

目录 信息收集 1、arp 2、nmap 3、nikto 4、whatweb 目录探测 1、gobuster 2、dirsearch WEB web信息收集 /how_to.txt /joomla CMS利用 1、爆破后台 2、登录 3、反弹shell 提权 系统信息收集 rob用户登录 abner用户 penguin用户 get root flag 信息收集…

flutter 国内源

Flutter 在中国由于网络原因&#xff0c;从官方默认的国外源下载Dart包和Flutter SDK可能会比较慢或者不稳定。为了加速依赖包的获取与Flutter SDK的安装&#xff0c;可以使用国内镜像源。以下是一些国内常用的Flutter和Dart包镜像源&#xff1a; 清华大学开源软件镜像站 Flu…

计算机网络(第六版)复习提纲29

第六章&#xff1a;应用层 SS6.1 域名系统DNS 1 DNS被设计为一个联机分布式数据库系统&#xff0c;并采用客户服务器方式&#xff08;C/S&#xff09; 2 域名的体系结构 3 域名服务器及其体系结构 A 域名服务器的分类 1 根域名服务器 2 顶级域名服务器&#xff08;TLD服务器&a…

Gitlab和Jenkins集成 实现CI (一)

版本声明 部署时通过docker拉取的最新版本 gitlab: 16.8 jenkins: 2.426.3 安装环境 可参考这篇文章 停止防火墙 由于在内网&#xff0c;这里防火墙彻底关掉&#xff0c;如果再外网或者云上的悠着点 systemctl stop firewalled systemctl disable firewalledsystemctl sto…

K8S之运用亲和性设置Pod的调度约束

亲和性 Node节点亲和性硬亲和实践软亲和性实践 Pod节点亲和性和反亲和性pod亲和性硬亲和实践 pod反亲和性 Pod 的yaml文件里 spec 字段中包含一个 affinity 字段&#xff0c;使用一组亲和性调度规则&#xff0c;指定pod的调度约束。 kubectl explain pods.spec.affinity 配置…

【代码】Processing笔触手写板笔刷代码合集

代码来源于openprocessing&#xff0c;考虑到国内不是很好访问&#xff0c;我把我找到的比较好的搬运过来&#xff01; 合集 参考&#xff1a;https://openprocessing.org/sketch/793375 https://github.com/SourceOf0-HTML/processing-p5.js/tree/master 这个可以体验6种笔触…

ubuntu22.04安装部署03: 设置root密码

一、前言 ubuntu22.04 安装完成以后&#xff0c;默认root用户是没有设置密码的&#xff0c;需要手动设置。具体的设置过程如下文内容所示&#xff1a; 相关文件&#xff1a; 《ubuntu22.04装部署01&#xff1a;禁用内核更新》 《ubuntu22.04装部署02&#xff1a;禁用显卡更…

简单聊聊go语言中引用模块的版本控制以及invalid: should be v0 or v1, not v2问题的解决

文章目录 前言具体示例手动升级依赖库should be v0 or v1, not v2总结 前言 如果你接触go语言比较早&#xff0c;一定有过当年所有go源码全部放入 GOPATH 下的混乱经历&#xff0c;不过发展到今天&#xff0c;go的包管理使用 go.mod 和 go.work 已经能得心应手&#xff0c;满足…

macos安装local模式spark

文章目录 配置说明安装hadoop安装Spark测试安装成功 配置说明 Scala - 3.18 Spark - 3.5.0 Hadoop - 3.3.6 安装hadoop 从这里下载相应版本的hadoop下载后解压&#xff0c;配置系统环境变量 > sudo vim /etc/profile添加以下两行 export HADOOP_HOME/Users/collinsliu/…

Unity类银河恶魔城学习记录4-4 4-5 P57-58 On Hit Impactp- Attack‘direction fix源代码

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释&#xff0c;可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili Entity.cs using System.Collections; using System.Collections.Generic;…

排序算法---快速排序

原创不易&#xff0c;转载请注明出处。欢迎点赞收藏~ 快速排序是一种常用的排序算法&#xff0c;采用分治的策略来进行排序。它的基本思想是选取一个元素作为基准&#xff08;通常是数组中的第一个元素&#xff09;&#xff0c;然后将数组分割成两部分&#xff0c;其中一部分的…

苹果mac电脑如何优化系统?保持不卡顿呢

再强悍的性能和优秀的操作系统&#xff0c;但长时间使用后&#xff0c;有时也会出现卡顿的情况。为了让你的苹果电脑保持高效运行&#xff0c;我们将深入探讨导致电脑卡顿的原因&#xff0c;并提供苹果电脑如何优化系统的解决方案&#xff0c;帮助你优化系统。 过多的启动项 …

【ChatGPT】如果说数据结构统治着整个计算机程序的世界,那么算法就可以被看作是程序员的全部装备。一般的来看的话,计算机本质就是信息的存储和处理的技术。

文章目录 第一章:算法和数据结构的概述第二章:数据结构数组链表栈队列树图第三章:算法排序算法搜索算法图算法第四章:算法和数据结构的应用数据库网络人工智能第五章:总结第

排序算法---归并排序

原创不易&#xff0c;转载请注明出处。欢迎点赞收藏~ 归并排序是一种常见的排序算法&#xff0c;它采用了分治的思想。它将一个待排序的数组递归地分成两个子数组&#xff0c;分别对两个子数组进行排序&#xff0c;然后将排好序的子数组合并成一个有序数组。 具体的归并排序过…