JavaSE 第二十二讲 static 与 final 关键字详解 10.8-10.9

1.接口interface

public interface Interface
{
    public abstract void output();//abstract关键字可省略
}

2.类可以实现接口

public class Test3
{
    public static void main(String[] args)
    {
        MyClass myClass = new MyClass();
        myClass.output();
        myClass.output2();
        myClass.output3();  
    }
}

interface MyInterface
{
    public void output();
}

interface MyInterface2
{
    public void output2();
}

class MyParent
{
    public void output3()
    {
        System.out.println("output3");
    }
}

class MyClass extends MyParent implements MyInterface, MyInterface2//继承父类,实现两个接口。一个类实现某个接口,该类必须实现接口中声明的所有方法;而抽象类则不需要。
{
    public void output()
    {
        System.out.println("output");
    }

    public void output2()
    {
        System.out.println("output2");
    }
}

3.多态

public class Test4
{
    public static void main(String[] args)
    {
        AA bb = new BB();
        bb.output();

        BB bb = new BB();//向上类型转换
        AA aa = bb;
        bb.output();

        AA aa = new BB();//向下类型转换
        BB bb = (BB)aa;
        bb.output();
    }
}

interface AA
{
    public void output();
}

class BB implements AA
{
    public void output()
    {
        System.out.println("BB");
    }
}

4.static关键字

public class StaticTest
{
    public static void main(String[] args)
    {
        /*
        MyStatic myStatic = new MyStatic();
        MyStatic myStatic2 = new MyStatic();
        myStatic.a = 10;
        System.out.println(myStatic2.a);
        */

        MyStatic myStatic = new MyStatic();
        MyStatic.a = 10;//static的成员变量可通过【类名.成员变量】的方法来
            System.out.println(myStatic.a); 

    }
}

class MyStatic
{
    //int a;//结果为0
    static int a; //结果为10。静态成员变量
}

你可能感兴趣的:(JavaSE 第二十二讲 static 与 final 关键字详解 10.8-10.9)