【Java系列】面向对象三大特点:封装、继承、多态 | 您所在的位置:网站首页 › c语言封装继承多态 › 【Java系列】面向对象三大特点:封装、继承、多态 |
一、封装
将成员变量和成员函数封装在一个类中 1.如何体现封装性体现封装,则需要掌握访问控制符 public(接口访问权限)protected(包访问权限、继承访问权限)“默认”(包访问权限)private(无法直接访问) 2.访问控制的范围即讨论的是在一个类在生成一个类的对象,是否能通过这个对象来访问这个对象的成员变量和成员函数。 不能通过对象引用fp来访问不在同一包的类的protected属性和方法 二、继承为了代码的重用,Java中引用了类的继承。 子类继承了父类的所有属性和方法, 但只有public、protected的属性和方法在子类是可见的。 1.继承的实现通过extends关键字实现; //父类 class Plane{protected String name;public void setName(String _name){name=_name;}public String getName(){returen} } //子类继承了父类 class FighterPlane extend Plane{private int missileNum;public void setNum(int _missileNum){missileNum=_missilNum;}public void fire(){missileNume-=1;} } //运行类 class Run{public static void main(String[] args){FighterPlane p=new FighterPlane;p.name="su35";//通过FighterPlane的对象调用数据p.setName("f35");System.out.println(p.get.Name);p.fire();} } super()直接调用父类的构造函数,()里面传参Object类是所有类的共同祖先,即使定义类时没有写extents Object。在Object当中定义了许多方法,这些方法都可以被所有子类所继承。 三、多态多态的概念:多态是指一个程序中同名的不同方法共存的情况 Java中提供两种多态的机制:重载(overloading)与覆盖(overriding) 1.重载方法名称相同,参数类型或个数不同 成员函数都可以重载 public class clc {//构造函数的重载public clc(){int a=10;}public clc(int s){int a=s;}//普通函数也可以重载public int getScore(){return 3;}public int getScore(int i){return i;} } 2.覆盖在继承父类的时候重写父类的方法 //父类 class Plane{protected String name;public void setName(String _name){name=_name;}public String getName(){returen} } //子类继承了父类 class FighterPlane extend Plane{private int missileNum;public void setName(int _missileNum){missileNum=_missilNum;}public void fire(){missileNume-=1;} } |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |