一.按位异或和逻辑异或
1.按位运算符 与或非 & | ^
^ 相同则为1 不同则为0
2.逻辑运算符 与或非 && || !
&& 同真则为真 一假则为假
|| 一真则为真 同假则为假
! 取反
二.函数
1.普通方法(函数)
2.构造方法(函数)
class Book
{
public string bookName;
public int bookPage;
public float bookPrice;
public DateTime bookTime;
public string bookAuthor;
//构造函数
// 1.方法名和类名相同
// 2.构造函数没有任何返回值,及时是void也不行
// 3.构造函数 可以是无参构造函数 也可以是有参构造函数
// 4.构造函数 当出现有参构造函数时,需要手动添加无参构造函数
// 当没有出现有参构造函数时,则默认为系统自动添加了无参构造函数
//有参数的构造方法
public Book(string name)
{
bookName = name;
}
public Book(string name ,int page)
{
bookName = name;
bookPage = page;
}
//无参数的构造方法
public Book()
{
}
}
——————————————————————————————————————————————————————————————————————————
class Program
{
static void Main(string[] args)
{
Book book1 = new Book();
Book book2 = new Book("十万个为什么?");
Book book3 = new Book("钢铁是怎么炼成的?", 19);
Console.WriteLine(book1.bookName);
Console.WriteLine(book1.bookPage);
Console.WriteLine(book2.bookName);
Console.WriteLine(book2.bookPage);
Console.WriteLine(book3.bookName);
Console.WriteLine(book3.bookPage);
Console.ReadKey();
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Day02_构造函数
{
class Program
{
static void Main(string[] args)
{
Hero h = new Hero();
Console.WriteLine(Convert.ToString(h.Hp));
Console.WriteLine(Convert.ToString(h.Mp));
Console.WriteLine(Convert.ToString(h.AttckValue));
}
}
class Hero
{
private int hp; //字段
int mp;
int attckValue;
public int Hp // 属性
{
get { return hp; }
set { hp = value; }
}
public int Mp
{
get { return mp; }
set { mp = value; }
}
public int AttckValue
{
get { return attckValue; }
set { attckValue = value; }
}
/// <summary>
/// 构造方法
/// </summary>
public Hero()
{
Hp = 1000;
Mp = 200;
AttckValue = 500;
}
}
}
3.析构函数
析构函数是用来执行清除操作的特殊方法,如同构造函数可以自动进行对象属性的初始化一样,C#也会自动调用一 个函数注销该对象并进行资源的释放与清理工作。
语法:~<类名>()
{
//析构函数主体}
特性:
(1)与类名相同,前加一个“~”
(2)它是无类型,无参数的。因为它只需释放资源,不用返回任何调用结果。
(3)一个类只能有一个析构函数,不能重载【构造函数可以重载,也可以有多个,两者功能截然不同,一个赋予初值,一个资源释放】
————————————————
版权声明:本文为优快云博主「TaoiR」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/qq_40245756/article/details/84800243
4.结构体和构造函数的区别
①struct 结构函数
是值类型 不需要初始化即可赋值
结构体内的属性或者字段不能进行赋值
②public 构造函数
是引用类型 需要对其初始化 才能对其中的成员变量进行赋值
三.lambda表达式
(参数列表)=>{表达式}