Java基础10一面向对象

2018-01-05 11:30:51来源:cnblogs.com作者:smart_hwt人点击

分享

抽象

概念:当一个类中没有足够的信息描述一个现实生活中具体存在的事物,那么这个类就是抽象类。

抽象类一般是对概念领域中的描述。

语法

[访问修饰符] abstract class 类名{}

如:

public abstract class Person{}

特点:

1.抽象类不能够创建对象,但是可以有构造方法,抽象类的构造方法是给子类调用的。如:

public abstract class Person{
  //这个方法是正确的  public Person(){   System.out.println("构造方法");   }  //但是不能这样创建对象  Person per = new Person();
}

2.抽象类中可以包含抽象方法,但是静态方法不能是抽象的。

抽象方法的定义语法:

[访问修饰符] abstract 返回值类型  方法名称(参数列表);
public abstract class Person{  //抽象方法  public abstract void sleep();        //静态方法  public static void say(){       System.ou.println("你好");      }}

如果一个类中有一个抽象方法,那么这个类一定是抽象类,但是一个抽象类中不一定有抽象方法。

子类继承了抽象类,那么子类一定要实现父类中所有的抽象方法,否则子类也要声明为抽象类。

接口

接口就是用来声明功能(方法),在接口中只有方法的声明和常量。

定义语法:

[访问修饰符] interface 接口名称{}

接口特点:

接口中没有构造方法,也不能够创建接口的对象。

接口中的方法由类来实现。

接口中定义的方法,访问修饰符永远都是public。

接口中定义的变量永远都是常量。

接口中常量被public static final 修饰。

接口可以实现多继承。

接口实现多继承

语法:

[访问修饰符] interface 接口名称 extends 接口1,接口2…{}

实现接口通过implements关键字来实现

语法:

[访问修饰符] class 类名 implements 接口名称{}

实现接口,那么就要实现接口中所有的方法,否则当前类要定义为抽象类。

 static关键字

 前提:

实例变量和类变量

实例变量指的是通过类的对象去调用

类变量指的是无需通过类的对象调用,直接用类名调用即可。

作用:

static可以修饰变量成为静态变量或者类变量

static修饰的变量属于类,不属于某个对象,而且不管创建多少个对象,静态变量只有一个副本,也就是说所有对象使用的类变量是同一个。

static修饰的变量可以直接通过类名调用。

static修饰方法成为类方法,静态方法直接通过类名调用即可。

 static可以修饰代码块,作用就是用来给静态变量初始化的。

 语法:

static{}

特点:

在静态方法中只能调用静态的方法或变量

在非静态方法中可以调用静态方法或静态变量

在静态方法中不能使用this,super关键字

局部变量不能是static修饰的。

微信扫一扫

第七城市微信公众平台