Java方法必须定义在类内,由访问修饰符、返回类型、方法名、参数列表和方法体组成;静态方法用类名调用,实例方法需对象调用;参数均为值传递,引用类型传地址值;重载看参数列表,重写须签名一致且权限不更严格。

Java 中的方法必须定义在类内部,不能独立存在;调用时需注意访问权限、静态/实例上下文以及参数类型匹配。
方法定义的必要组成部分
一个完整的方法声明至少包含:访问修饰符、返回类型、方法名、括号 () 和方法体 {}。返回类型不能省略,即使是 void 也必须显式写出。
-
public、private、protected或默认(包级)修饰符不可少,影响外部能否调用 - 返回类型必须与方法体内
return的值类型一致;void方法不能有非空return表达式 - 方法名遵循驼峰命名,不能和类名或已有变量同名(编译会报错)
- 参数列表写在
()内,多个参数用逗号分隔,每个参数需声明类型和名称,如String name, int age
静态方法 vs 实例方法的调用方式差异
是否加 static 直接决定调用时要不要先创建对象。静态方法属于类,实例方法属于对象。
- 静态方法用
类名.方法名()调用,例如Math.abs(-5);不能直接访问this或非静态成员 - 实例方法必须通过对象调用,例如
new ArrayList().add("x");若在静态上下文中(如main方法)调用,必须先new出实例 - 从静态方法里调用实例方法,必须显式提供对象引用,否则编译报错:
non-static method xxx() cannot be referenced from a static context
参数传递:基本类型是值传递,引用类型传的是引用值
Java 里没有真正的“引用传递”,所有参数都是值传递——只是引用类型的“值”本身是一个内存地址。
采用HttpClient向服务器端action请求数据,当然调用服务器端方法获取数据并不止这一种。WebService也可以为我们提供所需数据,那么什么是webService呢?,它是一种基于SAOP协议的远程调用标准,通过webservice可以将不同操作系统平台,不同语言,不同技术整合到一起。 实现Android与服务器端数据交互,我们在PC机器java客户端中,需要一些库,比如XFire,Axis2,CXF等等来支持访问WebService,但是这些库并不适合我们资源有限的android手机客户端,
立即学习“Java免费学习笔记(深入)”;
- 修改基本类型参数(如
int、boolean)不会影响外部变量 - 修改引用类型参数所指向对象的属性(如
list.add()、obj.name = "a")会影响原对象 - 但把引用参数重新赋值为新对象(如
list = new ArrayList())不会改变外部变量指向
public class Example {
public static void modifyList(List list) {
list.add("added"); // ✅ 外部 list 会被修改
list = new ArrayList<>(); // ❌ 外部 list 引用不变
}
public static void main(String[] args) {
List names = new ArrayList<>();
names.add("Alice");
modifyList(names);
System.out.println(names); // 输出 [Alice, added]
}
}
最容易被忽略的是:方法重载只看参数列表(类型、个数、顺序),和返回类型无关;而重写必须保证签名一致且子类访问权限不能更严格。这两点一旦搞混,编译或运行时行为会和预期严重不符。









