2.继承、重写、抽象

一.继承

语法关键字:extends

1、特点:子类继承父类的属性、方法!

2、不能继承的情况:私有的属性、方法、不同包、“default”修饰符!

3、单一继承:父类可被多个子类继承,一个子类只可继承一个父类!

          b继承a

二、super

在继承前提下,在子类中使用,强行调用父类的方法、属性

Super.Name;调用属性

Super.GetName();调用父类的方法

三、访问修饰符

Private:私有的,受本类保护的!外部程序不能直接访问。

默认的default:在同一个类,同一个包的可访问的。

protected:受保护的,同一个类同一个包可访问,在不同包的子类中

public:公共的,可访问所有。

四.方法重写

1、子类重写父类的方法!(继承的前提)

2、返回类型、方法名、参数列表必须一致!

3、访问修饰符不可比父类等级更高!

              

五.抽象

      关键字:abstract

特点:

  1、抽象方法只能出现在抽象类中,只需定义,不可实现!

  2、一个抽象类中也可有其他方法!

使用事项:

  1、一般在父类中定义抽象类、抽象方法,由子类继承后全部去实现父类的抽象方法!

  2、也可不实现父类的抽象方法,但是子类必须是个抽象类!

     

   3、实例化的引用:抽象类在mian中不可直接实例化!则使用内部匿名实例化:

      

六、final关键字

1、修饰属性:常量

    final String Name="小明"; //固定的一个值

      使用final修饰引用的类型变量,变量值不可被修改,而对象中属性值是可变的,

2、修饰类:不可被继承

      

3、方法不可被重写

      

六.类与类的组合:需要应用某一个类,直接在类中引用

      

时间: 2024-10-11 06:08:33

2.继承、重写、抽象的相关文章

抽象&继承&重写

抽象&继承&重写 定义父类 abstract class Car{ //是抽象类,不能直接被实例化 val carBrand: String //字段没有初始化值,就是一个抽象字段 def info() //抽象方法,不需要使用abstract关键字 def greeting() {println("Welcome to my car!")} } 子类实现 class BMWCar extends Car { //重写父类字段,需要使用override关键字 overr

Java第八章 之 继承、抽象、重写

1 /** 2 3 继承:子类继承父类的属性和方法 4 5 */ 6 7 //定义一个父类 8 9 public class Fu{ 10 11 String name; 12 13 int age; 14 15 public void work(){ 16 17 System.out.println("在工作"); 18 19 } 20 21 } 22 23 //定义一个子类 24 25 public class Zi extends Fu{ 26 27 /**重写父类的方法 28

JavaOO封装、继承、抽象总结

JavaOO 封装 类的组成 属性 方法 信息的隐藏 四种访问修饰符 private 私有权限,仅本类中可以访问 default 默认权限,只能在同一个包类访问 protected 受保护的权限,只能在同一个包类或者不同包类的子类中访问 public 公共权限,在所有地方都可以访问 方法的实现 必须有公共无参构造 必须有私有属性提供的,符合命名规范的get/set方法 继承 必须是is a 关系 关键字extands,java中的继承是单继承结构 一个子类有且只有一个父类 构造方法不会被继承 在

07.28 关键字 继承 重写 知识点梳理

static关键字被static修饰的成员变量和成员方法独立于该类的任何对象,它不依赖类特定的实例,被类的所有实例共享. 当创建对象后,成员变量是存储在堆中的,而static成员变量和类的信息一起存储在方法区, 而不是在堆中.static修饰的成员变量和成员方法习惯上称为静态变量和静态方法,可以直接通过类名来访问访问方式: 类名.类变量 或者 实例名.类变量double c = Math.sqrt(3.0 * 3.0 + 4.0 * 4.0); super关键字super必须是子类构造方法的第一

面向对象(重载、封装、继承、抽象)

一.方法重载:1.两个函数同名,就互相构成方法的重载关系2.重载的函数,必须跟其他函数之间具有不同的参数类型或参数个数注意:“Ctrl+Shift+空格键”可以查看重载的方法 二.封装1.类的字段:类里面是可以直接定义变量的,这些变量就叫类的字段,也叫成员变量.2.类的属性:是一种特殊的字段,用来为其他字段传输数据,具备两个方法3.封装字段的方法:(1)通过在字段上右键点击“重构”“封装字段”“确定”实现(2)读访问器get { return Name; } 写访问器set { if(value

黑马程序员--java基础------继承,抽象,接口

-----------android培训.java培训.java学习型技术博客.期待与您交流!------------  继承 一.概述         继承是面向对象的一个重要特征.当多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继那个类即可.这时,多个类可以称为子类,单独的这个类称为父类或者超类. 这样类与类之间就存在了继承的关系.子类可以直接访问父类中的非私有的属性和行为.在代码中通过extends关键字表示继承关系.例: class

Java基础---继承、抽象、接口

一.概述         继承是面向对象的一个重要特征.当多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继那个类即可.这时,多个类可以称为子类,单独的这个类称为父类或者超类.例如:猫和豹子都是猫科动物,那么就可以说描述猫这个对象创建的类,是子类:而描述猫科动物这个对象创建的类,就是父类. 这样类与类之间就存在了继承的关系.子类可以直接访问父类中的非私有的属性和行为.在代码中通过extends关键字表示继承关系.例: class Sonexte

第七天继承之抽象

抽象类的产生: 分析事物时,发现了共性的内容,就会出向上的抽取,就会发生一种特殊的情况,就是方法的功能,但方法的主体不同,这个时候也可以抽取,但只能抽取方法的声明,不抽取方法的主体,这就是一个抽象方法. 比如猫和狗都还是动物,都会叫,但他们的叫声不同,这个时候就可以只抽取叫这个方法出来,而不必写怎么叫,这个方法就是抽象方法. 抽象方法: 只有方法声明,而没有具体的方法.java中的抽象方法用abstract修饰. 方法名后面直接跟一个分号,而不是花括号 例如:Public abstract 返回

Java 对象的封装,继承,抽象,接口写法

面向对象的封装写法        关键字 private class A    {        private int a=1;        private void work()        {                    }            } 封装隐藏了类的实现和方法细节 继承的写法        关键字 extends class 子类 extends 父类 {}        class A    {        int a;    }        class

绑定与非绑定方法 继承 继承与抽象 查找属性关系 派生与覆盖 访问父类的内容

类属性与对象属性 类中应该仅存储所有对象共有的内容 如所有人的国籍相同那就放到类中 对象中存储每个对象独有的内容 ? 如每个人的名字都不同 初始化函数class Person: color = 'white' def read(self): print('hamlet') # 创建对象 也称之为实例化 产生的对象也称之为实例a1=Person()print(a1)print(a1.color)print(a1.__dict__) a2 = Person()print(a2)print(a2.re