Java课堂笔记11

三个修饰符

一、abstract(抽象)

1.抽象方法只能在抽象的类里,只有方法的声明,没有方法的实现。(没有{}直接;结尾)。

2.abstract修饰的类称为抽象类。

注意:(1)抽象方法只能在抽象类中;

(2)子类继承抽象类,必须实现抽象类中所有的抽象方法,除非子类还是抽象类;

(3)抽象类中即可以由抽象方法,也可以有非抽象方法;

3.抽象类的好处是可以强制使用多态。

java 复制代码
package demo;
public class void main(){
	public static void main(String[] arge){
		Myclass mc;
	}
}
abstract class Myclass{
	int n;
	public void ma(){
		System.out.println("ma..方法...");
	}
	public abstract void ma();
}

二、static修饰符

1.static修饰的属性称为静态属性、类变量

类加载的时机

语法:static数据类型属性名;

特点:类变量、被所有对象共享(与创建多少对象没关系)

使用:类名静态属性名;

对象名.属性名;//OK不建议使用

2.static修饰的方法称为静态方法、类方法

语法:static返回值类型方法名(形式参数列表){

使用:类名.静态方法0);

对象名.方法名();//OK 不建议使用

注意:①static方法中只能直接访问静态成员(属性和方法),不能直接访问非静态成员(必须通过

对象名,来访问非静态成员)

②静态方法只能被静态方法覆盖,且没有多态

③静本故法中不能使用this.和 super

三、final修饰符

1.final(最终的、最后的)可修饰变量(局部变量、实例变量、类变量):

作用范围内常量,只允许一次性赋值。基本数据类型变量的值不允许改变,引用类型地址不允许改变。

①final修饰实例变量:没有默认值。

赋值的位置:a.在声明的时候对其初始化

b.在构造方法中对其初始化

②final修饰的类变量:没有默认值

赋值的位置:a.在声明的时候对其初始化

b.在静态代码块中对其赋值

2.final修饰的方法:为最终方法,不能被覆盖,可以重载

3.final修饰的类:不能被继承,没有子类