社区
C#
帖子详情
一个类继承的问题。。。。。。。。。。。。。。。。。。。。。。。。。。
cn0cn
2006-04-22 09:01:30
namespace Hello.a
{
public class A
{
protected int a;
}
}
namespace Hello.a
{
public class B : A
{
private A m_a;
m_a. //这里不显示A类里的a呢?
}
}
...全文
114
8
打赏
收藏
一个类继承的问题。。。。。。。。。。。。。。。。。。。。。。。。。。
namespace Hello.a { public class A { protected int a; } } namespace Hello.a { public class B : A { private A m_a; m_a. //这里不显示A类里的a呢? } }
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cn0cn
2006-04-22
打赏
举报
回复
现在还有一个问题
namespace Hello.a
{
public class A
{
protected int a;
a = 1 ;
public int ShowA
{
get{return a;}
set{a = value;}
}
}
}
namespace Hello.a
{
public class B : A
{
private A m_a;
public void How()
{
base.a //这里应该这么引用才有提示啊
// m_a. 这样是不会有提示的,这样就相当于是外部访问了
}
}
}
namespace Go
{
public class C
{
B m_b = new B.How()
m_b.a //为什么是空的?
}
}
star0796
2006-04-22
打赏
举报
回复
namespace Hello.a
{
public class A
{
protected int a;
}
}
namespace Hello.a
{
public class B : A
{
private A m_a;
public void How()
{
base.a //这里应该这么引用才有提示啊
// m_a. 这样是不会有提示的,这样就相当于是外部访问了
}
}
}
cn0cn
2006-04-22
打赏
举报
回复
真的太感谢了!明白了!谢谢。。。:)
wokexi
2006-04-22
打赏
举报
回复
protected 呀,
直接用this试试,不要实例化父类。
Knight94
2006-04-22
打赏
举报
回复
如果在基类中没public class B : A
{
private A m_a;
public void How()
{
base.a//Access "a" member using base-object
this.a//Access "a" member using "this" point, by the way, there is no same member in sub-class
// you can't access "a" member using A object
}
}有重复定义,也可以用this来访问,即
Knight94
2006-04-22
打赏
举报
回复
那当然了,protected成员只能在继承中,通过基类来访问,而不能通过对象来访问,即
public class B : A
{
private A m_a;
public void How()
{
base.a//Access "a" member using base-object
// you can't access "a" member using A object
}
}
anthit
2006-04-22
打赏
举报
回复
你要问的是什么?
cn0cn
2006-04-22
打赏
举报
回复
补充一下:
namespace Hello.a
{
public class A
{
protected int a;
}
}
namespace Hello.a
{
public class B : A
{
private A m_a;
public void How()
{
m_a. //这里不显示A类里的a呢?
}
}
}
什么是
继承
?Java中如何声明
一个
类
继承
另
一个
类
?
(4)在Java中,子
类
和父
类
是一种相对概念,也就是说,
一个
类
是某个
类
父
类
的同时,也可以是另
一个
类
的子
类
。在Java中,
类
的
继承
是指在
一个
现有
类
的基础上去构建
一个
新的
类
,构建出来的新
类
被称作子
类
,现有
类
被称作父
类
或基
类
,子
类
会自动拥有父
类
所有可
继承
的属性和方法。(1)在Java中,
类
只支持单
继承
,不允许多重
继承
,也就是说
一个
类
只能有
一个
直接父
类
,例如下面这种情况是不合法的。(3)在Java中,多层
继承
是可以的,即
一个
类
的父
类
可以再去
继承
另外的父
类
,例如下面这种情况是允许的。
IntelliJ IDEA 中如何查看
一个
类
的所有
继承
关系(当前
类
的所有
继承
关系图)
IntelliJ IDEA使用教程 (总目录篇) 在 IntelliJ IDEA 中这个查看
一个
类
也就是当前
类
的所有
继承
关系,包括实现的所有的接口和
继承
的
类
, 这个
继承
,不仅仅是一级的
继承
关系,包括好几层的
继承
。父
类
的父
类
的父
类
。直到最后。 可以很清楚明了的了解
一个
类
的实现关系。diagram 英[ˈdaɪəgræm] 美[ˈdaɪəˌɡræm] n. 图表; 示意图; 图解; [数] 线图;...
内部
类
的
继承
问题
成员内部
类
可以
继承
其他的
类
,也可以被其它
类
继承
,本文主要说明其它
类
继承
成员内部
类
的
问题
。 本文要点如下: 1).成员内部
类
的子
类
可以是内部
类
,也可以不是内部
类
; 2).当成员内部
类
的子
类
不是内部
类
或子
类
虽是内部
类
但与其父
类
不在同
一个
外部
类
时,子
类
的构造方法第一句要显式添加如下的语句: 外部
类
对象引用.super(参数); 这里的外部
类
指父
类
所在的外部
类
; 3).编译器默认给成员内部
类
的构造方法传入
一个
参数,该参数是内部
类
所依附...
接口可以
继承
多个接口,
类
只能
继承
一个
类
类
只能能
继承
一个
类
的原因是为了避免一种情况: 当A同时
继承
了B和C,如果B,C中有相同的方法名,那么A会无法识别该
继承
哪个方法. 而接口中都是抽象
类
,里面都是抽象方法,抽象方法的实现需要重写方法,就算会出现多个相同的方法,但最终实现
类
都会实现
一个
方法. 接口
继承
多个接口,就算多个接口有相同的方法, 但是最终实现接口的
类
只能实现
一个
方法且@Override
一个
方法,所以调用时就不会有
问题
了. 最后一段转载于:https://www.cnblogs.com/wym789/p/6386187.html ...
为什么Java中
一个
类
可以实现多个接口,但只能
继承
一个
类
?
多
继承
会产生钻石
问题
(菱形
继承
)
类
B 和
类
C
继承
自
类
A,且都重写了
类
A 中的同
一个
方法
类
D 同时
继承
了
类
B 和
类
C 对于
类
B、C 重写的
类
A 中的方法,
类
D 会
继承
哪
一个
?这里就会产生歧义 考虑到这种二义性
问题
,Java 不支持多重
继承
Java 支持
类
实现多接口 接口中的方法是抽象的,
一个
类
实现可以多个接口 假设这些接口中存在相同方法(方法名与参数相同),...
C#
110,570
社区成员
642,565
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章