JAVA类中含抽象方法就一定不能实例化?!一定不能是吧
发布网友
发布时间:2022-04-20 04:36
我来回答
共5个回答
热心网友
时间:2023-07-21 14:06
很简单,抽象类不象具体类那样描述一类具体事物,它是提取多种具有相似性的具体事物的共同特征而产生的,比如,helicoptor,jet,fighter父类plane,有start(),takeOff(),speedUp(),changeDirection()等方法,这是共性,但现实中有一个具体的plane吗?没有,它是抽象出来的,根本不存在。所以实例化一个plane是没有意义的,因此面向对象程序设计机制禁止对象实例化
热心网友
时间:2023-07-21 14:06
java抽象类不能实例化。
java抽象类:使用了关键词abstract声明的类叫作“抽象类”。
如果一个类里包含了一个或多个抽象方法,类就必须指定成abstract(抽象)。
抽象方法,属于一种不完整的方法,只含有一个声明,没有方法主体。
热心网友
时间:2023-07-21 14:07
TimeZone.getDefault();是条用TimeZone里边的getDefault()方法啊,这个方法里边一定是返回了一个TimeZone的子类,所谓的不能实例化是指不能写成:
TimeZone tz =new TimeZone();
热心网友
时间:2023-07-21 14:07
getDefault()可以是一个static函数,返回的可以是一个匿名内隐类啊。
热心网友
时间:2023-07-21 14:08
Java 源代码如下:
public static TimeZone getDefault() {
return (TimeZone) getDefaultRef().clone();
}
然后看getDefaultRef()方法:
static TimeZone getDefaultRef() {
TimeZone defaultZone = defaultZoneTL.get();
if (defaultZone == null) {
defaultZone = defaultTimeZone;
if (defaultZone == null) {
// Need to initialize the default time zone.
defaultZone = setDefaultZone();
assert defaultZone != null;
}
}
// Don't clone here.
return defaultZone;
}
这时defaultZoneTL.get()返回的是InheritableThreadLocal类的对象
Java中的抽象类为什么不能实例化
首先抽象类不能实例化是一个java的语法规范。抽象类中是可以包含抽线方法,不是必须。如果一个抽象类没有一个抽象方法,那么他和一个普通java类就没有任何区别了,也就是说,在这种情况下又没有abstract修饰都是一样的。定义了一个包含抽象方法的抽象类,其子类在继承自该抽象类的时候,子类就必须实...
java抽象类不能被实例化是什么意思?
1、抽象类可以不包括抽象方法,它反正不会去实例化,抽象类不能被实例化,也就是不能用new关键字去产生对象,抽象方法只需声明,而不需实现,抽象类的子类必须覆盖所有的抽象方法后才能被实例化,否则这个子类还是个抽象类,里面的方法是不是抽象的没有本质影响。2、但是含有抽象方法的类绝不能被实例...
java中,抽象方法一定要在抽象类中吗???
是的!抽象类中既可以有抽象方法,也可以有一般的方法。抽象类中可以没有抽象方法,但是抽象方法一定在抽象类中。因为抽象类不能被实例化,抽象方法不能被实现。 青烟绕荭尘 | 发布于2012-02-05 举报| 评论(2) 4 1 对,这句话也可以这样说:“含抽象方法的类一定是抽象类”。 understandok | 发布于2012...
Java 抽象类能不能实例化
结论是:Java中的抽象类不能被实例化。让我们进一步探讨这个概念。抽象类是Java中一种特殊的类,它使用abstract关键字标记,其主要目的是为了定义类的公共接口,而不是创建具体的对象。抽象类可以包含成员变量、成员方法和构造方法,但不能直接通过new关键字实例化,因为它们通常不提供完整实现,而是留给子类...
java抽象类
1、抽象类可以不包括抽象方法,它反正不会去实例化,里面的方法是不是抽象的没有本质影响。2、但是含有抽象方法的类绝不能被实例化,否则执行这个方法的时候,怎么办?3、如果子类是非抽象的,那么它就必须实现父类中的抽象方法;否则,它继承来的抽象方法仍然没有方法体,也是个抽象方法,此时就与“...
java中 抽象类不可以实现方法吗
抽象类可以实现方法,但是不可以实例化。举例:public abstract class A{ public void a(){//实现的方法a } public abstract void b();//抽象方法} 补充抽象类特点:1. 抽象方法 abstract void f(); 抽象方法不能包含有任何方法的BODY 。2. 如果一个类包含1个或者多个抽象方法, 则该...
java的抽象方法是必须有的吗?
不一定,抽象类可以没有抽象方法,但是如果一个类已经声明成了抽象类,即使这个类中没有抽象方法,它也不能再实例化,即不能直接构造一个该类的对象。如果一个类中有了一个抽象方法,那么这个类必须声明为抽象类,否则编译通不过。java中的抽象方法就是以abstract修饰的方法,这种方法只声明返回的数据...
抽象方法真的不能实例化么?
也就把其父类(抽象类)给实例化了).但是:接口是不能被实例化的(接口压根就没有构造函数),与上面的原理相似同样接口类型的引用可以指向其子类的对象例如:package com.etc;public abstract class A{privateString str;publicA(Stringa){System.out.println("父类已经实例化");...
java抽象类不能实例化?
比如,helicoptor,jet,fighter父类plane,有start(),takeOff(),speedUp(),changeDirection()等方法,这是共性,但现实中有一个具体的plane吗?没有,它是抽象出来的,根本不存在。所以实例化一个plane是没有意义的,因此面向对象程序设计机制禁止对象实例化 ...
抽象类的方法是不是一定要实现?
不一定,关键要看子类是否是抽象类。如果子类是非抽象类,则必须实现接口中的所有方法;如果子类是抽象类,则可以不实现接口中的所有方法,因为抽象类中允许有抽象方法的存在!1、抽象类定义 抽象类往往用来表征对问题领域进行分析、设计中得出的抽象概念,是对一系列看上去不同,但是本质上相同的具体概念的...