Java面向对象day04

41 篇文章 0 订阅

1.final关键字(*)

final关键字表示是最终的意思,用法有3种

①修饰类:表示该类是最终类,该类无法被继承(String也是最终类)

②修饰成员变量:如果是基本数据类型,则表示值不能被改变,如果是引用数据类型,则表示引用的地址不能被改变,地址中的值可以被改变(比如数组里的值)

③修饰成员方法:表示最终方法,该方法不能被重写

2.变量

局部变量:方法中的变量

成员变量:类中方法名的变量(实例变量+类变量)

实例变量:成员变量中没有被static修饰的变量

静态变量/类变量:成员变量中被static修饰的变量

实例方法:没有static修饰的方法

静态方法/类方法:被static修饰的方法

成员方法:实例方法+静态方法/类方法

3.继承的特点

在java中类只能单继承,但可以多重继承

4.执行顺序

1.先执行父类的静态代码块,再执行子类的静态代码块,再执行父类的构造代码块,再执行父类的构造方法,再执行子类的构造代码块,再执行子类的构造方法

5.抽象类

抽象类的定义

public abstract class 类名{
}

抽象类与普通类的区别

①抽象类可以有抽象方法,普通没有

②抽象类有构造方法,但不能创建对象。而普通类可以

抽象方法

被abstract关键字修饰的方法就是抽象方法。抽象方法可以没有方法体。

public abstract void move();//可以没有方法体,一个类有了抽象方法就一定是抽象类(必须写abstract)

抽象类的特点

①抽象类被定义出来后,一定要有子类去实现它,否则抽象类没有意义

②一个类继承了抽象类,一定要实现抽象类中的所有抽象方法,除非该类也是抽象类

③抽象类不能new对象,但可以通过super来创建对象

6.接口

java中接口同现实生活中接口类似,一个接口可以有不同的实现。例如一个USB接口,实现的设备有键盘,鼠标,麦克风,摄像头......

6.1.接口的好处

定义标准,便于拓展

接口的双方只需要面向接口编程(解耦与拓展)

6.2.接口的使用

public interface 接口名{
    //常量
    //抽象方法
    //默认方法
    //静态方法
}

1.常量

如果一个变量在运行过程中不能发生改变,那么这个变量就可以称为常量。常量定义时需要给初始值。

public static final 数据类型 常量名 = 值;
例如:
//  public static final String FILE_UPLOAD = "d:/upload/";
    String FILE_UPLOAD = "d:/upload/";//简写

接口中只能声明常量而不能声明变量,因此在接口中定义的变量全是常量(写在接口里的变量都是常量,即都要赋值)

在接口中声明常量可以省略:public static final

接口中的常量可以使用对象名调用,也可以使用类名调用。

2.抽象方法(常用)

JDK1.8以前,接口中所有的方法都是抽象方法,因此,在接口中声明抽象方法时,可以省略abstract关键字。另外接口中的方法都是公共的,可以省略public

返回值 方法名();
例如:
//  public abstract void eat();
    void eat();//这个地方的修饰符是public,在接口中权限修饰符全部都是public

接口中的抽象方法只能通过对象来调用

3.默认方法

默认方法只能通过接口的对象来调用

默认方法只能写在接口中

//默认方法 (有方法体)
default void 方法名(){
    //方法体
}
例如:
    default void test() {
        System.out.println("这是一个默认方法");
    }

4.静态方法

静态方法只能通过接口的类名来调用

static void test2(){
    
}

电脑上的USB接口是无法单独使用的,它还需要具体的USB设备才能工作,即(接口无法new对象,只能通过实现类来new对象)

实现类的写法:

public class 类名 implements 接口名{
    
}

接口的使用:

接口必须配置实现类才能使用

//接口数据类型 接口名 = new 实现类();
// 类名        对象名
例如:
UsbInterface usb = new KeyBoard();
usb.work();

6.3.接口的多实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值