多态(重载和覆盖) 继承

重载:

同一个类中的许多方法可以拥有同一个名字,只要他们的参数声明不同即可

覆盖:

子类重新实现了父类中的方法(继承)


多态规则:

1.方法名一定要一样

2.传入的参数一定要不一样

3.当父类的引用指向子类的对象时,调用一个方法 而这个方法 恰好又被子类所重写,此时调用的方法是子类的方法。

   父类的引用调用属性时,调用自己的属性。

4.如果引用前加上final修饰符,但这个引用一旦指向了某个对象,指向不能改变,

代码:

//多态

public class student {

//父类中的方法

void print(){

System.out.println("这是小明同学");

}

void print(String name){

System.out.println(name + "是小明的同学");

}

void print1(){

System.out.println("这是父类中的一个函数");

}

public static void main(String[] args) {

student stu = new student();

student1 stu1 = new student1();

stu.print();

stu.print("tom");

System.out.println("-----------");

stu1.print();

//----------------------------

student stu2 = new student2();

stu2.print1();

}

}

//继承student

class student1 extends student{

//覆盖父类的print方法

void print(){

System.out.println("这是小明的同学");

System.out.println("他很优秀");

}

}

class student2 extends student{

void print(){

System.out.println("这是学生的一个函数");

}

void print1(){

System.out.println("这是学生的另一个函数");

}

}

注意:studentClass(父类) studentMen(子类) 

如果父类中没有这个方法 而在子类中出现这个方法

studentClass stu = new stuClassMen();指向子类 只能操作子类中的方法 stu是父类的数据类型。
那么stu不可以调用这个方法 ,
只能调用父类中有而被子类覆盖的方法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,766评论 18 399
  • 一. Java基础部分.................................................
    wy_sure阅读 3,836评论 0 11
  • 面向对象主要针对面向过程。 面向过程的基本单元是函数。 什么是对象:EVERYTHING IS OBJECT(万物...
    sinpi阅读 1,091评论 0 4
  • 朋友圈被腾讯公益的 “ 一元购画 ”活动刷屏了。我身边当了妈的朋友几乎都参加了这个活动。 据说,活动中的画作都是由...
    HeyMom养育研究所阅读 809评论 0 0
  • 3、跟一个同事聊天,最近有什么好事发生呀?结果他说了好多不好的事情,我问,这种事情其它的店有没有?即使发生了,我们...
    Martin_马丁阅读 69评论 0 0