Java面向对象编程中的继承

这周二去面试实习的时候,谈谈面对对象的继承,当时回答的不是很好,周六考完六级,现在有空就记录一下继承的学习吧。
1.为什么要用到继承呢?
继承,就像妈妈和孩子们有一些共同的属性,妈妈生了一个小孩,而小孩拥有了妈妈的功能属性,小孩自己还可以学习很多东西,扩展了自己的功能和属性!

public class Mother{
      private int age;
      private String name;
      public int getAge(){
             return age;
      }
      public void setAge(){
             this.age = age;
      }
      public String getName() {
        return name;
      }
      public void setName(String name) {
        this.name = name;
       }
}

// 子类
public class Son extends Mother {
    public void LOL()
    {
        System.out.println("我会唱,跳,rap");
    }   
}

//实现类:
public class MainDemo {
       public static void main(String[] args) {
                  Son son = new Son();
                  son.setAge(15);
                  son.setName("cxk");
                  System.out.println("son.name:" 
                  + son.getName()+ " ,son.age:" + son.getAge());
                  + son.LOL();  
         }
 }

显示结果:

son.name:cxk ,son.age:15
我会唱,跳,rap

可是妈妈的eat方法是喜欢吃面,小孩喜欢吃汉堡,这时候son想了个方法,重写了妈妈的eat方法,就行!

@Override
public void eat(){
       System.out.println("吃汉堡");
}

由此可见在继承中有一种东西叫做重写(覆盖),妈妈有的东西我不要我就换掉。
2.java的修饰符private
父类有些东西不想给子类看到,父类就想把一些东西占为己有,就私有掉。这个时候子类就不能继承。
3.java的修饰符final
有些父类甚至想断子绝孙?那就使用final class Father
3.java的修饰符static
当父类使用static修饰他的eat方法时候子类是不能重写的!因为static修饰的方法和一般的方法不同,它是静态绑定的,所属类的!
4.java是不能多继承
但是可以传递性的基础
5.继承的好处

  • 提高了代码的复用性
  • 提高了代码的维护性
  • 类之间产生了关系
  • 是另一作用是多态的前提

6.弊端

  • 提高了耦合性
  • 一定程度上打破了封装

参考博客:
https://wistbean.github.io/java-extends.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值