c#
早日退休过上不劳而获生活
拿博客记录笔记
展开
-
Unity-获取XML文件的内容信息
Unity读取XML文件原创 2022-06-08 16:35:37 · 262 阅读 · 0 评论 -
Unity开发-CYJ技术文档总结篇
动画篇 DOTweenPath组件,用于轨迹移动 WayPoints:移动轨迹点,选中后点击右边的Copy to clipboard,将坐标复制至剪贴板,加减按钮即指增加减少坐标点。 调整Animation的运行速率(挂在需要改变运行速率的人物上) using System.Collections;using System.Collections.Generic;using UnityEngine;public class change_anim_speed : M...原创 2022-04-28 17:00:15 · 801 阅读 · 0 评论 -
Unity-动画机学习
学习链接:B站资源,大家可以自己去看一、步骤1、创建动画机创建文件夹Animator_controller->文件夹下面创建动画机控制器qiegao_controller->双击点开2、右击创建默认动画3、设置默认动画状态名字,动画类型4、在之前的组件上面挂载,动画状态默认动画修改完毕添加新动画,记得给新的状态添加动画组件5、增加新连接(此时为默认跳转状态)6、增加条件跳转,添加参数7、添加修改条件不同类型的触发条件不同,值原创 2022-04-26 17:51:36 · 2174 阅读 · 0 评论 -
Unity学习-toggle组件的使用
通过Toggle实现类似按钮的操作,举例实现三个的点击功能,3个按钮可以实现的是各自之间点击对应实现相应的功能,不能BT1点击之后再次点击BT2,此时我们不能控制BT2进行功能实现时关闭BT1正在实现的功能。这是一个弊端,可能会导致同时运行不同功能,很混乱,用Toggle组件就可以避免这个问题了,同一个Canvas下的toggle可以实现点击其中一个关闭其他Toggle。基本使用步骤:①一个空物体GameObject名字叫做TController②设置3个Toggle在同一个Canvas中(创建UI下的原创 2021-11-03 10:55:04 · 6392 阅读 · 0 评论 -
Unity学习_我终于终于把unity音乐这块用单例控制得死死的了(1)!!!!
三个脚本AudioManager.cs(绑定在播放音乐的组件上,作用是不让其销毁)using System.Collections;using System.Collections.Generic;using UnityEngine;public class AudioManager : MonoBehaviour{ void Start() { DontDestroyOnLoad(this.gameObject);//不销毁 }}原创 2020-09-22 14:24:16 · 559 阅读 · 0 评论 -
Unity学习_我终于终于把unity音乐这块用单例控制得死死的了(2)!!!!
参考博客:https://www.jianshu.com/p/ab9ed5c443714个代码文件Audio_Singleton.csusing System.Collections;using System.Collections.Generic;using UnityEngine;public class Audio_Singleton : MonoBehaviour{ private static Audio_Singleton instance;//由静态变量初始化,原创 2020-09-22 17:17:28 · 232 阅读 · 2 评论 -
Unity学习_单例代码
代码:Singleton .cs(不继承MonoBehaviour的单例)using System.Collections;using System.Collections.Generic;using UnityEngine;//public class Singleton : MonoBehaviour//不需要继承MonoBehaviourpublic class Singleton<T> where T:new()//使用泛型的形式,约束T只能是class类型的{原创 2020-09-21 16:58:17 · 180 阅读 · 0 评论 -
C#学习_匿名方法+Lambda表达式
匿名方法:没有方法名的方法,可用关键字delegate代替方法名TestDelegate1 d1 = delegate () { Console.WriteLine("匿名方法"); };//注意:因为是赋值语句,后面这个地方有一个分号 d1();//匿名方法代码:using System;using System.Collections.Generic;using System.Linq;using System....原创 2020-09-17 14:59:24 · 271 阅读 · 0 评论 -
C#学习_委托(声明+实例化+组合委托)
委托:是一个方法类型,关键字:delegate实例化委托对象需要用一个方法来实例化,要求方法返回值和参数列表与委托保持一致//声明一个委托delegate void TestDelegate();//无参且无返回值的委托delegate int CalculateMethod(int a,int b);//有参且有返回值的委托 //两种实例化 TestDelegate a=new TestDelegate(Test);//函数做参数后面不加括号,a指向一个方法...原创 2020-09-17 14:02:54 · 373 阅读 · 0 评论 -
C#学习——面向对象练习(图书管理)
1using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/* * 用来做数据管理的类 * 核心功能(对于书籍的增删查) *///这个类不必实例化对象,只需要提供方法static class BookManager{ //定义一个书籍容量 private static int capcity = 20原创 2020-09-17 10:31:32 · 424 阅读 · 0 评论 -
c#学习_命名空间(嵌套+引用方式)
命名空间在开头声明时,要精确到最小的命名空间 命名空间名字允许重复,默认为是同一个 命名空间可以嵌套使用,每嵌套一层加一个点 实例化时,优先使用当前命名空间的类 如果需要使用其他命名空间的A类,两种方式: space1.A1 a1 = new space1.A1(); A2 a2 = new A2();//在开头声明命名空间了通过代码理解:using System;using System.Collections.Generic;us...原创 2020-09-16 11:28:24 · 1232 阅读 · 0 评论 -
C#学习——接口(命名规范+注意+接口中的向上向下转型+接口中写属性访问器+接口间多继承)
接口是一系列规范的集合体,可以理解为“合同”定义一个接口,让类去实现,实现方法 class类名:接口名{ 实现接口中所有的方法}命名规范:大写I开头,大驼峰, eg: IUSB1.接口中的方法不是 抽象方法2.接口中的方法不能有访问权限3.实现接口方法时注意 接口方法必须是public权限 实现接口方法不适用override 抽象类实现接口方法,可以把接口方法全部实现为抽象方法,但不能声明函数体(我不明白这样做的意义是什么????) 接口中的方法可...原创 2020-09-15 22:59:14 · 1192 阅读 · 0 评论 -
C#学习-抽象类(abstract+override)
抽象类特点:不能实例化对象 抽象类中即可以写抽象成员,也可以写非抽象成员 非抽象类可以继承抽象类,两者可以互相继承抽象方法的特点:抽象方法只能写在抽象类中 只有声明,没有实现 子类通过重写来实现抽象父类中的抽象方法,全部重写理解抽象类的用途: 是一种规范和要求,用来约束所有子类的行为代码理解:using System;using System.Collections.Generic;using System.Data;using System.Linq;us...原创 2020-08-25 23:07:18 · 918 阅读 · 0 评论 -
C#学习-运算符重载(operator)
运算符重载意义:使某些运算符具有新的功能重载的前提:方法必须是public和static注意:参数类型和返回值类型可以随意设置,但要合法可重载的运算符:算术运算符:全部,eg:+、-、*、/、++、-- 赋值运算符:全部不可 关系运算符:全部,但必须要成对重载。eg:“<”要和“>”一起 逻辑运算符:部分可以部分不行。eg:&、|、!、^可以,&&、||不行 位运算符:~可以代码理解:using System;using Sy原创 2020-08-25 21:31:35 · 973 阅读 · 0 评论 -
C#学习-关键字Sealed(密封:密封类+密封函数)
知识点;sealed 只能用在override之后,方法Show至少被重写一次 sealed 用在函数中报错,不可被重写 sealed 用在类中报错,不可被继承代码理解:using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text;using System.Threading.Tasks;namespace _2020cexample{原创 2020-08-24 22:38:13 · 643 阅读 · 0 评论 -
C#学习-静态类(由Static修饰的类)
特点:静态类不能实例化对象 静态类中不允许写非静态的成员 静态类中不能写构造方法(默认是非静态的构造方法) 静态的构造方法不能有权限修饰符和参数 静态类只能有一个object父类,除此之外不能被其它类继承,也不能继承其它类用途:用静态类来设计一些工具类,例如Array.length();代码理解;using System;using System.Collections.Generic;using System.Data;using System.Linq;using Sy原创 2020-08-24 22:23:14 · 498 阅读 · 0 评论 -
C#学习-结构体(Struct+和Class的区别,ref关键字,析构函数)
相同点:都包含字段,属性,方法 修饰的访问权限 通过new实例化对象不同点:Struct结构体在栈上开辟空间,是值类型,不传地址,原始数据不变 Class类在堆上开辟空间,是引用类型,传地址,原始数据会发生改变代码:using System;using System.CodeDom;using System.Collections.Generic;using System.Diagnostics.Contracts;using System.Linq;using Syste原创 2020-08-19 16:45:24 · 863 阅读 · 0 评论 -
C#学习-枚举(数据类型,适用于某些取值范围有限的数据)
枚举元素默认为int类型,但可以改成其他的整型:long,short.ushort 默认枚举元素的第一个值为0 enum一般与swith-case配合使用 代码:using System;using System.CodeDom;using System.Collections.Generic;using System.Diagnostics.Contracts;using System.Linq;using System.Security.Cryptograph..原创 2020-08-19 16:20:54 · 797 阅读 · 0 评论 -
C#学习-方法隐藏(new关键字)&&重写(virtual&override)
隐藏:using System.Collections.Generic;using System.Diagnostics.Contracts;using System.Linq;using System.Security.Cryptography.X509Certificates;using System.Text;using System.Threading.Tasks;namespace _TBD_2020814Test{ class Animal { pu原创 2020-08-19 15:38:28 · 289 阅读 · 0 评论 -
C#学习-多态(向上转型&&向下转型&&as关键字&&is关键字)
向上转型&&向下转型using System;using System.CodeDom;using System.Collections.Generic;using System.Diagnostics.Contracts;using System.Linq;using System.Security.Cryptography.X509Certificates;using System.Text;using System.Threading.Tasks;namespa原创 2020-08-18 17:53:27 · 584 阅读 · 0 评论 -
C#学习-英雄管理器练习
代码:using System;using System.CodeDom;using System.Collections.Generic;using System.Diagnostics.Contracts;using System.Linq;using System.Security.Cryptography.X509Certificates;using System.Text;using System.Threading.Tasks;namespace _TBD_2020814原创 2020-08-18 16:30:15 · 241 阅读 · 0 评论 -
C#学习-访问权限修饰符(private+protected+protected internal+internal+public)
1、private:只能在当前类中访问,子类也不可访问 class Dog : Animal {//Dog作为父类 private int age; } class Cat : Animal//作为Dog的兄弟不可以访问 { public void BeatDog(Dog xiaogou) { Console.WriteLine(xiaogou.age);//报错 } }原创 2020-08-18 15:50:26 · 367 阅读 · 0 评论 -
C#学习-继承中的构造方法(父类中写上默认的无参构造函数+子类中调用父类中有参的构造方法)
子类对象在实例化之前,先实例化父类中继承的部分,默认使用父类的无参构造函数两种方法:第一种方法:添加默认的无参构造函数,用于子类默认继承:cat 第二种方法:在这个构造函数执行前,先去执行父类中有参的构造方法using System;using System.CodeDom;using System.Collections.Generic;using System.Diagnostics.Contracts;using System.Linq;using System.Securi.原创 2020-08-18 14:54:28 · 2044 阅读 · 0 评论 -
C#学习-继承
语法:class 子类:父类{}注意:一个类可有多个子类,但只有一个父类 构造方法不可被继承(因为构造方法要和类名一致) 所有类都直接或间接继承object类示例代码:using System;using System.CodeDom;using System.Collections.Generic;using System.Diagnostics.Contracts;using System.Linq;using System.Securit...原创 2020-08-18 14:09:54 · 91 阅读 · 0 评论 -
C#学习-单例(一个项目中的不同模块获取到的同一个对象,eg:购物车)
理解:单例就好比购物车,同一个APP(项目),将不同的商品放入购物车,都放入的是同一辆购物车三种方法实现:1、实例化后返回using System;using System.CodeDom;using System.Collections.Generic;using System.Linq;using System.Security.Cryptography.X509Certificates;using System.Text;using System.Threading.Task原创 2020-08-18 11:17:49 · 337 阅读 · 0 评论 -
C#学习-readonly关键字(只读)
readonly和从const的区别const常量必须有初始值,readonly可以没有 readonly可以在构造函数中进行赋值,而const不可以using System;using System.CodeDom;using System.Collections.Generic;using System.Linq;using System.Security.Cryptography.X509Certificates;using System.Text;using System.Th原创 2020-08-14 15:44:46 · 871 阅读 · 0 评论 -
C#学习-面向对象三大特征(封装)
封装: 如果让外界直接访问某个字段,则需要对这个字段要赋的值判断是否符合逻辑,所以可将这个字段设成私有,不允许外界直接访问,如果外界需要使用,需要使用访问这个字段的方法。通过两种途径进行访问:通过方法 通过属性访问器1.通过方法using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespac...原创 2020-08-14 14:46:45 · 135 阅读 · 0 评论 -
c#学习-构造方法
特点:没有返回值,连void也不能写。 构造方法名必须是雷鸣 构造方法不能显示调用,在实例化对象时被自动调用作用:用来实例化一饿对象注意:如果一个类中没有写构造方法,那么系统会给一个默认的无参public权限的构造方法 如果类中已经写了构造方法了,那么这个默认的构造方法不再被提供。参考代码:using System;using System.Collections.Generic;using System.Data;using System.Linq;using S.原创 2020-08-10 23:02:31 · 377 阅读 · 0 评论 -
C#学习-static使用错误改正
参考:https://blog.csdn.net/Carey_Lu/article/details/84585012?biz_id=102&utm_term=static%E4%B8%8D%E8%83%BD%E5%9C%A8main%E4%B8%AD%E5%A3%B0%E6%98%8E&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-84585012&spm=1018.2原创 2020-08-09 21:00:25 · 520 阅读 · 0 评论 -
c#学习-static的作用(修饰函数+变量)
参考博客https://www.cnblogs.com/stoneJin/archive/2011/09/21/2183313.html原创 2020-08-09 20:59:45 · 877 阅读 · 0 评论 -
C#学习-数组实例化+越界错误提示+访问修改+params关键字
数组实例化,声明一个数组,并且赋予初值,1、2两种用的最多 int[] array0 = new int[10];//仅指定数组长度 int[] array1 = { 1, 2, 3, 4, 5 };//想去new int[],直接指定数组元素 int[] array2 = new int[5] {6,7,8,9,10 };//指定数组长度并初始化初始值 int[] array3 = new int[] { ...原创 2020-08-05 22:50:47 · 699 阅读 · 0 评论 -
C#学习-打印图形+输出对齐+栈与函数调用+函数声明与参数形式+重载(有问题)+递归
图形打印思路示例:打印如下面的三角形 /* * 1 12345 1234 *** 2 123456 123 ***** 3 1234567 12 ******* 4 12345678 ...原创 2020-08-05 22:49:53 · 493 阅读 · 0 评论 -
C#学习-类型转换(字符串类型->其他类型,其他类型->字符串类型)
字符串类型到其他类型: string input0 = Console.ReadLine(); Console.WriteLine("你输入的字符串是{0}", input0); int number = Convert.ToInt32(input0); Console.WriteLine("转换为int型为:{0}",number+1);//验证是否转型成功+1运行结果:同理转换成 ...原创 2020-08-05 14:12:05 · 608 阅读 · 0 评论 -
C#学习-控制台的输入输出
输入:三种方式read:从控制台读取一个字符,输入一串仅仅读第一个 readkey:获取用户输入的任何内容显示在控制台 readline:从控制台读取一行,结果是字符串 //read:从控制台读取一个字符,输入一串仅仅读第一个 int result = Console.Read(); Console.WriteLine(result); //readkey:获取用户输入的任..原创 2020-08-05 13:59:35 · 600 阅读 · 0 评论 -
C#学习-基础知识内容:选择结构+循环结构+字符串操作(拼接+解析字符串中变量+转义字符)
选择结构;if -else swith-case-default:注意swith()括号中可以选择任意的数据类型,但是一定要与case中的类型匹配循环结构:for while do while字符串操作:字符拼接+$"{变量名} "解析字符串中变量+转义字符\和@+输出显示 //字符串拼接 string a = "hello"; string b = "world"; Console.Writ原创 2020-08-05 11:27:47 · 252 阅读 · 1 评论 -
C#基础知识-自动转换类型+强制转换+字符型与整型转换+算术运算符+逻辑运算符+位运算符
代码自动转换类型+强制转换+字符型与整型转换+算术运算符+逻辑运算符+位运算符using System;namespace ConsoleApp1{ class Program { static void Main(string[] args) { /* //自动类型转换 sbyte num0 = 10; int num1 = num0;//sby原创 2020-08-04 22:53:53 · 1501 阅读 · 0 评论 -
C# MessageBox 消息对话框
C# MessageBox 消息对话框在程序中,我们经常使用消息对话框给用户一定的信息提示,如在操作过程中遇到错误或程序异常,经常会使用这种方式给用于以提示。在C#中,MessageBox消息对话框位于System.Windows.Forms命名空间中,一般情况,一个消息对话框包含信息提示文字内容、消息对话框的标题文字、用户响应的按钮及信息图标等内容。C#中允许开发人员根据自己的需转载 2017-04-21 16:47:15 · 1017 阅读 · 0 评论 -
random()函数
Random.Next() 返回非负随机数;Random.Next(Int) 返回一个小于所指定最大值的非负随机数Random.Next(Int,Int) 返回一个指定范围内的随机数原创 2017-04-21 15:28:28 · 602 阅读 · 0 评论 -
c#中的insert操作
问题:c#中的insert操作代码:using System;using System.Collections.Generic;using System.Linq;using System.Text;class test { static void Main(string[] args) { st原创 2017-04-21 15:07:17 · 12319 阅读 · 0 评论 -
抽象类和匿名方法的使用
问题:实验5---第4题创建抽象类A,(包含一个求两个数之和的抽象方法,)创建子类B(重写求和方法,使得可计算整数,双精度,字符串)代码:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1{原创 2017-04-16 11:34:17 · 724 阅读 · 0 评论