Java中关键字小总结!

1、访问控制符

public:公共的,其限制最小

protected:受保护的,通常作为继承权限

default:默认的。

private:私有的,其限制最大。

修饰类的访问控制符:public和默认的访问控制符;修饰普通方法(构造方法)或者属性的访问控制符:上述四种都可以。

访问控制符 同一个类的内部 同一个包的内部 不同包的子类 不同包中的非子类
public YES YES YES YES
protected YES YES YES NO
default YES YES NO NO
private YES NO NO NO

2、类、方法、变量修饰符

2.1 abstract:声明抽象

2.2 class:声明是个类

2.3 extends:表明继承关系

2.4 interface:表明接口

2.5 implements:实现接口

2.5 new:创建新的对象

2.6 static

1>静态类:通常情况下一个普通类是不允许声明为静态类的,只有一个内部类才可以。这时这个声明为静态的内部类就可以直接作为一个普通类来使用,无须实例一个外部类。

class Outer{
    class Inner1{//非静态内部类
          
    }
        static class Inner2 {//静态内部类
            Inner2() {
                System.out.println("sort!");
            }
        }
     }
public class sortAlgorithm {
        public static void main(String[] args){
           Outer.Inner2 inner=new Outer.Inner2();  //访问静态的内部类

           Outer.Inner1 inner1=new Outer().new Inner1();//访问非静态的内部类  方法一
           //方法二
           Outer out = new Outer();
           Outer.Inner1 inner1 = out.new Inner1();
        }
}

2>静态方法

在一个类里面定义一个方法为静态的,也就是说无须本类的对象也可以调用此方法。声明为静态方法有以下几条限制:

他们仅能调用其他的static方法;只能访问static数据;不能引用this或者super。

调用静态方法就是:“类名.方法名”

3>静态变量:声明为static变量实质上就是“全局变量”。静态变量与静态方法类似,所有的此类实例共享此静态变量,也就是说在类加载的时候,只分配一块存储空间,所有此类的对象都可以操纵这块存储空间。

总的来说,static声明的变量要优于非static变量。

2.7 finalfinal关键字可以应用于类,以指示不能扩展该类,也可以用于方法,表示不能重写此方法。一个类或者方法既是abstract也是final,意味着必须扩展或者重写类或者方法,会产生错误,因此两者不可以同时出现。

3、异常处理

3.1 try用于监听,将要被监听的代码(可能发生异常的代码)放在try语句块内,当try语句块内发生异常的时候,异常就被抛出。

3.2 catch用于捕获异常,catch块用来捕获try块内发生的异常。

3.3 finally该块总是被执行,它主要用于回收在try块里打开的资源,具体用法见前几篇博客。

3.4 throw用于抛出异常。

3.5 throws用在方法中,声明该方法可能发生的异常。

4、变量引用

4.1 super调用父类的构造方法;操作被隐藏的成员变量或者被覆盖的成员方法。

4.2 this

1>当成员变量与局部变量重名时,在方法中使用this,表示的是该方法所在类的成员变量(this是当前对象自己)

2>把自己当做参数进行传递,也可以用,(this做当前参数进行传递)

3>当在匿名内部类中用this的时候,this指匿名内部类或者内部类本身,如果这时要使用外部类的方法或者变量的话,要加上外部类的类名。

猜你喜欢

转载自blog.csdn.net/qq_40303781/article/details/82666714