面向对象概念

  所有操作基于对象进行操作实现

面向对象的三大特征

  封装、继承、多态

类:具有相同特征和行为物体的统称

在java中类的定义语法:

[修饰符]   class   类名{
  属性;
  方法;
}


属性和方法称为成员、分别是成员属性和成员方法

class Person{
        private String name;
        private int age;

        public Person{
            this.name=name;
            this.age=age;
        }
        {
            age=20;
        }
    }
class Main{
        public static void main(String[] args){
            Person person=new Person("XXX",18);
        }
    }

如果一个类中局部变量和成员变量同名,优先访问局部变量,可以用this区分局部变量和成员变量
封装的含义:定义类的过程

    public class 子类名 extends 父类名{

    }
        public abstract class ClassName{
            public abstract 返回值类型 方法名(参数列表);

        }

接口:比抽象类更加抽象,在接口中只能含有抽象方法(接口中方法的访问修饰符默认是public abstract)和常量
定义语法:

[访问修饰符] interface InterfaceName{
        public static final 数据类型 常量名=值;
        public abstract 返回值类型 方法名(参数列表);
    }

使用接口:

class ClassName implement InterfaceName{
            重写接口中的方法
        }
class Person{
        String name;

        public void info(){

        }
    }

    class Chinese extends Person{
        @override
        public void info(){

        }
    }

    class Main{
        public static void main(String[] args){
            Person chinese=new Chinese();多态
        }
    }

例:

class Animal{

    class Cat{

    }
    class Dog{

    }
    class Main{
            public static void main(String[] args){
                Animal animal=new Animal();
                Cat cat=(Cat)animal;
                Dog dog=(Dog)animal;//错误

                Animal01 animal01=new Dog();
                Dog dog=(Dog)animal01;//正确
            }
        }
06-14 19:41