java 里的接口类和抽象类

Wesley13
• 阅读 554
interface Child3{
    //private String uString;  //不能出现变量
    //private void f();            //不能出现私有成员方法
//    String string;
//    private  String string2;
//    private transient String string3;
//    private strictfp String string21;
//    public String string4;
    abstract void f();
    void f1();
    //protected void f2();    //不能出现保护成员方法
    public void f3();
}

class Child31 implements Child3{

     public  void f() {  // 实现接口,不论接口里的是默认权限方法还是public方法,
                        //都要写成public权限
        // TODO Auto-generated method stub
        
    }

    public void f1() {
        // TODO Auto-generated method stub
        
    }

    public void f3() {
        // TODO Auto-generated method stub
        
    }
    
}

abstract class Child4{
    String string;
    private  String string2;          //在抽象类里存在私有变量和私有方法的意思是什么?
    private transient String string3;
//    private strictfp String string21; //不能有strictfp修饰的成员变量
    public String string4;
    public static  String string5;
//    public final  String string6;    //不能有final修饰的成员变量

    abstract void f2();
    void f3(){}
    private void f4() {}
    protected void f5(){}
    public void f6(){}
    
}
class Child41 extends Child4{

    @Override
    void f2() {         //必须要实现的 抽象类里的抽象方法
        // TODO Auto-generated method stub
    }
    void f3(){}            //覆盖 除去不能覆盖抽象类的私有方法,其他权限都可以进行覆盖
                        // 且权限向下开放
    protected void f5(){}  //如:f5 可以保留protected权限,也可以public  但是不能是默认权限
    public void f6(){}        //如:f6 就只能最开放的public权限
    
    public static void main(String[] args) {
        Child41 child41 = new Child41();
        child41.f2();
        child41.f3();
        child41.f5();
        child41.f6();
        child41.f3();
        
        System.out.println(child41.string+child41.string4);
    }
    
}
点赞
收藏
评论区
推荐文章
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
3个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
3年前
java类与对象
java类的定义:classPerson{//成员变量的定义privateintid;privateintage;//方法定义publicintgetAge(){returnage;}publicvoidsetAge(inti){age1}}1、类的定义主要有两方面组成:一是成员变量二是方法
Wesley13 Wesley13
3年前
java 07 接口
1.interface    接口2.接口中的成员修饰符固定  publicstaticfianl  //成员变量  只通过类访问   publicabstract    //成员函数   3.接口里所有的方法都是抽象的,抽象类中,可以没有抽象方法。  类与类继承,类与接口是实现的关系。降低耦合(高
Wesley13 Wesley13
3年前
java常用的关键字
1、final关键字final关键字可用于修饰类、方法以及变量。修饰类:该类不能被继承,该类的所有方法和成员都被隐式地指定为final。修饰方法:锁定方法,任何继承类都不能修改他,所有的private方法都被隐式地指定为final方法。修饰变量:若修饰的变量为基本数据类型,该变量值被赋值后不可改变;若修饰的变量为引用类型的变量,该变量
Aidan075 Aidan075
3年前
Dart中的抽象类、多态、以及接口
一、Dart中的抽象类Dart中抽象类: Dart抽象类主要用于定义标准,子类可以继承抽象类,也可以实现抽象类接口。  1、抽象类通过abstract 关键字来定义  2、Dart中的抽象方法不能用abstract声明
Wesley13 Wesley13
3年前
Java日期时间API系列31
  时间戳是指格林威治时间1970年01月01日00时00分00秒起至现在的总毫秒数,是所有时间的基础,其他时间可以通过时间戳转换得到。Java中本来已经有相关获取时间戳的方法,Java8后增加新的类Instant等专用于处理时间戳问题。 1获取时间戳的方法和性能对比1.1获取时间戳方法Java8以前
Wesley13 Wesley13
3年前
Java深究之final、finally、finalize三者的区别
       在java中final、finally、finalize三者在写法上很相近,但是实际含义和作用却是相差甚远。本文主要是来深层的研究下这三者的用法以及之间的区别1.final属性:java中的关键字,修饰符作用:用于修饰类、成员方法、变量(成员变量、局部变量)用法:如果类被声明为final,那么该类就不能再派生出新的子类
Wesley13 Wesley13
3年前
Java 接口基础详解
目录Java接口示例实现一个接口接口实例实现多个接口方法签名重叠接口变量接口方法接口默认方法接口与继承继承与默认方法接口与多态性在Java中,接口是一个抽象类型,有点类似于类,但Java接口只能包含方法签名与属性,
Wesley13 Wesley13
3年前
Java中的权限修饰符
Java中修饰符总结:1.访问控制修饰符 作用:用于控制被修饰变量、方法、类的可见范围. public的访问级别是最高的,其次是protected、默认和private. 成员变量和成员方法可以处于4个访问级别中的一个:公开、受保护、默认或私有.