[java]类(未完)

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

 

学到了

 一、类

1、说明

1)类是JAVA语言最基本的单位

2)类的声明

访问权限 修饰符 class 类名{
    实体
}

3)权限修饰符

只能是public或default(即不写)

2、类和所在文件

1)一个java文件中可以写多个类(编译器会生成多个.class文件)

2)一个Java文件中最多只能有一个被public修饰的类,这个二类的类名必须和JAVA源文件保持一致。

3)如果类不是public修饰的,类名和所在文件名可以不同。但是如果类是public修饰的,那类名必须和所在文件名相同。

4)写public主要为了避免一个文件中有多个类,但是无法找到含有入口(main)函数的类。如果一个文件中有多个类,在编译该文件的时候,会产生多个.class文件。一般一个文件放一个类,这样好维护。修饰.class只能允许类用public或不写修饰符(默认权限)修饰。

3、成员变量(也称为全局变量)

1)默认值

整型默认为0,浮点型默认为0.0,char为空格。boolean为false,引用类型为null。

2)成员变量和局部变量的区别

【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、类中方法的格式

访问权限修饰符 其他修饰符 返回值的类型 函数名称(函数列表){
     方法体;
}

2、访问权限修饰符

这里只说两个:

【1】public

【2】default不需要显示的写出来。如果没有添加任何的访问权限修饰符,那么它就是默认权限default。

3、return

1)说明

用于结束整个方法。return每次只能返回一个值给函数。

2)遇到分支结构

如果自定义的函数中有返回值,并且在方法中遇到了分支结构,则需要在每一个分支后面都需要出现一个return。

    static int f(int num1,int num2){
        if(num1>num2) {
            return num1; //仅仅只有这个会报错
        }
        return 0;//添加后正常运行,没有实际意义,只是为了匹配
    }

3、函数的参数用...表示数组,但是该变量必须放在参数表最后

1)...作为参数和普通数组作为参数的区别

4、实参、形参

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、可以在一个函数中调用一个函数,但不能在一个函数中声明一个函数。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值