zoukankan      html  css  js  c++  java
  • JAVA基础知识总结:九

    二。面向对象特性之继承

    1.什么是继承?
    如果两个或者两个以上的类具有相同的属性和方法,我们可以抽取一个类出来,在抽取出来的类中声明各个类中公共的部分
    被抽取出来的类-------父类,基类,超类
    两个或者两个以上的类-----子类,派生类
    二者之间的关系:子类 继承自 父类(基类)

    2,语法
    访问权限修饰符 class 子类类名 extends 父类类名 {
    }

    a.当子类继承自父类的时候,子类对象可以访问父类中的成员变量
    b.子类同样可以调用父类中的方法
    c.一个父类,可以有多个对应的子类
    d.一个子类,只能有一个父类(单继承)


    3.super
    this是对当前对象的引用
    super是对父类对象的引用

    1》super.属性:访问父类中的成员变量
    2》super.方法:访问的是父类中的方法
    3》super():访问的是父类的构造方法
    注意:a.super()必须出现在子类构造方法的第一行语句
    b.super()具体调用的是父类中的哪个构造方法,取决于所传的参数

    二、访问权限修饰符
    1.访问权限修饰符:public\private\protected\default
    2.default:如果没有添加访问权限修饰符的话,其实就是default权限(注意:default一定不能写出来)
    3.修饰类:类的访问权限修饰符只有两个:public和default

    访问权限修饰符 同包 不同包
    public 可以 可以
    default 可以 不可以

    说明:
    public修饰的类在不同包下可以访问,但是需要注意:
    a.进行导包(需要使用类的全限定名,例如:包名.包名.类名;import com.b.Student;)
    b.如果在不同包中有相同名字的类,在使用的时候一定要注意使用类的全限定名

    4.修饰属性:四个访问权限修饰符都能用
    权限大小:public>protected>default>private


    访问权限修饰符 本类 同包不同类 子类(不同包) 不同包
    private 可以 不可以 不可以 不可以
    default 可以 可以 不可以 不可以
    protected 可以 可以 可以 不可以
    public 可以 可以 可以 可以


    三、方法重写
    1.重写规则
    在具有继承关系的两个类中,子类中的方法如果满足了以下条件,就说子类重写了父类的方法
    a.方法名相同
    b.参数相同
    c.子类方法的返回值类型必须和父类方法的返回值类型相同,或者是父类方法返回值类型的子类型
    d.子类方法的访问权限必须大于等于父类方法的访问权限

    2.final关键字
    1》final修饰类:这个类不能被继承
    2》final修饰方法:这个方法不能被重写
    3》final修饰变量

    当final修饰一个成员变量的时候,系统不会再给这个成员变量赋初始值,所以在使用之前需要我们手动进行初始化
    静态成员变量:在声明变量的时候或者在静态代码块中进行初始化
    非静态成员变量:在声明变量的时候或者构造代码块中或者构造方法中直接初始化
    局部变量:
    注意:final修饰基本数据类型和引用数据类型的区别?
    当final修饰基本数据类型的时候,不能再对基本数据类型变量进行赋值
    当final修饰引用数据类型的时候,引用类型变量不能再被重新赋值,但是可以改变引用变量所指向的内容

    总结:a.final和访问权限修饰符没有关系,是相互独立的
    b.对于基本数据类型变量,命名字母全部大写,不同单词之间使用下划线进行分隔
    c.对于引用数据类型变量,命名不需要遵循常量命名规范


    四、Object类

    是Java中所有类的父类,在其中定义了一些常用的方法
    1》toString()
    2>getClass()
    3>hashCode()
    4>equals()

    每天多努力一点,你将会变得更好。
  • 相关阅读:
    黑盒测试用例设计方法
    摄像头--用例设计
    单元测试框架unittest
    ES集群启动流程
    ES 系统模型
    HBase 体系结构
    HBase 数据模型
    引用中间件导致的OOM问题调查
    BeanDefinition注册逻辑解析
    spring xml 解析bean配置文件为beanDefinition过程
  • 原文地址:https://www.cnblogs.com/lidar/p/7743188.html
Copyright © 2011-2022 走看看