1、抽象方法与抽象类的声明

1)抽象类和抽象方法声明必须包含abstract

2)抽象方法的声明没有方法体:public abstract void fly();

3)抽象类和抽象法前加上public,不加默认会是private。

4)抽象类的声明就是为了派生和继承,标记为sealed,是不可以继承的。

5)抽象类不能实例化,也就是不能用new、sealed,必须通过继承由派生类实现其抽象方法

6)抽象类可以包含非抽象方法

7)笔记原文:

Program.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//抽象类加abstract
//public abstract Fky(){}//默认是private
//public abstract void fly();抽象方法声明没有方法体
//抽象类和抽象方法多的声明必须包含abstract
//抽象类的声明就是为了派生和继承,如果标记为sealed,不可以继承了
//抽象类不能实例化,必须通过继承由派生类实现其抽象方法,因此不能用new、sealed
//抽象类中可以包含非抽象方法
namespace 抽象类与抽象方法
{
class Program
{
static void Main(string[] args)
{

}
}
}

2、抽象类与抽象实例

Pow.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 抽象类和抽象法实例
{
public abstract class Pow
{
public abstract void PowMehod(int x,int y);
}
}

Pow1.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 抽象类和抽象法实例
{
class Pow1:Pow
{
public override void PowMehod(int x,int y)
{
int pow = 1;
for (int i = 1; i <= y; i++)
{
pow *= x;
}
Console.WriteLine("求幂的结果是:"+pow);
}
}
}

Pow2.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 抽象类和抽象法实例
{
class Pow2:Pow
{
public override void PowMehod(int x, int y)
{

Console.WriteLine("求幂的结果:"+System.Math.Pow(x,y));
}
}
}

Program.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 抽象类和抽象法实例
{
class Program
{
static void Main(string[] args)
{
//Pow pow = new Pow();抽象类不可以实例化
Pow1 pow1 = new Pow1();
pow1.PowMehod(2,10);
Pow2 pow2 = new Pow2();
pow2.PowMehod(2,10);
Console.ReadKey();
//abstract方法:没有自己的实现。
//virtual方法
//共同点:都可以通过overrid来实现对原来的方法的重写
}
}
}

C#抽象方法与抽象实例--C#基础的更多相关文章

  1. C#抽象类、抽象方法、抽象属性

    定义 在C#中使用关键字 abstract 来定义抽象类和抽象方法. 不能初始化的类被叫做抽象类,它们只提供部分实现,但是另一个类可以继承它并且能创建它们的实例."一个包含一个或多个纯虚函数 ...

  2. Oracle之索引(Index)实例解说 - 基础

    Oracle之索引(Index)实例解说 - 基础 索引(Index)是关系数据库中用于存放表中每一条记录位置的一种对象.主要目的是加快数据的读取速度和数据的完整性检查.索引的建立是一项技术性要求很高 ...

  3. canvas实例(基础)

    JS实现五子棋大战:GitHub源码 知识点总结: 第一步.基础: //获取canvas var chess = document.getElementById('chess'); //获取上下文,创 ...

  4. 141-PHP类的抽象方法和继承实例(一)

    <?php abstract class ren{ //定义人类 //定义成员属性 protected $name=''; protected $age=0; //定义成员方法 public f ...

  5. HTML5经典实例——1基础语法和语义

    1指定DOCTYPE 在页面的最开始处指定HTML5 DOCTYPE DOCTYPE是不区分大小写的.可以任意的使用大小写. <!DOCTYPE html> <html lang=& ...

  6. Android中Handler的使用方法及实例(基础回顾)

    Handler使用例1 这个例子是最简单的介绍handler使用的,是将handler绑定到它所建立的线程中.本次实验完成的功能是:单击Start按钮,程序会开始启动线程,并且线程程序完成后延时1s会 ...

  7. 用C开发PHP扩展 实例(基础版)

    第一步:建立扩展骨架. cd /usr/local/src/php-5.3.6/ext/ ./ext_skel --extname=laiwenhui 第二步:修改编译参数. cd php-5.3.6 ...

  8. shell 一键配置单实例oracle基础环境变量(linux7)

    #!/bin/bash echo "修改主机名" hostnamectl set-hostname wangxfa hostname sleep 1 echo "查看并关 ...

  9. C# 抽象类、抽象属性、抽象方法

    抽象类往往用来表征对问题领域进行分析.设计中得出的抽象概念,是对一系列看上去不同,但是本质上相同的具体概念的抽象. 下面我们以水果为例,首先定义抽象类Fruit,抽象类中有公共属性vendor,抽象属 ...

随机推荐

  1. python3加密解密模块 cryptography

    cryptography 的目标是成为"人类易于使用的密码学包cryptography for humans",就像 requests 是"人类易于使用的 HTTP 库H ...

  2. SpringBoot入门Demo

    前言:相信做java后台编程的童鞋都知道Spring家族,Spring作为我们项目中必备的框架.JavaSpringBoot号称javaEE的颠覆者,这引起了本Y的好奇,这才花费了一点时间,学习了下s ...

  3. LCA—倍增法求解

    LCA(Least Common Ancestors) 即最近公共祖先,是指在有根树中,找出某两个结点u和v最近的公共祖先. 常见解法一般有三种 这里讲解一种在线算法-倍增 首先我们定义fa[u][j ...

  4. 利用Jsonp实现跨域请求,spring MVC+JQuery

    1 什么是Jsonp? JSONP(JSON with Padding)是数据格式JSON的一种"使用模式",可以让网页从别的网域要数据.另一个解决这个问题的新方法是跨来源资源共享 ...

  5. django-站点管理

    站点管理--超级用户的管理界面,可以让你添加,删除,管理网站内容: 一.激活管理界面 1.在settings.py中进行如下配置: INSTALLED_APPS = ( 'django.contrib ...

  6. Jenkins系列——定时构建

    1.环境说明 操作系统:win7旗舰版64bit jdk:sun JDK1.7.0_80 64bit tomcat:apache-tomcat-8.0.41 jenkins:2.32.3LST 本系列 ...

  7. 轻松掌握VS Code开发.Net Core及创建Xunit单元测试

    前言 本篇文章主要还是介绍使用 VS Code 进行.Net Core开发和常用 CLI命令的使用,至于为啥要用VS Code ,因为它是真的是好看又好用 :) ,哈哈,主要还是为了跨平台开发做准备. ...

  8. poj2635 同余定理 + 素数筛法

    题意:给定一个数,这个数是两个素数的乘积,并给定一个限制L,问是否两个素数中存在小于L的数,若存在输出较小质数,否则打印'GOOD'. 思路: 1 . x = a * b, a和b都是素数,那么x只能 ...

  9. Java Enum总结

    枚举类型 枚举类型是Java5新增的特性之一,枚举是一种特殊类型的类,其枚举的每一个值 都是该枚举类的一个实例.枚举类型是作为Java语言的一部分,是完全类型安全的, 编译器会帮助我们检查枚举类型的正 ...

  10. Spring Boot 2.0(三):Spring Boot 开源软件都有哪些?

    2016年 Spring Boot 还没有被广泛使用,在网上查找相关开源软件的时候没有发现几个,到了现在经过2年的发展,很多互联网公司已经将 Spring Boot 搬上了生产,而使用 Spring ...