Java Web快速开发(2~4)Java 基本程序结构、类、继承和接口

文章目录

  • 二、Java基本程序结构
    • 1、数据类型
    • 2、运算符
    • 3、循环语句
  • 三、类
  • 四、继承和接口
    • 1、多态
    • 2、抽象类
    • 3、接口定义
    • 4、接口增强
    • 5、clone(实现的只是浅拷贝)

二、Java基本程序结构

1、数据类型

Java Web快速开发(2~4)Java 基本程序结构、类、继承和接口_第1张图片

2、运算符

3、循环语句

三、类

四、继承和接口

1、多态

2、抽象类

通常作为类的顶层,不能实例化,可以有抽象方法,也可以有实际方法。抽象方法必须存在于抽象类中

3、接口定义

    Java 中使用interface 关键字来定义一个接口,在Java 8 之前,接口中只定义方法而没有实现,其具体的方法需要在实现该接口的类中完成。Java 8 对接口进行了增强,接口中可以实现一些特定的方法。接口中的方法默认public 属性方法不能定义为static 类型(Java 8 中可以定义静态方法,但必须在接口中实现)。接口也可以定义域的成员,通常情况下,域成员作为常量被使用。接口的域成员默认为public static final 形式。
    接口不能用new 进行实例化,但可以声明接口变量,并将接口的类赋值于该变量,一个类要实现某个接口,需要使用implements 关键字,需要实现多个接口时,接口名字间用“,”隔开即可。

public interface Song {
    public String sound();
}
public class Cat implements Song{
    public String sound(){
        return "miao miao miao";
    }
}
public class Dog implements Song {
    public String sound() {
        return "wang wang wang...";
    }
}

测试接口:

import java.util.ArrayList;
import java.util.List;

public class AnimalSong {
    public static void main(String[] args) {
        List<Song>animalList=new ArrayList<Song>();
        animalList.add(new Cat());
        animalList.add(new Dog());
        for (Song animal:animalList){
            System.out.println(animal.sound());
        }
    }
}

输出:

miao miao miao
wang wang wang...

4、接口增强

Java 8 对接口的功能进行了增强,接口中可以有静态方法和缺省方法,缺省方法为在方法名前加上default 关键字,再对其进行实现。

public interface ITestInterface {
    public static void hello() {
        System.out.println("hello world!");
    }

    default public void sayHello(String name) {
        System.out.println("hello" + name);
    }

    public void hi(String name);
}
public class TestInterfaceImpl implements ITestInterface {
    public void hi(String name) {
        ITestInterface.hello();
        this.sayHello("tom");
    }

    public void sayHello(String name) {
        System.out.println("hi" + name);
    }

    public static void main(String[] args) {
        TestInterfaceImpl s = new TestInterfaceImpl();
        s.sayHello("111");
    }
}

输出:(调用类中sayHello 函数,如果类中没有sayHello 函数就调用接口中sayHello 函数)

hi111

5、clone(实现的只是浅拷贝)

你可能感兴趣的:(Java,java,接口)