构造器不是方法,它无返回类型、不被继承或重写,仅在new创建对象时隐式调用,专用于初始化对象状态;普通方法面向已有对象,可多次调用,执行任意逻辑并可返回值。

构造器不是方法,尽管写法相似,但本质不同——它没有返回类型(连void都不能写),不被继承,也不能被重写,只在对象创建时由new隐式调用。
作用目标不同:初始化对象 vs 完成特定功能
构造器唯一职责是为新创建的对象设置初始状态,比如给成员变量赋默认值或接收参数完成定制化初始化。它不处理业务逻辑,也不返回计算结果。
普通方法则面向已有对象,可执行任意操作:读取数据、修改状态、调用其他对象、返回值或void。例如getName()返回字符串,saveToDB()提交数据。
调用方式与时机严格受限
构造器只能在new表达式中被调用,且仅一次,发生在内存分配之后、引用返回之前。
普通方法可通过对象引用随时多次调用,也可通过类名调用静态方法。构造器不能像方法那样被直接写在语句中,也不能被循环或条件控制反复执行。
语法细节差异明显
- 构造器名称必须与类名完全一致,且不能有返回类型声明
- 可以重载(多个同名构造器,参数不同),但不能重写(子类无法覆盖父类构造器)
- 可使用
this(...)或super(...)调用本类或其他父类构造器,且必须是首行语句 - 普通方法可重载也可重写,返回类型、访问修饰符更灵活,支持异常声明、泛型、注解等完整方法特性
编译与运行时行为有根本区别
Java编译器会为每个类自动合成一个无参默认构造器(当类中没写任何构造器时);一旦写了任一构造器,该默认构造器就不再生成。
普通方法没有这种“自动合成”机制。JVM在实例化对象时专门识别构造器字节码(),而普通方法对应的是invokevirtual等指令。反射中获取构造器要用getConstructors(),而非getMethods()。
本文档主要讲述的是Android数据格式解析对象JSON用法;JSON可以将Java对象转成json格式的字符串,可以将json字符串转换成Java。比XML更轻量级,Json使用起来比较轻便和简单。JSON数据格式,在Android中被广泛运用于客户端和服务器通信,在网络数据传输与解析时非常方便。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
立即学习“Java免费学习笔记(深入)”;
基本上就这些。理解它们的区别,关键不在语法记多少,而在想清楚“谁在什么时候、为什么需要这个东西”。










