Java是一门面向对象的编程语言,主要核心点就是类,Java类具有封装,继承,多态的特性;
在Java中,类里面包含了某类事物的基本属性,将这些属性封装起来,只对外部公开别人可以访问的信息,不想让别人访问的信息,可以设置属性将它隐藏起来,这样就可以对类的属性值进行保护,让别人不可以随意的进行操作修改。
在Java中不支持多继承,即一个子类不能有多个父类,原因在于,如果一个子类继承了两个父类,当这两个父类当中都包含了同一个方法(方法名,参数,返回值都一样)的时候,这时候子类就不知道应该使用父类中的那个方法,为了解决这一问题,就延伸出了接口的概念。
在接口中只声明方法,不实现方法,意思是在一个接口当中,不去具体实现一个方法的功能,只需要定义好方法的方法名,参数,返回值即可,定义一个接口的关键字是interface,格式为public interface InterfaceName{};
当定义好一个接口之后,任何类都可以去实现这个接口,实现接口的关键字为implements,格式为 public class ClassName implements InterfaceName {}; 当一个类实现了某个接口之后,需要去实现这个接口所定义的方法,如果不去重写这个方法,那么程序将会报错。
在Java中一个类可以实现多个接口,这样当两个接口中即使有同一个方法,也不会造成影响,因为方法的具体功能是在子类中进行实现的。
Java的另一大特性多态,假设父类中有某个方法,父类对这个方法进行了声明,并实现了这个方法,当子类继承这个父类的时候,需要用到这个方法,但是子类需要用到这个方法的功能比父类的多,需要进行延伸扩展,这时候就需要子类去重写这个方法,将他修改为自己需要的功能。这样当创建一个子类的对象的时候,子对象调用这个方法的时候,就会调用子类重写的方法功能,而不去使用父类的功能。但是有时候,子类需要用到父类的这个方法的功能,但是自己有需要延伸,这时候可以使用super关键字在子类的方法中调用父类的这个方法,从而减少代码的重复率。
在Java中可以使用类创建一个对象,但是不可以使用接口去创建对象,因为接口中没有具体的实现,接口只能被一个类实现之后,才可以去创建实现的那个类。