类是抽象的,对象是具体的
字段是与对象相关的变量
方法是类能执行的动作
类的声明:
【类的访问修饰】class 类名
{
//类的成员;
}【:】
题:声明:“人”类;设置属性:身高,年龄,名字,喜欢的人。定义SayHello方法
namespace 类_对象
{
class Program
{
static void Main(string[] args)
{
Person p1 = new Person(); //定义类的对象
p1.Height = 170; //访问对象的字段
p1.Age = 22;
p1.name = "凌哥";
p1.liker = "小日天";
p1.SayHello(); //调用对象的方法
}
class Person //人 类
{
public int Height; //身高字段
public int Age;
public string name;
public string liker;
public void SayHello() //方法函数
{
Console.WriteLine("我的名字叫{0},{1}岁,身高{2},最喜欢的人是{3},谢谢大家!(比心)", this.name, this.Age, this.Height, this.liker);//this. 我自己的
}
}
}
}
两个访问级别:public(任何地方都可以访问)
private (只有本类成员可以访问)
namespace 类_对象
{
class Program
{
static void Main(string[] args)
{
Person p1 = new Person(); //定义类的对象
p1.Height = 170; //访问对象的字段
p1.Age = 22;
p1.Givename("凌哥"); //调用Givename方法
p1.liker = "小日天";
p1.SayHello(); //调用对象的方法
}
class Person //人 类
{
public int Height; //身高字段
public int Age;
private string name; //访问限制
public string liker;
public void Givename(string name) //定义方法取名字
{
if (name == "二哈")
return;
}
public void SayHello() //方法函数
{
Console.WriteLine("我的名字叫{0},{1}岁,身高{2},最喜欢的人是{3},谢谢大家!(比心)"
, this.name, this.Age, this.Height, this.liker);
}
}
}
}
p1.Givename("凌哥"); //调用Givename方法
p1.liker = "小日天";
p1.SayHello(); //调用对象的方法
}
class Person //人 类
{
public int Height; //身高字段
public int Age;
private string name; //访问限制
public string liker;
public void Givename(string name) //定义方法取名字
{
if (name == "二哈")
return;
}
public void SayHello() //方法函数
{
Console.WriteLine("我的名字叫{0},{1}岁,身高{2},最喜欢的人是{3},谢谢大家!(比心)"
, this.name, this.Age, this.Height, this.liker);
}
}
}
}
属性开头字母大写,字段开头字母小写
属性的声明和使用:
namespace 类_对象
{
class Program
{
static void Main(string[] args)
{
Person p1 = new Person();
p1.Age = 22; //set访问器给属性取值
Console.WriteLine("年龄是{0}", p1.Age); //get访问器给属性赋值
p1.Age = -1;
Console.WriteLine("年龄是{0}",p1.Age);
p1.Age1 = -100;
Console.WriteLine("年龄是{0}",p1.Age1);
}
class Person
{
private int age;
public string name;
public string liker;
public int Age1; //Age1字段
public int Age //Age没有保存数据,都是age保存
{
set //取值
{
if (value < 0) //属性和字段的区别 Age属性进行非法控制
{
return;
}
this.age = value; //代表用户赋来的值
}
get //赋值
{
return this.age;
}
}
}
}
}
p1.Age = 22; //set访问器给属性取值
Console.WriteLine("年龄是{0}", p1.Age); //get访问器给属性赋值
p1.Age = -1;
Console.WriteLine("年龄是{0}",p1.Age);
p1.Age1 = -100;
Console.WriteLine("年龄是{0}",p1.Age1);
}
class Person
{
private int age;
public string name;
public string liker;
public int Age1; //Age1字段
public int Age //Age没有保存数据,都是age保存
{
set //取值
{
if (value < 0) //属性和字段的区别 Age属性进行非法控制
{
return;
}
this.age = value; //代表用户赋来的值
}
get //赋值
{
return this.age;
}
}
}
}
}
简单属性的简化:
namespace ConsoleApp7
{
class Program
{
static void Main(string[] args)
{
person p = new person();
p.Age = 30;
Console.WriteLine("{0}",p.Age);
Console.ReadKey();
}
}
class person
{
public int Age
{
get; //编译器自动帮我们生成私有字段和get,set代码块
set;
}
}
}
p.Age = 30;
Console.WriteLine("{0}",p.Age);
Console.ReadKey();
}
}
class person
{
public int Age
{
get; //编译器自动帮我们生成私有字段和get,set代码块
set;
}
}
}
还有一个不太懂得死循环
嘻嘻