SQL面向对象抽象类

抽象类:
抽象类,只为继承而出现,不定义具体的内容,只规定该有哪些东西;
一般抽象类中只放置抽象方法,只规定了返回类型和参数;
例:
人 - 有吃饭,睡觉方法;
男人 - 继承人抽象类,必须实现吃饭,睡觉的方法主体;
女人 - 继承人抽象类,必须四线吃饭,睡觉方法的主体;

抽象类中可以有普通属性,通过子类来使用;

1.关键字:abstract
2.抽象类可以包含抽象方法和普通方法
3.abstract关键字可以定义方法为抽象方法,抽象方法可以没有函数体
4.抽象类无法被实例化,抽象类主要做为一个基类,让别的类继承。
5.sealed和abstract关键字不能同时出现
6.如果一个子类继承自抽象类,那么子类中必须实现所有的抽象方法
7.如果子类中没有实现父类的抽象方法,那么该子类必须是抽象类
8.如果一个类里面包含抽象方法,那么该类一定是抽象类

有抽象方法的,一定是抽象类
抽象类中,不一定有抽象方法

public abstruct Ren
{
public abstruct Void Eat();
public abstruct Void Sleep();
}

接口:

极度抽象的类。

总公司--制定了规章制度(接口)--公司必须对员工进行考勤

子公司1--遵循总公司的规章制度--具体实现考勤--打卡
子公司2--遵循总公司的规章制度--具体实现考勤--点名

接口和抽象类的区别:
1.写法区别
关键字:interface
没有class关键字 类名一般用I开头
不用写public因为本身就是public,不用写abstract接口里面所有的都是抽
象的

2.接口里面不能包含普通成员
3.凡是继承接口的类,全部要实现接口里面的方法

因为团队开发,每个人负责一个模块,我只负责人的基本生活部分,另外一个人负责工作部分,还有个人负责娱乐活动部分;

public interface Work
{
void Skill();
void Place();
}

public interface Sports
{
void Sport1();
}

类库:
比如我写程序需要用到加法和减法两个功能,假如我不会写这两个功能,需要其它人帮忙;
那么其它人就可以直接写一个类库,供我使用;

1、源代码方法:
可以将直接写好的.cs源代码文件,添加进我的解决方案文件夹下,在解决方案资源管理器中,
项目上右键,添加,现有项,来添加此.cs源代码文件的使用,需要引入相应的命名空间;

2、类库方法:
一个dll文件,就是一个类库;
它人新建一个类库,在里面编写类和相应的方法,生成后出现一个dll文件,拿过来,放在自己的
程序文件夹里,在项目右键,添加引用,找到此dll类库文件添加,然后引用命名空间,就可以调用相应的类中的方法了;

注意类一定要是public访问权限

类库使用是多公司联合开发时使用的方式,因为每个公司都有自己的核心技术,我允许你使用,但不允许你
知道我是怎么编写的,所以需要dll类库文件,因为dll文件是将源代码文件编译后的文件,看不到源代码,
所以你只能调用不允许更改

例:

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

namespace ConsoleApplication1
{
定义抽象类
public abstract class DongWu
{
public void Run()
{

}
public abstract void Eat();
}

做一个人类来继承抽象类
public class Ren:DongWu
{
public override void Eat()
{
Console.WriteLine("吃熟食");
}
}

定义接口
interface IUSB
{
开始读取USB
void Start();

关闭USB
void Stop();
}

做一个鼠标类来实现USB接口
class ShuBiao:IUSB
{
public void Start()
{
Console.WriteLine("鼠标启动了");
}
public void Stop()
{
Console.WriteLine("鼠标停止了");
}
}

class Program
{
static void Main(string[] args)
{

Ren r = new Ren();
r.Eat();

ShuBiao s = new ShuBiao();
s.Start();
s.Stop();

//BianJi bj = new BianJi();
//WenBenBianJi.BianJi bj = new WenBenBianJi.BianJi();

Console.ReadLine();
}
}
}

时间: 2024-10-07 09:48:48

SQL面向对象抽象类的相关文章

Java面向对象-抽象类

Java面向对象-抽象类 定义:在java中,含有抽象方法的类称为抽象类,同样不能生成对象: 注意点: 1,包含一个抽象方法的类是抽象类: 2,抽象类和抽象方法都要用abstract关键字修饰: 3,抽象方法只需要声明而不需要实现: 4,抽象类必须被子类继承,(假如不是抽象类)必须重写抽象父类中的全部抽象方法: 5,抽象类不能被实例化: 我们先来定义一个抽象类: 1 package com.java1234.chap03.sec11; 2 3 /** 4 * 定义一个抽象类People 5 *

c# 面向对象抽象类的使用

上一篇 讲了 Java 面向对象抽象类的使用.这次我们来学习 C#面向对象抽象类的使用.其实方法理论掌握了,语言只是工具.闲话少说.下面是上一篇的需求 抽象类大家都知道,但是具体有什么用,为什么要用到抽象类.大家肯定有人不太明白.培训中心老师怎么教就怎么用.最近闲来无事.研究起面向对象理论.下面让我用一个例子来说明一下.面向对象抽象类的使用方法.只是起到一个入门和抛砖引玉的作用.(理论和语言无关) 定义和概念: 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来

面向对象抽象类的实际项目的应用

上二篇主要讲了面向对象抽象类的使用.通过Java 和c# 二个语言来说明其如何应用.举的例子也很简单.这一篇想模拟一个实际的项目来具体说明一下.采用的语言是Java必定会这种语言的童鞋很多. 实际项目: 开发一个视频的万能播放器.可以播放AVI.MPEG.RMVB 对这三种格式的视频播放. 例如:001.avi  自动选择播放AVI格式的功能 001.mpeg 自动选择播放MPEG格式的功能 001.rmvb 自动选择播放RMVB格式的功能 其它格式,提示用户.此文件格式不能进行播放.具体播放功

面向对象——抽象类和抽象方法

*概念 类中定义一些不含方法体的方法,它的方法体实现交给该类的子类根据自己的情况去实现,这样的方法就是抽象方法,包含抽象方法的类就是抽象类.抽象类能够被用于类,方法,属性,索引器和事件,使用abstract 在一个类声明中表示该类倾向要作为其它类的基类成员被标示成abstract,或被包含进一个抽象类,必须被其派生类实现. 抽象类通常代表一个抽象概念,它提供一个继承的出发点,当设计一个新的抽象类时,一定是用来继承的,所以,在一个集成关系形成的等级结构里面,树叶节点应该是具体类,而树枝节点应该是抽

Php面向对象 -- 抽象类

抽象类abstract: 有一种类,只能被继承,不能实例化对象.原因就是这个类的定义不完整. 因为php支持定义一种,只有方法的声明部分,而没有方法的实现部分的不完整方法. 如果某个类,包含了这种不完整的方法,就不是不完整类,也就不能实例化对象. 不完整的类,称之抽象类 所包含的不完整的方法,称之抽象方法. 定义: 包含抽象方法的类,就是抽象类. 语法: 定义抽象方法,利用abstract的关键字,告知php那个方法为抽象方法 如果一个类包含一个抽象方法,也就是抽象类,因此也需要使用abstra

面向对象-抽象类

老王是个高富帅.老王是具体类型,高富帅是抽象类,接口是高.富.帅. 抽象类继承有个 is-a关系,语义上“老王是个高富帅”就是继承.接口描述的是行为, 抽象类是一个具体类的抽象,而接口又是抽象类的抽象.就像LeiMing说的那样,接口和抽象类的存在更多是因为设计上的需要,为以后的扩展.在设计模式中有一个“开闭”原则,这就要求我们面向“抽象”编程,而不面向“实现”编程,因为你在设计一个类的时候永远不知道以后会有什么新的类加入进来,所以我们一个方法接受的参数尽量使用接口.    个人觉得应该多使用抽

面向对象-抽象类和接口解析

1. 什么是抽象类 在面向对象编程中,我们通过类来描述事物,这个描述可以是抽象的,因为不可能通过类描述所有的属性和行为,可能同一类事物的不同个体有着行为上的差异.例如我们想用一个类描述鸟的所有基本属性和行为,而所有的鸟都继承自这个类,我们可以把它称为基类.而鸟的叫声是有差异的,我们很难在基类中定义鸟的这个行为,这时候我们就需要用到抽象方法了,将鸟叫这个行为用抽象方法描述,让子类对象自己去实现,而包含抽象方法的类也必须声明为抽象的,这就是抽象类. 总的来说就是:抽象类可以使用抽象的方式描述事物的行

Oracle笔记 十二、PL/SQL 面向对象oop编程

------------------------抽象数据类型----------- --创建地址类型,一定要加as object,还可以在类型中加过程或方法 create or replace type address as object ( province varchar2(10), --省份属性 city varchar2(10) --市属性 ) not final; --not final表示该类型可以有子类型   --定义一个子类型 --under address说明这个类型继承至ad

面向对象 抽象类、接口、类库、五大原则

抽象类 抽象类,只为继承而出现,不定义具体的内容,只规定该有哪些东西一般抽象类中只放置抽象方法,只规定了返回类型和参数比如: 人    - 有吃饭,睡觉方法 男人 - 继承人抽象类,必须实现吃饭,睡觉的方法主体 女人 - 继承人抽象类,必须实现吃饭,睡觉方法的主体 抽象类中可以有普通属性,通过子类来使用 1.关键字:abstract2.抽象类可以包含抽象方法和普通方法3.abstract关键字可以定义方法为抽象方法,抽象方法可以没有函数体4.抽象类无法被实例化,抽象类主要做为一个基类,让别的类继