社区
Java SE
帖子详情
Java中没有构造方法的类(连默认空参构造器都没有)中存在非静态方法是为什么?
youngboy17
2017-07-26 11:17:27
查API文档时有些类就根本没有构造方法,连默认空参的也没有,这就意味着这个类不能创建对象来访问,只能通过类名访问静态方法,那为什么这个类中还存在非静态的方法,这些非静态方法是怎么访问到的?
...全文
543
3
打赏
收藏
Java中没有构造方法的类(连默认空参构造器都没有)中存在非静态方法是为什么?
查API文档时有些类就根本没有构造方法,连默认空参的也没有,这就意味着这个类不能创建对象来访问,只能通过类名访问静态方法,那为什么这个类中还存在非静态的方法,这些非静态方法是怎么访问到的?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Freefish1994
2017-07-26
打赏
举报
回复
未提供构造方法的话,编译器会自动默认提供一个空参构造器
潇湘如梦
2017-07-26
打赏
举报
回复
楼上正解,至于lz所说的非静态方法,其实是Object类中的方法,java所有类(除了Object)都是Object类的直接子类或间接子类,没有明确声明类的父类时,Object类就是该类的直接父类,将会继承来自Object类的所有非私有属性,包括非私有字段和非私有方法。
窝 窝
2017-07-26
打赏
举报
回复
如果定义一个类没写构造方法,编译器会自动添加一个默认的无参构造方法。class A{ void a(){}像这可以new一个对象然后用引用调用非静态方法
Java
构造器
(
构造方法
)详解
Java
构造器
(
构造方法
)详解 什么是
构造器
构造器
通常也叫
构造方法
、构造函数,
构造器
在每个项目
中
几乎无处不在。当你new一个对象时,就会调用
构造器
。
构造器
格式如下: [修饰符,比如public]
类
名 (参数列表,可以
没有
参数){ //这里不能有return} 文章目录
Java
构造器
(
构造方法
)详解
Java
构造器
怎么定义
构造器
构造器
的使用
构造器
的继承**
构造器
、静态代码块、构造代码块的执行顺序,详见下文实例**实例1.
默认
构造器
2.禁止对象被外部创建3.
构造器
重载4.
构造器
的继承**5.
构造器
、静态代码
【
Java
学习】
构造器
、static静态变量、static
静态方法
、static
构造器
、
默认
构造器
(Default Constructor)是
Java
中
的一个重要概念,它是由编译器自动生成的一种特殊的构造函数。当一个
类
没有
显式地定义任何构造函数时,
Java
编译器会自动为这个
类
提供一个无参数的构造函数,这就是
默认
构造器
。
构造器
重载,
构造器
其实就是一个方法,既然是方法那么
构造器
也可以重载。在
Java
中
,`static` 关键字用于声明静态成员,包括静态变量(
类
变量)和
静态方法
。静态成员属于
类
本身,而不是
类
的实例。static 修饰的方法或者变量不需要依赖于对象来进行访问。
java
学习心得(给
类
一个
空参
的
构造器
)
在写
类
的时候,一定记得给
类
显式地写上一个
空参
的
构造器
!!! 当子
类
继承父
类
时,尽管我们
没有
显式的调用父
类
的
空参
构造器
,但是编译器会
默认
在子
类
的
构造方法
前的第一行添加super()调用父
类
的
空参
构造器
。 但是,当我们修改子
类
的
默认
的无参
构造器
的时候,这时候子
类
就
没有
了无参
构造器
了,
java
编译器也不会给已经有
构造器
的
类
添加一个
空参
的
构造器
,然而编译器会帮我们
默认
调用父
类
的
空参
构造器
,所以,这时候
java
必须
存在
默认
构造器
_
Java
构造器
或
构造方法
构造方法
的定义
构造方法
也叫
构造器
或者构造函数
构造方法
与
类
名相同,
没有
返回值,连void都不能写
构造方法
可以重载(重载:方法名称相同,参数列表不同)如果一个
类
中
没有
构造方法
,那么编译器会为
类
加上一个
默认
的
构造方法
。
默认
构造方法
格式如下:public
类
名() {}如果手动添加了
构造器
,那么
默认
构造器
就会消失。建议代码
中
将无参
构造器
写出来。public classStudent {publicStri...
java
必须
存在
默认
构造器
_
Java
基础(005):
Java
为什么需要
默认
的无参构造函数
本篇主要谈谈为何需要
默认
的无参构造函数,目录结构如下:1、
Java
为什么需要
默认
的无参构造函数?If a constructor does not explicitly invoke a superclass constructor, the
Java
compiler automatically inserts a call to the no-argument constructor of t...
Java SE
62,620
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章