面向对象概念
所有操作基于对象进行操作实现
面向对象的三大特征
封装、继承、多态
类:具有相同特征和行为物体的统称
在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;//正确
}
}