class-java抽象类实例化问题

问题描述

java抽象类实例化问题

我写了一个AbstractClass的抽象类,如下所示:
之后写了这样的代码:

运行结果是这样的:

不是说java的抽象类不能被实例化吗?这是什么意思?希望各位能够解答一下这个问题。

解决方案

?abstract?class?E{? ?? void?outPut(){? ?? System.out.println?("E");? ?? }? ?? }? ?? public?class?Test8{? ?? public?static?void?main?(String[]?args)?{? ?? E?e?=?new?E(){};? ?? e.out......
答案就在这里:Java抽象类实例化

解决方案二:

new AbstactClass(){}..注意你这里实现了抽象方法了,可以认为是一个子类了

解决方案三:

可以在new的过程中实现abstract方法,这样就构成了抽象类的子类

时间: 2024-08-01 03:36:08

class-java抽象类实例化问题的相关文章

java继承-JAVA抽象类(新手求解)

问题描述 JAVA抽象类(新手求解) 子类继承了一个抽象类,抽象类中没有无参构造函数,有有参构造.请问子类能实例化么?如果能,怎么做? 解决方案 子类构造方法中使用super()传参,指定一个父类的构造器 假如父类构造器是private修饰的那就没办法继承了. 解决方案二: 能,可以直接使用无参,也可以使用父类的有参构造 解决方案三: 首先,你应该先了解继承的原理,继承的强大在于子类可以继承来自父类的一切可继承的特征和行为,更重要的是子类不仅仅可以继承来自父类的特征和行为,而且还具备自我扩展的能

JAVA 抽象类的实现问题

问题描述 JAVA 抽象类的实现问题 //如果一个类实现接口的部分方法,则该类必须是抽象类:实现接口用implements interface It1 { public abstract void f(); public abstract void g(); } abstract class A implements It1 { public void f() { System.out.println("AAAA"); } } public class B extends A { pu

java 抽象类与接口的定义

java  抽象类与接口的定义 Jvm : 抽象规范: 一个具体实现 一个运行的虚拟机实例 装载器: 启动类装载器,自定义装载器(继承 java.lang.ClassLoader ) 解析的内型信息放入方法区,对象放入堆,一个新线程,有自己 java 栈放中间数据, pc 计数器. 接口与抽象类深入 java 没有多重继承,意味一个类只能继承一个父类所以绝对必要的时候,才用继承 所以表示相同行为的方法都应该声明为一个接口的的形式,并使用不同的实现类对其进行实现. 缺点:每一个实现类都需要显示的实

对象-java 抽象类有段代码没看懂!!!帮忙解释下

问题描述 java 抽象类有段代码没看懂!!!帮忙解释下 自己看视频自学到网络编程,发现下边的代码看不懂,自己也百度了很多,还是没理解好抽象类 OutputStream os=Socket.getOutputSteam(); os.write("加油".getBytes()): 这段代码没看懂,OutputStream抽象类不能直接创建对象,也没有子类去实现,为什么可以直接调用write(byte[] b) 方法? 解决方案 不能创建对象的意思是不能通过new outputstream

java内部类实例化错误

问题描述 java内部类实例化错误 请帮我看看下面出错的原因是什么?(粗体字部分) 为什么静态方法里不能直接调用内部类,成员方法却可以? package com.zcl5; class Quetion1 { class ATM { int myMoney = 100; int viewMoney(){ return myMoney; } void outMoney(int money){ myMoney=myMoney-money; } } public void m1(){ ATM atm=n

java抽象类中私有属性初始化之后与预期结果不一致

问题描述 java抽象类中私有属性初始化之后与预期结果不一致 背景是这样的,项目使用的是Spring MVC类与类之间是通过@Autowired注解进行 注入的,我有一个Email的抽象类 public abstract class Mail { protected boolean isEmailContentValid = true; } 然后有多个子类机型了这个Email抽象类,比如AEmail extends Mail public class MailFactory { @Autowir

java 抽象类与接口(1/2)

java 抽象类与接口 1.       语法上的不同 接口与抽象类在语法上就有着明显的区别: (1)    成员变量 接口没有变量,在接口中定义的成员都是公共常量即public.final.static,即使不显示标识,编译器也会自动加上. 抽象类的成员变量完全依据显示定义的不同而不同,编译器不会做任何的动作去强行限制. (2)    方法 接口的方法都隐含为public和abstract:接口中不能有非抽象的方法,并且方法不能是static.final.以及protected和private

Java基础:浅析Java抽象类和接口的比较

abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力.abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class和interface的选择显得比较随意.其实,两者之间还是有很大的区别的,对于它们的选择甚至反映出对于问题领域本质的理解.对于设计意图的理解是否正确.合理.本文将

Java抽象类与接口的区别

很多常见的面试题都会出诸如抽象类和接口有什么区别,什么情况下会使用抽象类和什么情况你会使用接口这样的问题.本文我们将仔细讨论这些话题. 在讨论它们之间的不同点之前,我们先看看抽象类.接口各自的特性. 抽象类 抽象类是用来捕捉子类的通用特性的 .它不能被实例化,只能被用作子类的超类.抽象类是被用来创建继承层级里子类的模板.以JDK中的GenericServlet为例: public abstract class GenericServlet implements Servlet, ServletC