C#类、对象、方法、属性详解(摘)感谢博客园,感谢提供者。感谢我张帅哥。
2021-05-05 00:28
标签:按值传递 依赖 列表 namespace 多态 防止 类型 day employee C#类、对象、方法和属性详解 一、相关概念: 1、对象:现实世界中的实体(世间万物皆对象) 2、类:具有相似属性和方法的对象的集合 3、面向对象程序设计的特点:封装 继承 多态 4、对象的三要素:属性(对象是什么)、方法(对象能做什么)、事件(对象如何响应) ☆相互关系:类是对象的抽象,对象是类的实例,类是一种抽象的分类,对象则是具体事物。 比如如果车是一个类,某个人的一辆奔驰车就是一个对象,车的颜色质量就是它的属性,启动、停止这些动作则可以定义为车的方法。 二、类的定义与语法 1、定义类: [修饰符] class 类名 { 类成员 } 2、类的访问修饰符:public internal a) public:可访问域是所在的程序和任何引用的程序 访问不受限制 语法: public class 类名 { 类成员 } b) internal:可访问域定义范围内 (默认访问修饰符) 语法: (internal) class 类名 { 类成员 } 3、类成员:数据成员和字段 a) 数据成员:字段和常量 字段:变量 声明:类型 字段名 例: public class Persion b) 方法成员 (方法是类的行为,告诉我们类能够做什么,) 实例方法: 修饰符 返回值类型 方法名(参数列表) { 方法体 } 修饰符:如:public、private、protected、internal 返回值类型:若方法无返回值,则使用 void 例: public class Example01 //实例方法 { public void SayHello() //定义一个无参无返回的方法 { Console.WriteLine("Hello There") } static void Main() { Example01 objA=new Example01() objA.SayHello() //创建对象并调用方法 } } 静态方法: 修饰符 static返回值类型 方法名(参数列表) //增加了static关键字 { 方法体 } 例: public class Example01 //实例方法 { public static void SayHello() //定义一个静态方法 { Console.WriteLine("Hello There") } static void Main() { Example01.SayHello() //不需要创建对象 } } ☆静态方法与实例方法的区别:静态方法只与类有关,它不依赖于对象的存在而存在;实例方法则在对象存在后才能使用。 4、成员的访问修饰符:public、private、protected、internal a) public:公有成员 b) private:私有成员 c) protected:保护成员 d) internal:内部成员 三、实例化对象:关键字:new 语法: 类 对象名称=new 类(); 四、属性 1、 a) 概念:用于访问类的字段的成员 b) 属性用途:保证数据安全,作数据的验证 2、声明: 访问修饰符 数据类型 属性名 { get{return 字段;} //读访问器,通过它外部用户可以读取属性的值 set{字段=value;} //写访问器,通过它外部用户可以为属性赋值,用户输入的值就存放在value关键字中,并可以进行输入值验证 } 例: public class Student { private int age; //私有字段,防止用户直接访问 public int Age { get{return age;} //用于读取age的值 set { if((value>=18)&&(value
age=value; //为age赋值并验证 else age=18; } } } 3、特殊属性: a) 只读属性: public 数据类型 属性名称 { get{return 字段;} } b) 自动属性: public 数据类型 属性名称{get;set;} 五、方法的参数 1、值参数:按值传递 2、引用参数:向方法传递实参在内存中的地址,按地址传递 3、输出参数:从方法传递回一个结果 关键字:out 4、数组型参数:参数只允许是一组数组,当方法的参数前带有params关键字时,就是带数组型参数的方法(使用引用传递) C#类、对象、方法、属性详解(摘)感谢博客园,感谢提供者。感谢我张帅哥。 标签:按值传递 依赖 列表 namespace 多态 防止 类型 day employee 原文地址:http://www.cnblogs.com/oralig/p/7694815.html
{
public string name;
}using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication2
{
public class Employee
{
private float sum;
public int day;
public float wage;
//定义方法输出工资信息
public void Show()
{
sum = day * wage;
Console.WriteLine("工作时间:{0},每天工资:{1},总工资:{2}",day,wage,sum);
}
}
class Program
{
static void Main(string[] args)
{
Employee employee = new Employee();
employee.day = 20;
employee.wage = 50;
//employee.sum:无法访问 因为它为私有成员
//调用方法现实工资
employee.Show();
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
public class car
{
private string carName;
private string carType;
private int price;
public string CarName
{
get { return carName; }
set { carName = value; }
}
public string CarType
{
get { return carType; }
set { carType = value; }
}
public int Price
{
get { return price; }
set { price = value; }
}
public void action()
{
Console.WriteLine("一辆名叫{0}车,型号是{1},价钱是:{2}",carName,carType,price);
}
}
//创建实例并访问字段和方法
class Program
{
static void Main(string[] args)
{
//创建car类的实例
car vehicle = new car();
//给实例赋值
vehicle.CarName = "奔驰";
vehicle.CarType = "XZ001";
vehicle.Price = 1000000;
//调用方法
vehicle.action();
}
}
}
上一篇:Windows下Git使用入门
下一篇:464. Can I Win
文章标题:C#类、对象、方法、属性详解(摘)感谢博客园,感谢提供者。感谢我张帅哥。
文章链接:http://soscw.com/index.php/essay/82501.html