Java语言面向对象总结

 

<span style="font-size:32px;">
</span>

封装,继承、多态

 

 

一、封装

      是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。

好处:
①将变化隔离。
②便于使用。
③提高重用性。
④提高安全性。
封装原则:
①将不需要对外提供的内容都隐藏起来。

②把属性都隐藏,提供公共方法对其访问。

二、继承

通过 extends 关键字让类与类之间产生继承关系。
多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。
多个类可以称为子类,单独这个类称为父类或者超类。
注意:
①子类可以直接访问父类中的非私有的属性和行为。
②子类无法继承父类中私有的内容。
③父类怎么来的?共性不断向上抽取而来的。

三、多态
某一类事物的多种存在形态。
例:动物中猫,狗。
猫这个对象对应的类型是猫类型:猫 x = new 猫();
同时猫也是动物中的一种,也可以把猫称为动物:动物  y = new 猫();
动物是猫和狗具体事物中抽取出来的父类型。
父类型引用指向了子类对象。
多态性简单说就是一个对象对应着不同类型。

体现:
父类或者接口的引用指向或者接收自己的子类对象。
作用:
多态的存在提高了程序的扩展性和后期可维护性。
前提:
①需要存在继承或者实现关系。
②需要有覆盖操作。
好处:
提高了代码的扩展性,前期定义的代码可以使用后期的内容。
弊端:
前期定义的内容不能使用(调用)后期子类的特有内容。

 


java代码示例:

 

//定义一个人父类  
class Person  
{  
    //名字和年龄是人的共有属性  
    String name;  
    int age;  
      
    //在构造函数中对名字和年龄进行初始化  
    Person(String name,int age)  
    {  
        this.name=name;  
        this.age=age;  
        System.out.println(name+"  "+age);  
    }  
    //人都具有睡觉的功能  
    void sleep()  
    {  
        System.out.println("sleep");  
    }  
}  
//定义一个学生,继承人,作为子类  
class Student extends Person  
{  
    Student(String name,int age)  
    {  
        super(name,age);    //super关键字表示父类,因为姓名和年龄在父类中进行了初始化动作,在这里可以直接调用  
    }  
    //学生具有特有的功能,学习  
    void study()  
    {  
        System.out.println("study");  
    }  
  
}  
  
class Demo  
{  
    public static void main(String[] args)  
    {  
        Student s=new Student("zhangsan",20);  
        System.out.println(s.name="wangwu");  
        s.sleep();  
        s.study();  
    }  
} 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值