C#属性方法 构造函数(不知道自己理解的对不对)
using System; namespace test
{
class Program
{
static void Main(string[] args)
{
Cat kitty = new Cat(); // 无参构造函数
Cat1 KITTY = new Cat1("KITTY", );
Cat1 KITTY1 = new Cat1();
/*kitty.Setage(-3);访问器操作
kitty.Name = "Kitty";
Console.WriteLine("大家好,我叫{0},今年{1}岁了",kitty.Name,kitty.Getage());*/
kitty.Name = "Kitty";
kitty.age = ;
Console.WriteLine("大家好,我叫{0},今年{1}岁了", kitty.Name, kitty.age);//无参构造函数,age用了属性方法
Console.WriteLine("大家好,我叫{0},今年{1}岁了", KITTY.na, KITTY.ag);//有参构造函数
Console.WriteLine("大家好,我叫{0},今年{1}岁了", KITTY1.na, KITTY1.ag);//无参构造函数
kitty.CatchMouse();
kitty.CatchMouse();
}
}
class Cat
{
public string Name;//字段
private int Age; private int NO = ;//私有的
/* public void Setage(int age)//与下面Getage合起来叫做访问器
{
if (age < 0)
{
Age = 0;
}
else
{
Age = age;
}
}
public int Getage()
{
return Age;
}与上面Setage合起来叫做访问器,Java用的比较多*/ //C#里的属性方法
public int age
{
set
{
if (value < )
{
Age = ;
}
else
{
Age = value;
}
}
get { return Age; } }
private void Hello()//方法 介绍自己
{
Console.WriteLine("你们好啊,我是{0}.", Name);
}
public void call()//叫声
{
Hello();
Console.WriteLine("喵喵。。。。");
}
public void CatchMouse()//行为
{
this.NO++;
Console.WriteLine("我抓了{0}只老鼠.", NO); }
}
class Cat1
{
private string name1;
private int age1; public Cat1()//显示说明构造函数
{ }
/// <summary>
/// 弄成和类名一样的有参构造函数
/// </summary>
/// <param name="namevalue"></param>
/// <param name="agevalue"></param>
public Cat1(string name1value, int age1value)
{
name1 = name1value;
age1 = age1value;
}
public string na
{
set { name1 = value; }
get { return name1; }
}
public int ag
{
set { age1 = value; }
get { return age1; }
}
}
}
C#属性方法 构造函数(不知道自己理解的对不对)的更多相关文章
- Emit学习(3) - OpCodes - 动态添加属性、构造函数、方法
上一篇介绍了 IL 的部分, 基础的部分, 暂时就介绍到那里了, 接下来要进入代码编写阶段了. 今天的主题是 在代码运行的过程中, 去动态的创建类, 属性, 方法. 来源:http://www.cnb ...
- js中__proto__, property, prototype, 对象自身属性方法和原型中的属性方法的区别
__proto__: 这个属性是实例对象的属性,每个实例对象都有一个__proto__属性,这个属性指向实例化该实例的构造函数的原型对象(prototype). proterty:这个方法是对象的属性 ...
- 聊聊属性方法property的用法
写之前随便百度了一下博客,又看到廖雪峰的博客了.果然置顶的能力很强. 我想说其实property的用法并不是主要用来做类型检查.反而更多应该是用于简化操作的目的. 写之前想聊一个古老的话题.年初的时候 ...
- Python3学习之路~7.1 静态方法、类方法、属性方法
静态方法 通过@staticmethod装饰器即可把其装饰的方法变为一个静态方法,什么是静态方法呢?其实不难理解,普通的方法,可以在实例化后直接调用,并且在方法里可以通过self.调用实例变量或类变量 ...
- python中的静态方法、类方法、属性方法(福利:关于几种方法更好的解释)
该部分的三个属性都是高级方法,平时用的地方不是很多 一.静态方法 静态方法的使用不是很多,可以理解的就看一下,用的地方不是很多 class Dog(object): def __init__(self ...
- Python基础(10)——类进阶(静态方法、类方法、属性方法)
以下方法为高级方法,一般来说没什么卵用 1.静态方法 @staticmethod 相当于把类内的函数从类内独立出来,只是名义上归类管,实际上不可以调用类内的变量和函数 通过@staticmethod装 ...
- python-静态方法staticmethod、类方法classmethod、属性方法property
Python的方法主要有3个,即静态方法(staticmethod),类方法(classmethod)和实例方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 def ...
- Python 小知识点(6)--静态方法、类方法、属性方法
(1)静态方法-->-@staticmethod装饰类中方法 只是名义上归类管理, 实际上在静态方法里访问不了类或实例中的任何属性 class Dog(object): def __init__ ...
- Python 静态方法、类方法和属性方法
Python 静态方法.类方法和属性方法 静态方法(staticmethod) staticmethod不与类或者对象绑定,类和实例对象都可以调用,没有自动传值效果,Python内置函数staticm ...
随机推荐
- JS计算数组的总和
1.最简单的遍历累计 var arr=[1,2,3,4,5,6] var sum =0 for(var i=0;i<arr.length;i++){ sum=sum+arr[i] } 2.利用r ...
- NodeJS4-2静态资源服务器实战_实现获取文件路径
实例2 : 实现获取文件路径,判断是文件还是文件夹,如果是文件夹就显示里面的列表文件,如果是文件就显示里面的内容 defaultConfig.js module.exports={ root:proc ...
- PAT1057 Stack(树状数组+倍增)
目录 题目大意 题目分析 题目大意 要求维护一个栈,提供压栈.弹栈以及求栈内中位数的操作(当栈内元素\(n\)为偶数时,只是求第\(n/2\)个元素而非中间两数的平均值).最多操作100000次,压栈 ...
- django基础之day08,ajax结合sweetalert的使用
models.py文件 from django.db import models class User(models.Model): username=models.CharField(max_len ...
- GHOST CMS - Package.json
Package.json The package.json file is a set of meta data about a theme. package.json 文件是一组关于主题的元数据. ...
- 全平台轻量开源verilog仿真工具iverilog+GTKWave使用教程
前言 如果你只是想检查Verilog文件的语法是否有错误,然后进行一些基本的时序仿真,那么Icarus Verilog 就是一个不错的选择.相比于各大FPGA厂商的IDE几个G的大小,Icarus V ...
- 【转载】img图片之间的间距问题
[问题]页面中如果有多张图片,那么图片之间会有一些间距,在某些情况下(如切好的图片再次拼接),在显示上就会出现一些问题.效果如下: 解决方案参看以下文章 img图片之间的间距问题
- python 多线程编程之threading模块(Thread类)创建线程的三种方法
摘录 python核心编程 上节介绍的thread模块,是不支持守护线程的.当主线程退出的时候,所有的子线程都将终止,不管他们是否仍在工作. 本节开始,我们开始介绍python的另外多线程模块thre ...
- mysql安装过程及无法启动mysql的办法
下载并解压MySQL 下载mysql-8.0.17-win64 \https://dev.mysql.com/downloads/mysql/8.0.html // 这里提供的是8.0以 ...
- linux vscode 编译配置
linux 环境下,g++和clang都可以作为C++的编译器,我这里选择使用的是clang. 首先是插件选择: (1) C/C++ 微软自带的C/C++插件. (2) C/C++ Clang Com ...