JAVASE知识点4:方法(包括一些常用类的方法),break,for循环及其变体,foreach,及练习_大岛君的博客-CSDN博客
学到了

1)类是JAVA语言最基本的单位
2)类的声明
- 访问权限 修饰符 class 类名{
- 实体
- }
3)权限修饰符
只能是public或default(即不写)
1)一个java文件中可以写多个类(编译器会生成多个.class文件)
2)一个Java文件中最多只能有一个被public修饰的类,这个二类的类名必须和JAVA源文件保持一致。
3)如果类不是public修饰的,类名和所在文件名可以不同。但是如果类是public修饰的,那类名必须和所在文件名相同。
4)写public主要为了避免一个文件中有多个类,但是无法找到含有入口(main)函数的类。如果一个文件中有多个类,在编译该文件的时候,会产生多个.class文件。一般一个文件放一个类,这样好维护。修饰.class只能允许类用public或不写修饰符(默认权限)修饰。
整型默认为0,浮点型默认为0.0,char为空格。boolean为false,引用类型为null。
【1】定义的位置不同
成员变量:定义于类中,作用于整个类。
局部变量:定义于方法或语句中,作用于该方法或者该语句。
【2】内存中出现的时间和位置不同
成员变量:当对象创建时,出现在堆内存中。
局部变量:所属区域被计算时,出现在栈内存中。
【3】生命周期不同
成员变量:随着对象的出现而出现,随着对象的消失而消失。
局部变量:随着所属区域运算结束,它就被释放。
【4】初始化值不同
成员变量:成员变量因为在堆内存中,所以他有默认初始值。整型默认为0,浮点型默认为0.0,char为空格,boolean为false,引用类型为null。
局部变量:没有默认初始值。
【5】当成员变量和局部变量重名时
访问时采用就近原则,但应尽量避免成员变量和局部变量重名。
- public class Test {
- static int a=1;
- public static void main(String[] args) {
- System.out.println(a); //1
- int a=2;
- System.out.println(a); //2
- }
- }
【6】静态成员
静态的成员变量和竟然方法都属于类,需要访问的时候用
类名.的方式来访问
- 访问权限修饰符 其他修饰符 返回值的类型 函数名称(函数列表){
- 方法体;
- }
这里只说两个:
【1】public
【2】default不需要显示的写出来。如果没有添加任何的访问权限修饰符,那么它就是默认权限default。
用于结束整个方法。return每次只能返回一个值给函数。
如果自定义的函数中有返回值,并且在方法中遇到了分支结构,则需要在每一个分支后面都需要出现一个return。
- static int f(int num1,int num2){
- if(num1>num2) {
- return num1; //仅仅只有这个会报错
- }
- return 0;//添加后正常运行,没有实际意义,只是为了匹配
- }
- public class Test {
-
- static void f(int a,int b){ //a、b为形参
- System.out.println(a+" "+b);
- }
-
- public static void main(String[] args){
- int a=1;
- int b=2; //a、b为实参
- f(a,b); //调用函数:实参给形参赋值
- }
- }
1、public修饰的变量、方法、类,可以在任何地方被调用。
2、默认权限(不写)修饰的变量、方法、类,只能在同包下被调用。
3、静态方法 能 直接调用 静态方法 和 静态变量
4、静态方法 不能 直接调用 非静态方法 和 非静态变量
5、非静态方法 能 直接调用 静态方法 和 静态变量
6、非静态方法 能 直接调用 非静态方法 和 非静态变量
7、同一个类中的静态方法和变量在同一块内存空间
8、可以在一个函数中调用一个函数,但不能在一个函数中声明一个函数。