社区
C#
帖子详情
C#的抽象类能否定义变量?
mary0226
2004-09-16 07:51:07
C#的抽象类能不能定义变量,如果能定义变量那么怎样调用它,并请给出一个例子!
...全文
867
26
打赏
收藏
C#的抽象类能否定义变量?
C#的抽象类能不能定义变量,如果能定义变量那么怎样调用它,并请给出一个例子!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
26 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
luaiping
2004-10-25
打赏
举报
回复
不可以
可以定义抽象属性
mary0226
2004-10-25
打赏
举报
回复
我的意思是就象定义公共变量那样,可不可以定义抽象变量,如果可以的话,那要怎么引用
qpl007
2004-10-21
打赏
举报
回复
抽象类中只能定义抽象方法的方法签名,不能定义实现!
mary0226
2004-10-15
打赏
举报
回复
to qpl007(蓝色闪电) :
我看明白你给我的例子了
你的例子和gaoxiaospring(gaoxiaospring)一样
但是我不是问的那个意思!
我的意思是up
mary0226
2004-10-15
打赏
举报
回复
to NoReady(亦正亦偏):
我看了你的方法 ,但是我问的不是这个!
up!
mary0226
2004-10-15
打赏
举报
回复
to gaoxiaospring(gaoxiaospring):
你这个是抽象方法
我问的是可不可定义抽象类当中定义:
public abstract Paint;
如果可以那怎么调用?
gaoxiaospring
2004-10-15
打赏
举报
回复
using System;
namespace Ex01
{
public abstract class ITest
{
public ITest() {}
public void Paint()
{
Console.WriteLine("ITest.Paint");
}
public abstract void Print();
}
public class Test:ITest
{
public override void Print()
{
Console.WriteLine("Test.Print");
}
}
public class CTest
{
[STAThread]
static void Main(string[] args)
{
//ITest a=new ITest();//Error
ITest a=new Test();
a.Print();
a.Paint();
}
}
}
qpl007
2004-10-15
打赏
举报
回复
bb类要继承自aa
public class bb:aa
{
...
public override void AbstractMethod()
{
//do something
}
...
}
qpl007
2004-10-15
打赏
举报
回复
>>>>>>>>ab.cs(13,14): error CS0534: “bb”不会实现继承的抽象成员“aa.AbstractMethod()”
就是报的这个错误!
你得在类bb里实现aa.AbstractMethod()啊!
public class bb
{
...
public override void AbstractMethod()
{
//do something
}
...
}
mary0226
2004-10-14
打赏
举报
回复
up
mary0226
2004-10-13
打赏
举报
回复
ab.cs(13,14): error CS0534: “bb”不会实现继承的抽象成员“aa.AbstractMethod()”
就是报的这个错误!
mary0226
2004-10-08
打赏
举报
回复
to qpl007(蓝色闪电):
我用了可是在执行的时候抽象方法确报错。
各位兄弟姐妹们:
有没有谁能帮帮忙啊
yxred
2004-10-08
打赏
举报
回复
不能用 new 抽象类,但可定义一个指针,用子类实例初始化,调用其成员
qpl007
2004-10-08
打赏
举报
回复
>>>>>>>>>>>>>>我用了可是在执行的时候抽象方法确报错
报什么错?
mary0226
2004-10-08
打赏
举报
回复
没有人回答啊
自己UP
mary0226
2004-10-08
打赏
举报
回复
自己 DING
simonllf
2004-09-17
打赏
举报
回复
MARK
qpl007
2004-09-17
打赏
举报
回复
不好意思,打错了,修改一下类 cc:
public class cc
{
public void SomeMethod()
{
bb x=new bb();
(x as aa).value = "xxx";//调用
(x as aa).aamethod();
}
}
khzide
2004-09-17
打赏
举报
回复
可以定义,但因为不可以创建实类,所以可以在实现类中访问。
qpl007
2004-09-17
打赏
举报
回复
例如:
public abstract class aa //抽象类,不能被实例化
{
public string value;//声明
public void aamethod()
{
...//操作
}
...
public abstract void AbstractMethod();//抽象方法
}
public class bb:aa //在这里实现抽象类的抽象方法
{
...
}
public class cc
{
public void SomeMethod()
{
bb x=new bb();
(bb as aa).value = "xxx";//调用
(bb as aa).aamethod();
}
}
加载更多回复(6)
1.5:接口和
抽象
类的区别.pdf
1. 小结 1.abstract class 在
c#
语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个interface。 2.在abstract class 中可以有自己的数据成员,也可以有非abstarct的成员方法,而在interface中,只能够有静态的不能被修改的数据成员(也就是必须是static final的,不过在 interface中一般不
定义
数据成员),所有的成员方法都是abstract的。 3.abstract class和interface所反映出的设计理念不同。其实abstract class表示的是"is-a"关系,interface表示的是"like-a"关系。 4.实现
抽象
类和接口的类必须实现其中的所有方法。
抽象
类中可以有非
抽象
方法。接口中则不能有实现方法。如果接口或者
抽象
类的子类不想实现则继续携程一个
抽象
方法 5.接口中
定义
的
变量
默认是public static final 型,且必须给其初值,所以实现类中不能重新
定义
,也不能改变其值。 6.
抽象
类中的
变量
默认是 friendly 型,其值可以在子类中重新
定义
,也可以重新赋值。 7.接口中的方法默认都是 public,abstract 类型的。
C#
试题库最全版
1、操作符( && )被用来说明两个条件同为真的情况。 2、接口只能
定义
方法,实现要由( 类 )完成。 3、任何事物都是(对象),它可以是现实世界中的一个物理对象,可以是
抽象
的概念或规则。 4、( += )运算符将左右操作数相加的结果赋值给左操作数。 5、( Array )是所有数组的基类。 6、如果一个属性里既有set访问器又有get访问器,那么该属性为( 读写 )属性。 7、如果一个属性里只有set 访问器,那么该属性为( 只写 )属性。 8、常量通过关键字( const )进行声明。 9、在
C#
中,进行注释有两种方法:使用//和使用“/* */”符号对,其中( // )只能进行单行注释。 10、布尔型的
变量
可以赋值为关键字( true )或( false )。 11、System.Array有一个( Length )属性,通过它可以获取数组的长度。 12、如果一个类包含一个或多个
抽象
方法,它是一个(
抽象
)类。 13、SQL语句中删除一个表中记录,使用的关键字是( delete )。 14、设x=10; 则表达式 x<10?x=0:x++ 的值为( 10 )。
C#
零基础入门课程
零基础
C#
入门课程旨在帮助编程小白从零开始掌握
C#
语言的基础知识和编程技能。课程主要包括以下几个方面:
C#
语言简介与开发环境搭建:介绍
C#
语言的特点、应用场景和优势,并教授如何搭建
C#
开发环境,选择和使用常用工具。
C#
基础语法:详细讲解
C#
的基本语法规则和代码结构,包括
变量
和数据类型的声明和使用、运算符的种类和应用、控制语句的编写等。面向对象编程:深入介绍面向对象编程的基本概念,如类、对象、继承、多态、封装和
抽象
等,并教授如何
定义
类和创建对象。常用类库和框架:介绍.NET Framework的强大功能和各种类库,以及如何在
C#
编程中利用这些类库和框架提升编程效率。此外,课程还会提供一些实践项目,让学员通过实际操作来巩固所学知识,提高编程能力。总之,零基础
C#
入门课程是一门全面、系统的
C#
编程入门教程,适合对
C#
编程感兴趣的初学者学习。通过本课程的学习,学员将掌握
C#
编程的基本知识和技能,为后续的进阶学习和项目开发打下坚实的基础。
c#
程序设计英文课件
c#
程序设计英文课件 内容覆盖:
变量
、常量、
变量
的作用域 值类型
变量
和引用类型
变量
类、类的构造函数、静态构造函数 引用
变量
的静态数据类型和动态数据类型 传值调用与传引用调用 数据转换与类型转换 一维数组、均匀数组、非均匀数组 属性、事件、索引器的
定义
和使用 异常对象的生成、抛出和捕捉 方法的隐藏和覆盖 接口与显式接口
定义
抽象
类和
抽象
方法 常用控件的重要属性 多线程程序设计
C#
中委托(Delegates)的使用方法详解
1. 委托是什么? 其实,我一直思考如何讲解委托,才能把委托说得更透彻。说实话,每个人都委托都有不同的见解,因为看问题的角度不同。个人认为,可以从以下2点来理解: (1) 从数据结构来讲,委托是和类一样是一种用户自
定义
类型。 (2) 从设计模式来讲,委托(类)提供了方法(对象)的
抽象
。 既然委托是一种类型,那么它存储的是什么数据? 我们知道,委托是方法的
抽象
,它存储的就是一系列具有相同签名和返回回类型的方法的地址。调用委托的时候,委托包含的所有方法将被执行。 2. 委托类型的
定义
委托是类型,就好像类是类型一样。与类一样,委托类型必须在被用来创建
变量
以及类型对象之前声明。 delegate
C#
110,567
社区成员
642,567
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章