C#知识
2018年10月29日
1.类可以定义的位置:
(1)单独定义一个class,在program类的同一个文件内
(2)单独定义一个class,在program类的不同一个文件内
(3)类内定义class——内部类,有public、protected、private。。。限制
(4)注意:class类不可以在main函数中定义
2.常量:
(1)定义格式:【public/protected/private】 const 类型 常量名 = 值;
(2)使用格式: 类名.常量名
(3)注意:成员属于类,而不是属于某一个对象的
3.静态成员:
(1)静态成员变量、静态成员函数
(2)定义格式:【public/protected/private】 static 数据类型 成员变量名;
(3)使用格式:类名.成员变量名
(4)注意:成员属于类,而不是属于某一个对象的
(4)注意:静态static不可以在函数中定义
4.不能够实例化的类——抽象类:
下面时具体课件
1.同一个命名空间下,类的定义
(1)单独定义一个class,在program类的同一个文件内
namespace ConsoleApplication5
{
class A { }// 单独定义一个class,在program类的同一个文件内
class Program
{
static void Main(string[] args)
{
A a = new A();
Class1 c = new Class1();
Console.WriteLine();
}
}
}
(2)单独定义一个class,在program类的不同一个文件内
(3)类内定义class——内部类,有public、protected、private。。。限制
class A {
public void show() { }
public class D { }
}// 单独定义一个class,在program类的同一个文件内
class Program
{
static void Main(string[] args)
{
A a = new A();
Class1 c = new Class1();
C c1 = new C();
A.D d = new A.D();
Console.WriteLine();
}
class C { } // 内部类
}
2.常量
定义格式:【public/protected/private】 const 类型 常量名 = 值;
使用格式: 类名.常量名
成员属于类,而不是属于某一个对象的
class A
{
public int i = 10;
public const float PI = 3.14f;
}
class Program
{
static void Main(string[] args)
{
A a = new A();
Console.WriteLine(a.i);
Console.WriteLine(a.PI);
Console.ReadKey();
}
}
3.静态成员
静态成员变量、静态成员函数
定义格式:【public/protected/private】 static 数据类型 成员变量名;
使用格式:类名.成员变量名
------ Build started: Project: ConsoleApplication6, Configuration: Debug x86 ------
E:\Jean\Solution\ConsoleApplication6\Program.cs(16,13): error CS0106: The modifier 'static' is not valid for this item
Compile complete -- 1 errors, 0 warnings
========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========
4.不能够实例化的类——抽象类
格式:abstract class 类名 { }
只能够被继承使用
5.不能够被继承的类——密封类
C#:sealed
Java:final
6.抽象函数
没有函数体——函数功能没有被实现
结论:抽象函数必须在抽象类内,但抽象类可以有抽象函数和普通函数
abstract class A
//class A
{
public void display() { Console.WriteLine("A show()"); }
public abstract void show();
public static void ClassName() { }
}
sealed class B : A {
public override void show()
{
Console.WriteLine("B show()");
}
}
class Program
{
static void Main(string[] args)
{
//A a = new A();//实例化
B b = new B();
b.show();
Console.ReadKey();
}
}
C#知识的更多相关文章
- 你必须知道的EF知识和经验
注意:以下内容如果没有特别申明,默认使用的EF6.0版本,code first模式. 推荐MiniProfiler插件 工欲善其事,必先利其器. 我们使用EF和在很大程度提高了开发速度,不过随之带来的 ...
- MySQL高级知识- MySQL的架构介绍
[TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...
- 学点HTTP知识
不学无术 又一次感觉到不学无术,被人一问Http知识尽然一点也没答上来,丢人丢到家了啊.平时也看许多的技术文章,为什么到了关键时刻就答不上来呢? 确实发现一个问题,光看是没有用的,需要实践.看别人说的 ...
- java中的字符串相关知识整理
字符串为什么这么重要 写了多年java的开发应该对String不陌生,但是我却越发觉得它陌生.每学一门编程语言就会与字符串这个关键词打不少交道.看来它真的很重要. 字符串就是一系列的字符组合的串,如果 ...
- [C#] C# 知识回顾 - 你真的懂异常(Exception)吗?
你真的懂异常(Exception)吗? 目录 异常介绍 异常的特点 怎样使用异常 处理异常的 try-catch-finally 捕获异常的 Catch 块 释放资源的 Finally 块 一.异常介 ...
- [C#] C# 知识回顾 - 学会处理异常
学会处理异常 你可以使用 try 块来对你觉得可能会出现异常的代码进行分区. 其中,与之关联的 catch 块可用于处理任何异常情况. 一个包含代码的 finally 块,无论 try 块中是否在运行 ...
- [C#] C# 知识回顾 - 学会使用异常
学会使用异常 在 C# 中,程序中在运行时出现的错误,会不断在程序中进行传播,这种机制称为“异常”. 异常通常由错误的代码引发,并由能够更正错误的代码进行 catch. 异常可由 .NET 的 CLR ...
- [C#] C# 知识回顾 - 异常介绍
异常介绍 我们平时在写程序时,无意中(或技术不够),而导致程序运行时出现意外(或异常),对于这个问题, C# 有专门的异常处理程序. 异常处理所涉及到的关键字有 try.catch 和 finally ...
- [.NET] C# 知识回顾 - Event 事件
C# 知识回顾 - Event 事件 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/6060297.html 序 昨天,通过<C# 知识回顾 - ...
- [.NET] C# 知识回顾 - 事件入门
C# 知识回顾 - 事件入门 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/6057301.html 序 之前通过<C# 知识回顾 - 委托 de ...
随机推荐
- pip 安装库过慢
对于Python开发用户来讲,PIP安装软件包是家常便饭.但国外的源下载速度实在太慢,浪费时间.而且经常出现下载后安装出错问题. 所以把PIP安装源替换成国内镜像,可以大幅提升下载速度,还可以提高安装 ...
- jquery -- jquery控制只能输入数字和小数点
控制文本框只能输入数字是一个很常见的需求,比如电话号码的输入.数量的输入等,这时候就需要我们控制文本框只能输入数字.在用js控制之后在英文输入法的状态下去敲击键盘上的非数字键是输不进去的,然而当你转到 ...
- php -- 静态变量
一般的函数内变量在函数结束后会释放,比如局部变量,但是静态变量却不会.下次再调用这个函数的时候,该变量的值会保留下来. 静态的变量的基本用法 1. 在类中定义静态变量 [访问修饰符] static $ ...
- write solid code 零散(原文)
整理下目录,看了这个文件,幸好未删除. 以下是<write solid code>中的原文摘录. 1.How could I have prevented this bug? 2.How ...
- url传参错误的痛
今天用一下方法给后台传参数: var url = 'patrolpoint!totalHistoryPage.action' + '?patrolPoint.batchOnTime=' ...
- 在Linux服务器上部署node项目(git部署,forever持续运行,配置SSL证书)
一.环境部署 1.下载安装包: wget https://nodejs.org/dist/v9.9.0/node-v9.9.0-linux-x64.tar.xz 2.解压并进入目录: xz -d no ...
- 几张图轻松理解String.intern()
https://blog.csdn.net/soonfly/article/details/70147205 在翻<深入理解Java虚拟机>的书时,又看到了2-7的 String.inte ...
- 一、SDWebImage分析--库处理流程分析
二.SDWebImage分析--源码具体分析 这阵子看了SDWebImage的实现跟源代码.也看了下网上的一些总结. 这里我自己画了个流程图来辅助理解下SDWebImage这个库的实现流程.相信也是有 ...
- VC++第三方库配置-OpenSpirit 4.2.0 二次开发
在VS中右击项目,点击属性 1.配置属性--常规--输出目录:Windows\VS2010\debug\ 2.配置属性--常规--中间目录:Windows\VS2010\debug\ 3.配置属性-- ...
- Python 使用正则表达式匹配电子邮箱
如下: In [1]: import re In [2]: email = "1210640219@qq.com" In [3]: regular = re.compile(r'[ ...