面向对象总结

类是什么:我们把某些相同的属性和行为抽取出来成为一类。

对象:对象就是类的一个具体实例。

类和对象的关系:类是一个概念,对象时类的一个实例,例如狗这个类,京巴就是类的一个实例对象

什么是封装:封装就是对类属性加上private 使他只能在本类里直接调用。

封装的好处:保证了数据的合理性,使数据更加安全。

封装的过程:创建类,创建类属性,类属性定义为private。然后提供set 、get 方法

什么是继承:把某类事物的相同属性抽取出来成为父类,然后再由需要的子类去继承

继承的好处:提升代码的复用性

继承的语法:

Father类

son extends Father;

什么是构造方法:语法:

public 类名(){

}  无参构造器是默认的,如果存在有参构造器就会覆盖无参构造器,所以定义的时候无参构造器一般都会写出来

特殊:构造方法没有void 也没有返回值

 给属性赋值的方式都有哪些?如何选择?

针对封装来说:1:给封装属性提供set、get方法 2:通过构造器来进行赋值

       属性不是很多的时候可以用set、get方法赋值,当属性比较多怕漏掉的时候可以通过创建有参构造器的方法来赋值

 什么是方法重载? 重载的好处  语法

重载:方法同名不同参的就是重载,与返回值无关。提高代码利用率,不用定义许多方法,方便记忆和调用。 重载只能发生在同一个类中!

  语法:public void say(){

      }

     public void say(int a){

     }这就构成了重载

继承的本质?

子类调用父类的方法,给父类赋值,子类不用重新定义相同的属性

在子类构造方法中如何调用父类构造方法:

例如:

public 类名(){
 super();   
}
//调用的父类的无参构造器

 继承的特点?

继承只能单继承,但是可以多级继承

子类都继承了父类的哪些成员?

子类继承了 父类默认的,用provide public修饰的成员

多态的概念  好处:

同一种方法, 不用的实现 。 

好处:减少代码量,提高利用率

实现步骤?

1;创建父类,在父类中编写方法

2:在子类中重写父类的方法

3:使用时用父类做类型,实际传参的是子类的对象。

多态的实现方式都有哪些?

方法重载:静态实现,在编译的时候已经实现了重载

方法重写:动态实现,在编写的时候没有覆盖父类的方法,在程序运行时才重写

如何理解父类的对象指向子类的应用:

Father fa = new Son();
fa.父类的属性和方法
//father限定了他的范围

instanceof  使用场合  如何使用

interfaceof  判断一个实类是否属于一个对象

dog instanceof animal
//狗是否属于动物类,是的话返回true

什么是方法重写:

方法头相同,但是实现方式不同

class Teacher
public void teach(){
}

class JavaTeacher extends Teacher
public void teach(){
System.out.print("java老师在教java");
}
class PhpTeacher extends Teacher
public void teach(){
System.out.print("php老师在教php");
}

方法重载和方法重写的区别?

重载:同一类下! 同名不同参!

重写:不用同一类下,方法名相同,参数相同,实现不同

原文地址:https://www.cnblogs.com/miaomeng/p/8678097.html