Java学习--关键字

Java学习--关键字

  • 前言
  • 关键字
    • final
    • static
    • super
    • this
  • 实现

前言

本文主要参考:here;若需要可直接前往学习。

关键字

final、Static、super、this…

final

  • 区分final、finally、finalize:
  • 理解final的含义:final 意为 最终 的含义,用来修饰类、方法和变量。
    • 修饰类:public final class ClassName{}final 修饰的类不能被继承,类中的成员方法被隐式为final,成员变量不受影响。
    • 修饰方法: public final void MethodName(){} 该方法不能被重写。
    • 修饰变量: public final Object o; 该变量被初始化后不能改变(变量是基本数据类型变量则不可更改;若变量是引用类型的变量,则不能更改其引用)。

static

  • staticJava的关键字:意为静态的意思,被static修饰的部分会在类加载的时候执行,且只执行一次。修饰的方法只在调用的时候执行。
  • static 可用于修饰成员变量与方法、静态内部类、静态代码块、静态导包。。。
    • 修饰成员变量和方法:可以使用 类名.变量名类名.方法名 调用静态成员变量或方法,也可以使用 Object o=new Object(); o.变量名o.方法名 调用。
    • 修饰静态代码块: 静态代码块对于定义在它之后的静态变量,可以赋值,但是不能访问。对于非静态变量不可赋值也不可访问。
    • 修饰静态内部类: 静态内部类与非静态内部类之间存在一个最大的区别,我们知道非静态内部类在编译完成之后会隐含地保存着一个引用,该引用是指向创建它的外围类,但是静态内部类却没有。没有这个引用就意味着:
      • 1、它的创建是不需要依赖外围类的创建。
      • 2、它不能使用任何外围类的非static成员变量和方法。
    • 静态导包 : import static java.util.Math.max; 使用静态导包将静态方法导入后可直接写 max(a,b); 进行使用。

super

  • super关键字用于从子类访问父类的变量和方法

this

  • this 关键字用于引用类的当前实例,可通过 this 调用当前实例的成员变量和方法。
  • 使用 this 和 super 要注意的问题:
    • 1、在构造器中使用 super() 调用父类中的其他构造方法时,该语句必须处于构造器的首行,否则编译器会报错。另外,this 调用本类中的其他构造方法时,也要放在首行。
    • 2、this、super不能用在static方法中。

实现

  • final
package edu.xcu.Keyword;

/**
 * @project: JavaThread
 * @date: 2020/7/12 - 18:17
 * @website:
 */
public class Final {
   
    /**
     * final关键字,意思是最终的、不可修改的,最见不得变化 ,用来修饰类、方法和变量,具有以下特点:
     *      1、修饰类:该类不能被继承,类中的成员方法被隐式为 final ;成员变量不受影响。
     *      2、修饰方法:该方法不能被重写
     *      3、修饰变量:变量是基本数据类型变量则不可更改;若变量是引用类型的变量,则不能更改其引用。
     */
    /**
     * final 标识的变量
     */
    final String value;

    // TODO: 2020/7/12 构造方法给value赋值一次,之后不可更改
    public Final(String value) {
   
        this.value = value;
    }

    // TODO: 2020/7/12 final标识的内部类,用于验证final标识类
    final class Test{
   
        private String value;

        public String getValue() {
   
            return value;
        }

        public void<

你可能感兴趣的:(Java,学习,java)