黑马程序员 自学17C#面向对象之基本概念
2014-05-07 23:32
204 查看
-------
ASP.Net+Unity开发、.Net培训、期待与您交流! -------
一般描述对象从两方面描述:
行为(讲课……)——方法
特征(肤色)——属性
属性:对象具有的各种特征
(肤色:黑,体重:150……)有一个值
属性通过具体的值来描述对象。
方法:行为,动作,执行的操作。
(老师的行为:上课,学生的行为:学习)
手机/品牌 != 对象
我的手机→ 对象(××的手机)(具体的一个)
对象:所处的与之对峙的“象”
比如:人类,拥有 age sex height
也拥有吃喝拉撒睡
类是对象的类型: int a;
类型名 变量名(对象名);
人类 张三;
类是抽象的概念,仅仅是一个模版,比如“人”类。
对象是一个具体存在的,而类是一个概念。
张三是属于一个人类的对象,他的姓名属性的值:张三。性别的属性的值:男。年龄属性的值:20。这三个都是特征。
会说话。行为。
特征+行为构成一个对象。
对象可以叫做类的实例(Instance)
从类中产生一个对象→实例化。
类不占内存 对象占内存
人类 你
Int a;
[访问修饰符] class 类名
{
成员;
……
}
一个类最好定义在一个.cs文件中,类名和文件名相同
当前类,右键→添加→新建项
类名名称命名方法:开头首字母大写
类中可以包含变量的定义,方法
Public string name;
Public char sex;
………
在我们自己写的类中,在写方法时,先不用加static(静态)
public void SayHello()
{
Console.WriteLine(“……”);
}
类名实例名 = new 类名 ();
Person zsPerson = new Person();
就是↓
Person zsPerson;//定义了一个变量,这个变量类型为Person类型
zsPerson = new Person();//产生了一个Person对象,并把其赋给zsPerson(通过new完成)
……Main()
{
Person zhangsanPerson = new Person();
//Person lisiPerson = new Person ();
}
上面通过这个类的模版产生了一个zhangsan对象。
zhangsanPerson→对象名/实例名;
访问(zhangsanPerson)类的方法:实例名 .
方法名(); ConsolColor.ResetColor();
访问(zhangsanPerson)类的属性:实例名 .
属性名; ConsoleColor.white;
属性其实就是变量 zhangsanPerson.name=”张三”
属性可通过= 进行赋值/取值
eg:
class Person
{//属性(字段)
public string name;
public char sex;
publicint age;
}
//方法
public void SayHello()
{
Console.WriteLine(“我是{0},我是{1}生,今年{2}岁”,name,sex,age);
}
//上面是一个类文件
Class Program
{
……Main()
{//类的实例化,两个对象的产生
Peroson zaPerson = new Person();
Person lsPerson = new Person();
zsPerson.name=”张三”;
zsPerson.sex=’男’;
zsPerson.age=18;
lsPerson.name=”李四”;
lsPerson.sex=’女’;
lsPerson.age=16;
//下面是调用方法
zsPerson.SayHello();
lsPerson.SayHello();
Console.ReadKey();
}
}
属性要有一个值 + 方法→对象 (实例化)
只要是没有加static的方法/属性都必须先实例化,在通过实例名.属性实例名.方法名();来访问。
加static的方法或属性,可以直接通过类名.方法名(); 类名.属性名来访问。在同类中可省略类名。
Console.WriteLine(“”);
这个writeLine有static修饰,可以直接取用;
Random r = new Random();
r.Next(X,X);
随机数无static修饰,需要先实例化再调用。
Method: 方法
-------
ASP.Net+Unity开发、.Net培训、期待与您交流! -------
ASP.Net+Unity开发、.Net培训、期待与您交流! -------
C#编程基础之面向过程
基础
2014/4/15面向对象概念:
万物皆对象。一般描述对象从两方面描述:
行为(讲课……)——方法
特征(肤色)——属性
属性:对象具有的各种特征
(肤色:黑,体重:150……)有一个值
属性通过具体的值来描述对象。
方法:行为,动作,执行的操作。
(老师的行为:上课,学生的行为:学习)
手机/品牌 != 对象
我的手机→ 对象(××的手机)(具体的一个)
对象:所处的与之对峙的“象”
类:
是模版,是确定对象将会拥有的特征(属性)和行为(方法)比如:人类,拥有 age sex height
也拥有吃喝拉撒睡
类是对象的类型: int a;
类型名 变量名(对象名);
人类 张三;
类是抽象的概念,仅仅是一个模版,比如“人”类。
对象是一个具体存在的,而类是一个概念。
张三是属于一个人类的对象,他的姓名属性的值:张三。性别的属性的值:男。年龄属性的值:20。这三个都是特征。
会说话。行为。
特征+行为构成一个对象。
对象可以叫做类的实例(Instance)
从类中产生一个对象→实例化。
类不占内存 对象占内存
人类 你
Int a;
类的定义:
语法:[访问修饰符] class 类名
{
成员;
……
}
一个类最好定义在一个.cs文件中,类名和文件名相同
当前类,右键→添加→新建项
类名名称命名方法:开头首字母大写
类中可以包含变量的定义,方法
Public string name;
Public char sex;
………
在我们自己写的类中,在写方法时,先不用加static(静态)
public void SayHello()
{
Console.WriteLine(“……”);
}
类的实例化
(通过一个类产生一个对象的过程) 在内存中产生了一个属于XX类的对象叫做实例名类名实例名 = new 类名 ();
Person zsPerson = new Person();
就是↓
Person zsPerson;//定义了一个变量,这个变量类型为Person类型
zsPerson = new Person();//产生了一个Person对象,并把其赋给zsPerson(通过new完成)
……Main()
{
Person zhangsanPerson = new Person();
//Person lisiPerson = new Person ();
}
上面通过这个类的模版产生了一个zhangsan对象。
zhangsanPerson→对象名/实例名;
访问(zhangsanPerson)类的方法:实例名 .
方法名(); ConsolColor.ResetColor();
访问(zhangsanPerson)类的属性:实例名 .
属性名; ConsoleColor.white;
属性其实就是变量 zhangsanPerson.name=”张三”
属性可通过= 进行赋值/取值
eg:
class Person
{//属性(字段)
public string name;
public char sex;
publicint age;
}
//方法
public void SayHello()
{
Console.WriteLine(“我是{0},我是{1}生,今年{2}岁”,name,sex,age);
}
//上面是一个类文件
Class Program
{
……Main()
{//类的实例化,两个对象的产生
Peroson zaPerson = new Person();
Person lsPerson = new Person();
zsPerson.name=”张三”;
zsPerson.sex=’男’;
zsPerson.age=18;
lsPerson.name=”李四”;
lsPerson.sex=’女’;
lsPerson.age=16;
//下面是调用方法
zsPerson.SayHello();
lsPerson.SayHello();
Console.ReadKey();
}
}
属性要有一个值 + 方法→对象 (实例化)
只要是没有加static的方法/属性都必须先实例化,在通过实例名.属性实例名.方法名();来访问。
加static的方法或属性,可以直接通过类名.方法名(); 类名.属性名来访问。在同类中可省略类名。
Console.WriteLine(“”);
这个writeLine有static修饰,可以直接取用;
Random r = new Random();
r.Next(X,X);
随机数无static修饰,需要先实例化再调用。
词汇小结:
Instance: 实例Method: 方法
-------
ASP.Net+Unity开发、.Net培训、期待与您交流! -------
相关文章推荐
- 读书笔记2014第4本:程序员修炼之道-从小工到专家(第五章:弯曲或折断)
- 程序员的编程神器 - vim
- 挑战面试编程:字符串转换为整数
- 腾讯招聘笔试面试经历谈
- 黑马程序员_Java语法基础(二)
- 一个程序员的奋斗历程
- 黑马程序员---visual studio 快捷键大全
- 微软面试100题之第4题
- 挑战面试编程:计算整数二进制位中1的个数
- 黑马程序员—java多线程
- 一道淘汰85%面试者的开发者面试题
- iOS程序员必须知道的Android要点
- 剑指offer面试题42
- 115个Java面试题和答案——终极列表
- 黑马程序员-Java基础07
- 面试题:求全排列和组合
- 黑马程序员_Java语法基础(一)
- 今天面试遇到的题
- 黑马程序员-银行业务调度系统
- 黑马程序员——学习日记19 java反射机制、正则表达式