抽象类可以定义对象吗(java 中抽象类虽然不能够创建对象,但是可以有构造方法,构造方法也可以带参数 为什么)

本文目录
java 中抽象类虽然不能够创建对象,但是可以有构造方法,构造方法也可以带参数 为什么
抽象类概念我就不多说了,简单说父亲是抽象类的类必须实现所有抽象方法,除非这个类也是抽象类。说明下你问的问题
1.首先你要搞清楚java里new这个关键字,new说的是要调用构造方法,分配内存空间,创建实例,这是显示的new出来一个对象,抽象类是不允许new的,但是抽象类可以有构造方法,我们知道通常创建类的实例需要new 类();这种形式,但是只能说new调用构造方法才是创建对象,而抽象类不可以有实例,但是可以调用构造方法,因为它不是new调用,而是通过new子类,根据依赖关系,自动调用的,稍微扩展点说java中字节码文件.class中有init初始化方法,JVM要想用一个类,必须要有加载,连接,初始化这三部分组成,而只有加载这个过程对程序员可见,这就扯到类加载器classloader上去了,不多说,和这问题无关。最终结论是说,调用构造方法不一定创建实例(看怎么调用),创建实例也不一定需要调用构造方法,比如调用本地函数,通过C++等创建实例,java垃圾回收机制只能自动回收new出来的对象,并不会回收通过本地native方法创建的对象,因为这种是通过c++创建的,当然垃圾回收机制和你问的问题也没关系,不多说。
JAVA中为什么说抽象类不能创建对象,或者说创建对象也是毫无实际意义
因为他是作为父类被别人继承的,我们只需要子类的实现不需要实现父类不用父类里的方法在这种情况下我们需要穿件抽象类、抽象方法!打个比方你爸爸会游泳但每次游泳不穿泳裤,你继承你爸爸类重写游泳方法,你也会游泳但你游泳不带泳帽,我现在只要你会游泳的方法知道你不带泳帽,你是继承你爸爸类的!但我不需要知道你爸爸游泳不穿泳裤,你说你在父类用专门写个方法说你爸爸游泳不穿泳裤吗?不需要吧?但是如果你需要知道你爸爸游泳不穿泳裤你就不能把父类定义为抽象的,所以定义抽象类、方法也要看情况!举的例子完全是开玩笑,没有恶意!我也是初学!有不对的地方请谅解!

更多文章:
setint(PreparedStatement setString与setInt效果是否一样)
2026年7月20日 22:15
spring用英语怎么说(spring怎么读英语 spring英文解释)
2026年2月23日 15:30
property prices(spillover effect是什么意思)
2026年9月23日 18:00
update的过去式和过去分词(Update翻译成汉语是什么意思)
2025年8月29日 13:00
学生eclipse安装教程(哪位大神可以手把手教我怎么在eclipse中安装PHP啊,我是学生,刚刚开始学习,不会装呀..)
2026年7月2日 16:30
进制转换器代码(C语言,使用数组,编写一个十进制正整数转换为二进制数的转换工具)
2025年10月4日 05:30
idea写的代码eclipse能用吗(怎么把Intelij IDEA的工程变为Eclipse工程,希望有人解答)
2025年6月9日 15:00
易语言源代码及模块大全1500(求一个小工具的易语言源代码 悬赏100分)
2026年1月17日 23:15
mmap的实现原理(Android跨进程通信-mmap函数)
2026年5月3日 00:15














