C#学习笔记_13_静态类&Sealed&运算符重载&抽象类
13_静态类&Sealed&运算符重载&抽象类
- 静态类
- 由static修饰的类就是静态类
- 特点:
- 静态类不能实例化对象
- 静态类中不允许写非静态的成员
- 静态类只能由一个父类Object
- 静态类不能继承自其他类也不能被继承
- 用处:
- 用来设计工具类
- Sealed关键字
- 密封
- 作用:
- 用来修饰类
- 叫做密封类,不能被继承
- 用来修饰方法
- 叫密封方法,不能被继续重写
- 只有override方法可以被密封
- 用来修饰类
- 运算符重载

- 通过特定的语法,使某些运算符都可以具备特殊的功能
- 关键字 operator
- 可以重载的运算符:
- 算术运算符:全部可以重载
- 赋值运算符:全部不能重载
- 关系运算符:全部可以重载
- 如果想重载关系运算符,那么必须要成对重载
- 如果重载了 >,必须重载 <
- 如果重载了 >=,必须重载 <=
- 如果重载了==,必须重载 !=
- 逻辑运算符:& | ! ^ 可以被重载,&& || 不可以
- 位运算符:~ & | 可以被重载
- 注意:
- 1、参数的数量一定要和这个运算符能够操作的数量匹配
- 2、参数类型和返回值类型可以随意设置,但是要合理
- 抽象类
- 用关键字abstract来修饰的类

- 特点:
- 1、不能实例化对象
- 2、抽象类中既可以写静态的成员,也可以写非静态的成员
- 3、抽象类可以被其他类继承,也可以继承自其他类
- 抽象方法
- 用abstract修饰的方法就是抽象方法
- 特点:
- 1、抽象方法使用abstract修饰,只有声明没有实现
- 2、抽象方法只能写在抽象类中
- 如果一个非抽象类继承自抽象类,那么子类必须实现父类中所有的抽象方法
- 用途
- 一种规范,用来约束所有的子类的行为

- 一种规范,用来约束所有的子类的行为
- 用关键字abstract来修饰的类
C#学习笔记_13_静态类&Sealed&运算符重载&抽象类的更多相关文章
- 【学习笔记】oracle 比较运算符,逻辑运算符,特殊运算符,判断空值,大小写敏感
比较运算符:> 大于,< 小于 >= 大于等于,<= 小于等于 = 等于,!=,<>,^= 不等于 逻辑运算符运算的优先顺序:NOT > AND > O ...
- JavaScript:学习笔记(8)——对象扩展运算符
JavaScript:学习笔记(8)——扩展运算符 对象的扩展运算符 扩展运算符是三个点(...).用于取出参数对象的所有可遍历属性,然后拷贝到当前对象之中. 如上图所示,新建了一个对象a,然后通过扩 ...
- 【c++ Prime 学习笔记】第14章 重载运算与类型转换
14.1 基本概念 重载的运算符是特殊的函数:名字由关键字operator后接要定义的算符共同组成,也有返回类型.参数列表.函数体. 重载运算符函数的参数量与该算符作用的运算对象数量一样多 除重载调用 ...
- Mysql学习笔记(三)运算符和控制流函数
本章学习内容: 1.操作符 2.控制流程函数 操作符: i.圆括号.. 简单的介绍一下圆括号,圆括号的使用的目的是规定计算表达式的顺序...这个想必大家都熟悉例如 mysql>select 1 ...
- Java学习笔记之:java运算符
一.介绍 计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量.我们可以把运算符分成以下几组: 算术运算符 关系运算符 位运算符 逻辑运算符 赋值运算 ...
- Java学习笔记17---成员方法的重载与重写
重载是指,一个类中定义了一个成员方法后,通过修改参数个数.参数类型或参数顺序,重新实现该方法,则这两个方法互为对方的重载方法. 重写是指,子类重新实现父类的成员方法. 重载后的方法,与原方法相比: ( ...
- C++学习笔记22,普通函数重载(1)
转载请注明出处:http://blog.csdn.net/qq844352155/article/details/31353325 该博文仅用于交流学习,请慎用于不论什么商业用途,本博主保留对该博文的 ...
- C++学习笔记 封装 继承 多态 重写 重载 重定义
C++ 三大特性 封装,继承,多态 封装 定义:封装就是将抽象得到的数据和行为相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成类,其中数据和函数都是类的成员,目的在于将对 ...
- Java学习笔记(三)——运算符
一.运算符: 1.分类: 2.java中的运算符 (1)其中,++在左,表示先加了再用,++在右,表示先用了再加. (2)% 用来求余数,也称为"取模运算符" 3.赋值运算符 4. ...
随机推荐
- splay专题复习——bzoj 3224 & 1862 & 1503 题解
[前言]快要省选二试了.上次去被虐出翔了~~这次即便是打酱油.也要打出风採!于是暂停新东西的学习.然后開始复习曾经的知识,为骗分做准备.PS:区间翻转的临时跳过,就算学了也来不及巩固了. [BZOJ3 ...
- 从头认识java-13.7 什么时候使用泛型?
这一章节我们来讨论一下什么时候使用泛型? 答案:当你希望代码能够跨多个类型(不同的类型,不包括继承关系)工作的时候. 1.当没有确切类型的时候 以下是错误的代码: package com.ray.ch ...
- DeepDive is a system to extract value from dark data.
DeepDive is a system to extract value from dark data. http://deepdive.stanford.edu/
- tiny4412学习(四)之移植linux-设备树(1)设备树基础知识及GPIO中断【转】
本文转载自:http://blog.csdn.net/fengyuwuzu0519/article/details/74177978 版权声明:本文为博主原创文章,转载请注明http://blog.c ...
- kentico9开始移除的webpart
https://devnet.kentico.com/articles/fighting-featuritis https://blog.intercom.com/product-strategy-m ...
- bzoj1008 [HNOI2008]越狱——快速幂
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1008 (这样一道水题还因为忘记写 %lld WA了那么多遍) 发生越狱的状态数,就是全部状态 ...
- JS判断数组是否包含某元素
我在学习ES6数组拓展时,发现了新增了不少了有趣的数组方法,突然想好工作中判断数组是否包含某个元素是非常常见的操作,那么这篇文章顺便做个整理. 1.for循环结合break 可能很多人第一会想到for ...
- Mobile
模块===包 传统开发:整个网页我们写了一个js文件,所有的特效都写在里面了. 缺点:耦合度太高,代码关联性太强,不便于后期维护,会造成全局污染. 发生的请求次数过多,依赖模糊,难于维护. 以上都 ...
- Jquery课堂上课了,第一节Jquery选择器$
Jquery是优秀的Javascrīpt框架,$是jquery库的申明,它很不稳定(我就常遇上),换一种稳定的写法jQuery.noConflict(); jQue ...
- cocos2dx实现单机版三国杀(二)
接上续,东西还没有做完 所以代码免不了改动 之前的头文件现在又改了不少,因为架构也改变了现在主要类就是GameScene.GameUI.PlayInfo.Poker这四个类 前面想的GameLoop ...