面向对象最后内容

final关键字

final关键字用于修饰类,成员变量,方法,局部变量;

final修饰的类,是不能被其他类继承的 java语言中提供了很多类,就是final修饰的,不能被继承

final修饰的方法也不能被子类重写

final修饰局部变量(包括形参)值不能被改变

package com.ffyc.javaoop.day6;
public class A {
    /*
    final 修饰的成员变量有两种赋值方法
    1.final float pi = 3.14f;在这个模版中,就将值给定,而且后面值不能被改变
    2.final intcount;在类中定义时不能进行赋值操作,必须要在构造方法中进行初始化赋值操作
    表示每一个对象中都有常量
    */
    static final float pi = 3.14f;
    final int count;
    public A(){
        count = 0;
    }
}

接口

例如:usb接口 连接串口 是一种标准规范 大小,传输数据......

接口--->规则规范 用来定义功能 更彻底的抽象 接口,抽象类--->定义,抽象

在实际复杂的程序设计中,上层一般都是”抽象的“,面向的是抽象进行编程

架构师定义接口,定义抽象类

业务程序员去对接口,抽象类进行实现

语法:

创建接口

package com.ffyc.javaoop.day6;
/*
    interface修饰的是接口
    接口中可以定义哪一些内容
    jdk8之前  只能定义抽象方法和静态常量
    jdk8之后  可以定义抽象方法和静态常量,还可以定义默认方法和静态方法
    */
public interface MyInterface {
    int a = 10;//静态常量
    void eat();//抽象方法
    /*
    默认方法,通过子类对象进行访问
    */
    public   default  void  test1(){
        System.out.println("default test1");
    }
    /* 
    静态方法,通过接口名进行访问 
    */
    public static void test2(){ 
        System.out.println("Static test2");
    }
}

访问

package com.ffyc.javaoop.day6;
public class Test {
    public static void main(String[] args) {
        /* 
        接口是更彻底(更纯粹的抽象),所有的接口也是不能被创建对象的,不能有成员变量,构造方法
        成员方法是抽象的,默认的,静态的
        设计接口也是为了让其他类继承实现的
        */
        MyInterface.test2();//接口名访问静态方法
        System.out.println(MyInterface.a);//接口访问静态常量
    }

接口与类之间关系

接口其实就是抽象,也是定义功能后 ,让其他类来实现

package com.ffyc.javaoop.day6;
/*
类继承类
类 实现(implement)接口
要么重写接口中所有的抽象方法
要么将此类也声明为抽象类
public abstract class A implements MyInterface 
*/
public  class C implements MyInterface,Interface1{
    @Override
    public void eat() { 
        System.out.println("重写接口中抽象eat方法");
    }
    @Override
    public void A() {
    }
}

java中的接口可以继承多个接口

接口主要任务是拥有某种功能(方法)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值