java 抽象类不能直接进行实例化的操作,但可以声明对象

比如 abstract A
我知道不能直接进行实例化操作的意思是
不能 A a = new A();
但是可以声明对象用语句怎么体现?

    对于abstract类,我们不能使用new运算符创建该类的对象。如果一个非抽象类是某个抽象类的子类,那么它必须重写父类的抽象方法,给出方法体,这就是为什么不允许final,abstract同时修饰一个类或方法的原因。

    abstract类的对象作上转型对象

      可以使用abstract类来声明对象,该对象可以作为器子类对象的上转型对象,那么该对象就可以调用子类重写的方法。

    例子

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-26
声明就是等号前面的:

A a;
这样写编译运行都是没有问题的。
要说具体作用,比如你有B和C类都继承自A,而你想把他们都作为A类来使用,就可以声明:
A a1,a2;
a1=new B();
a2=new C();本回答被提问者采纳
第2个回答  2014-03-04
A a; //声明对象a

setA(A a) {
this.a = a;

}

java 抽象类不能直接进行实例化的操作,但可以声明对象
可以使用abstract类来声明对象,该对象可以作为器子类对象的上转型对象,那么该对象就可以调用子类重写的方法。例子

抽象类为什么不能实例化?
抽象类为什么不能实例化对象:因为抽象类中包含有没有定义的函数,因此不能用抽象类来实例化对象。但可以声明抽象类的指针指向派生类。示例:class A{public: virtual void f()=0;}; \/\/声明一个抽象类 class B:public A{public: void f(){cout<<"B"<<endl;};void main(){A ma; \/\/错误...

抽象类是否能产生对象?在内存中真的就没有它的对象吗?
抽象类本身不能被实例化,即不能直接创建抽象类的对象。这是因为抽象类是一种不完整的类,其中可能包含抽象方法或未实现的方法,这些方法必须由其子类实现。因此,抽象类只能被用作其他类的父类,用于定义通用的属性和方法。虽然抽象类本身不能被实例化,但其子类可以被实例化。在创建子类的对象时,会...

抽象类里必须要有抽象方法
因此,当声明抽象类和抽象方法时,需要注意以下几个问题:1.抽象类不能被实例化,只能被继承,因此在设计抽象类时,需要注意它的设计是否合理以及是否可以为系统提供有效的抽象特征。2.抽象方法必须被实现,否则子类也必须被声明为抽象类,因此在设计抽象方法时,需要充分考虑子类的实际需求,确保抽象方法能...

Java 抽象类能不能实例化
结论是:Java中的抽象类不能被实例化。让我们进一步探讨这个概念。抽象类是Java中一种特殊的类,它使用abstract关键字标记,其主要目的是为了定义类的公共接口,而不是创建具体的对象。抽象类可以包含成员变量、成员方法和构造方法,但不能直接通过new关键字实例化,因为它们通常不提供完整实现,而是留给子类...

Java中的抽象类为什么不能实例化
首先抽象类不能实例化是一个java的语法规范。抽象类中是可以包含抽线方法,不是必须。如果一个抽象类没有一个抽象方法,那么他和一个普通java类就没有任何区别了,也就是说,在这种情况下又没有abstract修饰都是一样的。定义了一个包含抽象方法的抽象类,其子类在继承自该抽象类的时候,子类就必须...

java语言中的抽象类如何实例化?
抽象类在Java中是无法直接实例化的,因为抽象类中至少包含一个抽象方法,该方法未实现任何具体的代码逻辑。直接实例化抽象类会导致编译错误。要使用抽象类,需要首先创建一个类继承抽象类,然后实例化这个继承类的对象。继承抽象类意味着你必须实现所有抽象方法。通过继承抽象类并创建实例,你可以充分利用抽象...

抽象类可以实例化对象?
抽象类不可以实例化对象,但可以实例化抽象类的非抽象子类赋值给抽象类的指针,如:Animal* animal = new Dog; \/\/c++写法 Animal animal = new Dog(); \/\/java写法 之后animal就可以通过指针使用Dog实现的Animal里声明过的方法

Java 抽象方法和抽象类有什么特点?
抽象类不能直接实例化,只能被继承。抽象类可以包含抽象方法、普通方法、静态方法和静态常量。抽象类中的静态成员可以是静态的或非静态的,同样适用于普通方法。抽象类可以包含构造器,支持构造器重载。总结 抽象类与抽象方法是Java中实现多态和代码复用的重要手段。通过定义抽象类和抽象方法,开发者可以创建...

java中 抽象类不可以实现方法吗
1. 抽象方法 abstract void f(); 抽象方法不能包含有任何方法的BODY 。2. 如果一个类包含1个或者多个抽象方法, 则该类必须限定为抽象的。需要在前面指定 abstract 关键字。(1)抽象类不能被实例化 (2)包含抽象方法的类,必须标识 abstract 3. 如果从一个抽象类继承, 必须对所有抽象方法进行...

相似回答