go语言基础(8)

package main

import "fmt"

type person struct {
	name string
	age int
	sex string
}

//结构体嵌套结构体
type Student struct {
	//通过匿名字段实现继承操作
	person //结构体名称作为结构体成员
	id int
	score int
}

func main01() {
	var stu Student = Student{person{"张三丰",190,"男"},101,100}

	//stu.id=101
	结构体名称.父类成员信息
	//stu.name="张三"
	stu.person.name="张三"
	//stu.score=100
	//stu.sex="男"
	//stu.age=18

	fmt.Println(stu)

}

type person1 struct {
	name string
	age  int
	sex  string
}

type student1 struct {
	*person1 //指针匿名字段
	id    int
	score int
}

func main02() {

	var stu student1 = student1{&person1{"小龙女",38,"女"},105,66}
	//var per=person1{"杨过",35,"男"}
	//stu.person.name
	//将结构体变量 赋值给结构体指针类型
	//stu.person1=&per
	//stu.person1=new(person1)
	//stu.name = "郭襄"
	//stu.person1.name = "郭小姐"
	//stu.id = 101
	//stu.score = 78

	fmt.Println(stu)
	fmt.Println(stu.name)
	fmt.Println(stu.id)
	fmt.Println(stu.score)
}type person1 struct {
	name string
	age  int
	sex  string
}

type student1 struct {
	*person1 //指针匿名字段
	id    int
	score int
}

func main03() {

	var stu student1 = student1{&person1{"小龙女",38,"女"},105,66}
	//var per=person1{"杨过",35,"男"}
	//stu.person.name
	//将结构体变量 赋值给结构体指针类型
	//stu.person1=&per
	//stu.person1=new(person1)
	//stu.name = "郭襄"
	//stu.person1.name = "郭小姐"
	//stu.id = 101
	//stu.score = 78

	fmt.Println(stu)
	fmt.Println(stu.name)
	fmt.Println(stu.id)
	fmt.Println(stu.score)
}

type TestA struct {
	name string
	id int
}
type TestB struct {
	TestA
	sex string
	age int
}
//注意结构体不能嵌套本结构体
//结构体可以嵌套本结构体指针类型  链表
type TestC struct {
	//*TestC  ok
	//TestC//err
	TestB
	score int
}

func main04() {
	var s TestC=TestC{TestB{TestA{"姆巴佩",10},"男",19},4}
	//s.score=100
	//s.TestC.score=100
	//s.TestB.TestA.name="姆巴佩"
	//s.name="李四"
	//s.id=201
	//s.sex="男"
	//s.age=20
	//s.score=10

	fmt.Println(s)
}

//
//func add(a,b int) int{
//	return a+b
//}
//1、定义函数类型
//2、为已存在的数据类型起别名
type Int int //1、预处理 2、编译 3、汇编 4、链接

//方法
//func (方法接收者)方法名(参数列表)返回值类型
func (a Int)add(b Int)Int{
	return a+b
}

func main05() {
	//result:=add(10,20)
	//根据数据类型 绑定方法
	var a Int=10
	value:=a.add(20)
	//var b Int
	fmt.Println(value)
}

type Stu struct {
	name string
	age  int
	sex  string
}

//方法 值传递
func (s Stu) PrintInfo() {
	fmt.Println(s.name)
	fmt.Println(s.age)
	fmt.Println(s.sex)
}
// 地址传递
func (s *Stu) EditInfo(name string, age int, sex string) {
	//(*s).name=name
	//结构体指针可以直接调用结构体成员
	s.name = name
	s.age = age
	s.sex = sex
	//s.PrintInfo()
}

func main06(){
	var s1 *Stu
	s1=new(Stu)
	s1.EditInfo("薛宝钗",24,"女")
	s1.PrintInfo()
}
func main07() {

	//var s Stu = Stu{"刘姥姥", 54, "女"}
	对象.方法
	//s.PrintInfo()

	var s1 Stu = Stu{"王宝钗", 24, "女"}
	s1.PrintInfo()

	//(&s1).EditInfo("林黛玉",16,"女")//ok
	//结构体变量可以直接使用结构体指针对应的方法
	s1.EditInfo("林黛玉",16,"女")
	s1.PrintInfo()
}
//方法是全局的  允许程序在所有文件访问 对象.方法
//父类不能继承子类信息
//子结构体继承父类结构体  允许使用父类结构体成员  允许使用父类的方法
//方法重写  在一个对象中不能出现相同的方法名  方法的接收者 带* 和不带* 表示一个相同的对象
//默认使用子类的方法  采用就进原则

 

以下是对提供的参考资料的总结,按照要求结构化多个要点分条输出: 4G/5G无线网络优化与网规案例分析: NSA站点下终端掉4G问题:部分用户反馈NSA终端频繁掉4G,主要因终端主动发起SCGfail导致。分析显示,在信号较好的环境下,终端可能因节能、过热保护等原因主动释放连接。解决方案建议终端侧进行分析处理,尝试关闭节电开关等。 RSSI算法识别天馈遮挡:通过计算RSSI平均值及差值识别天馈遮挡,差值大于3dB则认定有遮挡。不同设备分组规则不同,如64T和32T。此方法可有效帮助现场人员识别因环境变化引起的网络问题。 5G 160M组网小区CA不生效:某5G站点开启100M+60M CA功能后,测试发现UE无法正常使用CA功能。问题原因在于CA频点集标识配置错误,修正后测试正常。 5G网络优化与策略: CCE映射方式优化:针对诺基亚站点覆盖农村区域,通过优化CCE资源映射方式(交织、非交织),提升RRC连接建立成功率和无线接通率。非交织方式相比交织方式有显著提升。 5G AAU两扇区组网:与三扇区组网相比,AAU两扇区组网在RSRP、SINR、下载速率和上传速率上表现不同,需根据具体场景选择适合的组网方式。 5G语音解决方案:包括沿用4G语音解决方案、EPS Fallback方案和VoNR方案。不同方案适用于不同的5G组网策略,如NSA和SA,并影响语音连续性和网络覆盖。 4G网络优化与资源利用: 4G室分设备利旧:面对4G网络投资压减与资源需求矛盾,提出利旧多维度调优策略,包括资源整合、统筹调配既有资源,以满足新增需求和提质增效。 宏站RRU设备1托N射灯:针对5G深度覆盖需求,研究使用宏站AAU结合1托N射灯方案,快速便捷地开通5G站点,提升深度覆盖能力。 基站与流程管理: 爱立信LTE基站邻区添加流程:未提供具体内容,但通常涉及邻区规划、参数配置、测试验证等步骤,以确保基站间顺畅切换和覆盖连续性。 网络规划与策略: 新高铁跨海大桥覆盖方案试点:虽未提供详细内容,但可推测涉及高铁跨海大桥区域的4G/5G网络覆盖规划,需考虑信号穿透、移动性管理、网络容量等因素。 总结: 提供的参考资料涵盖了4G/5G无线网络优化、网规案例分析、网络优化策略、资源利用、基站管理等多个方面。 通过具体案例分析,展示了无线网络优化中的常见问题及解决方案,如NSA终端掉4G、RSSI识别天馈遮挡、CA不生效等。 强调了5G网络优化与策略的重要性,包括CCE映射方式优化、5G语音解决方案、AAU扇区组网选择等。 提出了4G网络优化与资源利用的策略,如室分设备利旧、宏站RRU设备1托N射灯等。 基站与流程管理方面,提到了爱立信LTE基站邻区添加流程,但未给出具体细节。 新高铁跨海大桥覆盖方案试点展示了特殊场景下的网络规划需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值