A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 马锋 中级黑马   /  2013-1-30 09:57  /  1442 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class Animal
{
    public string color;
    protected int age ;
    public Animal(){;}
public Animal(string c int a)
    {
        color=c;
        age=a;
    }


public Animal(){;}    这是干什么的,什么意思.?


评分

参与人数 1技术分 +1 收起 理由
潘梦军 + 1

查看全部评分

4 个回复

倒序浏览
默认的构造函数!
回复 使用道具 举报
让你迷糊的就是{}种的那个“;”吧,哈哈。其实那个东西有没有又有什么关系呢。如果我这样写:
    public Animal()
    {
    }
你是不是就明白了呢?这个构造函数其实就是默认的构造函数,如果父类中没写这个构造函数,也没写带参数的构造函数的话,默认的构造函数就是这个。子类在写构造函数时如果不知名调用哪个父类构造函数的时候,很可能会出现"**中不包含含有**个参数的构造函数“的错误。
这个具体问题你多写写这方面的代码就OK了。

评分

参与人数 1技术分 +1 收起 理由
潘梦军 + 1

查看全部评分

回复 使用道具 举报
王德钊 发表于 2013-1-30 11:31
让你迷糊的就是{}种的那个“;”吧,哈哈。其实那个东西有没有又有什么关系呢。如果我这样写:
    public  ...

额,我猜它也没可能实现什么..C#太多变化了啊....
回复 使用道具 举报
C#相对于别的语言是比较好学的。微软为了推广它,很多东西都封装好了,我们拿过来就可以用。我自认为c++就没c#好学。
至于面向对象这一块,有点抽象是真的,其实说来说去,封装继承多态,三个原则弄明白了就OK。什么是构造函数,什么是函数的重载,什么是抽象类,抽象方法,虚拟方法,方法的重写,this和base的区别,等等这些知识点都很重要,搞明白了,很多东西就明白了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马