面向对象3之静态导入、权限修饰符、状态修饰符、fianl、static

静态导入(static import)是在 JDK1.5 新增加的功能,其作用是用于导入指定类的静态属性和静态方法,这样我们可以直接使用静态属性和静态方法。
示例代码(静态导入的使用)

import static java.lang.Math.PI;
import static  java.util.Arrays.sort;
import java.util.Scanner;


权限修饰符
面向对象3之静态导入、权限修饰符、状态修饰符、fianl、static_第1张图片
状态修饰符
 final
 Static
Final 最终的
Final可以修饰类 变量 方法
Final 修饰一个变量 此时变量就是 一个常量
当常量为基本类型时,此时常量的值不能修改。只能赋值一次
当常量为引用类型时。指的是 常量的引用地址不能变,但是引用对象的内容是可变的。
面向对象3之静态导入、权限修饰符、状态修饰符、fianl、static_第2张图片
Final修饰一个 类
当一个类被final修饰 则这个类不能被继承 不能有子类 将这样的类称为太监类
Final修饰方法
使用final修饰的方法不能被重写
面向对象3之静态导入、权限修饰符、状态修饰符、fianl、static_第3张图片
Static 静态
static 关键字是静态的意思,可以修饰成员方法,成员变量
使用范围:
在Java类中, 可用static修饰属性、 方法、 代码块、 内部类
被修饰后的成员具备以下特点:
• 随着类的加载而加载
• 优先于对象存在
• 修饰的成员,被所有对象所共享
• 访问权限允许时,可不创建对象,直接被类调,推荐使用类名调用
代码块:代码块就是指使用{}括起来的一段代码

public class CodeBlock {
     
    private int a ;
    private double b ;
    {
     // 没有任何修饰的代码块称为构造代码块
        // 对成员变量进行初始化
        a = 100;
        b =10.2;
        System.out.println("代码块执行");
    }
    public CodeBlock(){
     
//        // 对成员变量进行初始化
//        a = 100;
//        b =10.2;
        System.out.println("构造方法执行");
    }

    public static void main(String[] args) {
     
        CodeBlock cb = new CodeBlock();
        CodeBlock cb1 = new CodeBlock();
        System.out.println(cb.a);
        System.out.println(cb.b);
    }
}


构造代码块的作用和构造方法类似,但是构造方法的主要作用是 构建对象以及对成员变量进行初始化。
构造代码块的主要作用就是用来初始化成员变量
无论使用那种构造方法,构造代码块都会被执行
在构造代码块中可以调用其他的成员方法 但是不能调用构造方法
构造代码块在创建对象时,由jvm自动调用,每次创建对象都会调用一次,且优先于构造方法执行。

你可能感兴趣的:(java,类,多态)