暑假自学(25)

final:
1.final可以用来修饰的结构:类、方法、变量

2.final可以用来修饰类:
不能被其他类所继承
3.final修饰方法
方法不可以再被重写
4.final用来修饰变量
4.1 final修饰属性:可以考虑赋值的位置有:显式初始化,代码块中的初始化,构造器中的初始化
4.2 final修饰局部变量
尤其是使用final来修饰形参时,表明此形参是一个常量。当我们调用此方法时,给常量形参赋一个实参。一旦赋值以后,就只能在方法体内使用形参,不能进行修改或重新赋值
static final用来修饰属性: 全局常量

abstract:
1.abstract可以用来修饰类和方法

2.abstract修饰类:抽象类
此类不能实例化
抽象类中一定有构造器,便于子类实例化时调用(涉及:子类实例化的全过程)
开发中,都会提供抽象类的子类,让子类对象实例化

3.abstract修饰方法:抽象方法
抽象方法只有方法的声明,没有方法体
包含抽象方法的类,一定是一个抽象类。反之,抽象类中可以没有抽象方法
若子类重写了父类中所有的抽象方法后,此子类方可实例化
若子类没有重写父类中所有的抽象方法,则此子类也是个抽象类,需要使用abstract抽象类
不能修饰私有方法、静态方法
public class abstracttest {
public static void main(String[] args) {
// Person p1 = new Person(); 不能创造对象
Man m1 = new Man();
m1.eat();
m1.sleep();
}
}
abstract class Person{
String name;
int age;

public Person() {
super();
}

public Person(String name, int age) {
super();
this.name = name;
this.age = age;
}
public void eat() {
System.out.println("吃饭");
}
public abstract void sleep();
}
class Man extends Person{
int tall;
public void sleep() {
System.out.println("睡觉");
}
}

原文地址:https://www.cnblogs.com/buxiang-Christina/p/13404014.html