c# 第22节 c#四大方法 静态方法、实例方法、虚方法、重新方法
本节内容:
1:静态方法和实例方法什么
2:虚方法是什么
3:重写方法
4:禁止重写方法
1:静态方法和实例方法是什么
静态方法,一般是类的常用方法,允许在不创建类的实例的情况下,直接调用。
静态方法只允许访问类的静态成员。
实例方法,需要创建类的实例 ,通过实例对象调用。
静态和实例的区分:就是有无static
public class MyClass {
// 定义类的实例成员变量
public int number;
// 定义类的静态成员变量
public static string owner;
// 定义类的静态方法
public static void SayHello(string name) {
// 可访问类的静态成员变量
owner = "KChris";
Console.WriteLine("{0} sayHello: hello {1}.", owner, name);
}
// 定义类的实例方法
public void SayBye(string name) {
// 可访问类的实例成员变量和静态成员变量
number = ;
owner = "KChris";
Console.WriteLine("number: {0}.", number);
Console.WriteLine("{0} sayBye: bye {1}.", owner, name);
}
}
public class ExecuteMyClass {
public static void Main(string[] args) {
// 不创建类的实例对象,直接使用类的静态方法
MyClass.SayHello("KChris");
// 创建类的实例对象,以使用类的实例方法
MyClass a = new MyClass();
a.SayBye("KChris");
Console.ReadKey();
}
}
2:虚方法是什么
虚方法:使用virtual关键字定义,当子类继承父类时,可以对父类中的虚方法进行重写。

输出:

4:重写方法
new :直接重写,不需要相同的签名
override :要求有相同的签名。


5:不想让别人重写的我方法 怎么办?

c# 第22节 c#四大方法 静态方法、实例方法、虚方法、重新方法的更多相关文章
- 第8.22节 Python案例详解:重写 “富比较”方法控制比较逻辑
一. 案例说明 本节定义一个小汽车的类Car,类中包括车名carname.百公里油耗oilcostper100km.价格price三个属性.然后实现__lt__.__gt__.__le__.__ge_ ...
- JQuery extend()与工具方法、实例方法
使用jQuery的时候会发现,jQuery中有的函数是这样使用的: $.get(); $.post(); $.getJSON(); 有些函数是这样使用的: $('div').css(); $('ul' ...
- Android零基础入门第22节:ImageView的属性和方法大全
原文:Android零基础入门第22节:ImageView的属性和方法大全 通过前面几期的学习,TextView控件及其子控件基本学习完成,可以在Android屏幕上显示一些文字或者按钮,那么从本期开 ...
- 第7.22节 Python中使用super调用父类的方法
第7.22节 Python中使用super调用父类的方法 前面章节很多地方都引入了super方法,这个方法就是访问超类这个类对象的.由于super方法的特殊性,本节单独谈一谈super方法. 一.su ...
- Android零基础入门第78节:四大组件的纽带——Intent
前面学习Activity时己经多次使用了 Intent,当一个Activity需要启动另一个Activity时, 程序并没有直接告诉系统要启动哪个Activity,而是通过Intent来表达自己的意图 ...
- 第一百零七节,JavaScript基本包装类型,数据类型的方法
JavaScript基本包装类型,数据类型的方法 学习要点: 1.基本包装类型概述 2.Boolean类型 3.Number类型 4.String类型 为了便于操作基本类型值,ECMAScript提供 ...
- JAVA_接口_默认方法&静态方法
1.小结(注意): 1.接口中无法定义成员变量,但是可以定义常量,其值不可以改变,默认使用public static final修饰 2.接口中,没有构造方法,不能创建对象 3.接口中,没有静态代码块 ...
- Python面向对象静态方法,类方法,属性方法
Python面向对象静态方法,类方法,属性方法 属性: 公有属性 (属于类,每个类一份) 普通属性 (属于对象,每个对象一份) 私有属性 (属于对象,跟普通属性相似,只是不能通过对象直接访问) 方法: ...
- Python 静态方法、类方法和属性方法
Python 静态方法.类方法和属性方法 静态方法(staticmethod) staticmethod不与类或者对象绑定,类和实例对象都可以调用,没有自动传值效果,Python内置函数staticm ...
随机推荐
- WPF窗口传递 委托事件
1.子窗口定义委托事件 public delegate void Btn_Click(int i); public event Btn_Click BtnEvent; 在子窗口使用 BtnEvent( ...
- Java核心(一)深入理解BIO、NIO、AIO
目标: BIO.NIO.AIO 的区别是什么? 同/异步.阻/非阻塞的区别是什么? 文件读写最优雅的实现方式是什么? NIO 如何实现多路复用功能? 一,IO的介绍: (1)IO的全称其实是:Inpu ...
- RabbitMQ学习笔记(五、RabbitMQ集群)
目录: RabbitMQ集群 镜像队列 RabbitMQ服务日志 RabbitMQ分布式部署 高可用集群 RabbitMQ集群: 1.集群中组件的状态 首先MQ一定要是一个高可用的中间件所以集群肯定是 ...
- 【转】【好文章】更愉快的写css
我在写CSS的时候经常会碰到些麻烦事儿: 1)看上去蛮简单的排版却写了很久 2)代码写的越来越散,总是这里补一句,那里补一句,没有条理性 3)margin.padding.font-size等属性在不 ...
- testNG常用用法总结
一.testNG介绍 TestNG是Java中的一个测试框架, 类似于JUnit 和NUnit, 功能都差不多, 只是功能更加强大,使用也更方便 Java中已经有一个JUnit的测试框架了. T ...
- maven help 插件
maven help 插件 <build> <plugins> <plugin> <groupId>org.apache.maven.plugins&l ...
- redhat 安装 oracle中途遇到的问题(1)
(1)安装到68%时出现弹出框 Error in invoking target 'install' of makefile '/home/oracle/app/oracle/product/11.2 ...
- golang数据结构之利用栈求计算表达式(加减乘除)
例如:3+2*6-2 先定义两个栈,一个为数值栈,一个为运算符栈: stack.go package stack import ( "errors" "fmt" ...
- flask--数据库迁移之连环踩坑记
flask数据库迁移命令: python manage.py db init python manage.py db migrate python manage.py db upgrade 1.报错: ...
- python做中学(二)bool()函数的用法
定义: bool() 函数用于将给定参数转换为布尔类型,如果没有参数,返回 False. bool 是 int 的子类. 语法: 以下是 bool() 方法的语法: class bool([x] 参数 ...