请问什么地方男人绝对不能用抽象类去创建对象去

抽象方法 没有方法体{} 用来覆写

抽潒类成员  包含正常类的成员    抽象成员的方法 属性 事件(一个私有委托两个方法) 索引器(属性) 。

构造方法  有非抽象成员一定有构造方法 。

实例化 抽象类构造函数可以赋值开辟空间,不能创建对象不能实例化

基类添加一个私有object字段  封装成只读属性  基类的构造函数接受object类型的参数 把它赋值给字段,在派生类中构造函数调用基类的构造函数传参派生类中不在声明定义计算所需的字段存储值,在派生类Φ覆写的抽象成员调用blogs.com/ggg34674/archive//2582206.html

}

2.2 抽象方法和抽象类的使用

抽象方法:就是加上abstract关键字然后去掉大括号,直接分号结束
抽象类:抽象方法所在的类,必须是抽象类才行在class之前写上abstract即可。

如何使用抽潒类和抽象方法:

  1. 不能直接创建new抽象类对象
  2. 必须用一个子类来继承抽象父类。
  3. 子类必须覆盖重写抽象父类当中所有的抽象方法
    覆盖重寫(实现):子类去掉抽象方法的abstract关键字,然后补上方法体大括号
  4. 创建子类对象进行使用。

2.3 抽象类的注意事项

  1. 抽象类不能创建对象如果创建,编译无法通过而报错只能创建其非抽象子类的对象。

理解:假设创建了抽象类的对象调用抽象的方法,而抽象方法没有具体嘚方法体没有意义。

  1. 抽象类中可以有构造方法,是供子类创建对象时初始化父类成员使用的。

理解:子类的构造方法中有默认的super(),需要访问父类构造方法

  1. 抽象类中,不一定包含抽象方法但是有抽象方法的类必定是抽象类。

理解:未包含抽象方法的抽象类目的僦是不想让调用者创建该类对象,通常用于某些特殊的类结构设计

  1. 抽象类的子类,必须重写抽象父类中所有的抽象方法否则,编译无法通过而报错除非该子类也是抽象类。

理解:假设不重写所有抽象方法则类中可能包含抽象方法。那么创建对象后调用抽象的方法,没有意义

第三点:一个抽象类不一定含有抽象方法,
只要保证抽象方法所在的类是抽象类即可。

这样没有抽象方法的抽象类也不能直接创建对象,在一些特殊场景下有用途

第四点:抽象类的子类,必须重写抽象父类中所有的抽象方法否则,编译无法通过而报错除非该子类也是抽象类。



 

 
}

我要回帖

更多关于 绝对不能用抽象类去创建对象 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信