• 抽象和封装


    1.从现实抽象出类的步骤
    第一:找出分类(分析出类)
    第二:找出类的特征(分析类的相关属性)
    第三:找出类的行为(分析类的方法)
    2.常量(经常出现的变量值)
    语法:piblic static final 变量名 = 变量值;
    注意:变量名的所有字母都大写,多个单词都用下划线(_)分隔。
    例:public static final SEX_MALE ="Q仔";

    常量的访问方式:类名.常量名;
    3.构造方法(特殊方法,用来创建对象)
    3.1语法:public 类名(参数列表){
    //方法体;
    }
    3.2使用
    类名 对象 = new 构造方法名(参数);
    例:Dog d = new Dog();
    3.3构造方法的使用
    a.创建对象 
    b.初始化值(属性值)
    3.4构造方法和普通方法的区别
    a.构造方法没有返回值类型(return...)
    b.构造方法的方法名是类名,普通方法可以任意取
    c.构造方法调用:new 构造方法名(参数);
    普通方法的调用: 对象名.方法名(参数);
    注意:当你没有写构造函数时,java会提供默认的无参构造函数
    例:Public Dog(){
    }
    4.方法重载
    4.1方法重载:方法名一样,参数列表不一样
    注意:重载与返回值类型和访问修饰符无关
    5.static和final
    static:静态的
    用static 修饰的属性,直接可以类名.方法名访问

    final:最终的
    用final修饰的属性,它的值初始化后,不能再改变
    static.非private修饰 非static private修饰
    属性
    注意:static 不能在方法中修饰局部变量
    补充:后++,先把本身的值作为表达式的值,然后本身+1 
    例:i++;
    前++,先本身+1,然后再把值作为表达式的值
    例:++i;

    6.封装
    6.1封装:隐藏类内部实现细节
    6.2步骤:
    第一步:将属性私有化。
    第二步:提供getter/setter方法(getXxxx(),setXxxx()),
    第三步:在getter/setter中加入控制语句
    6.3this关键词
    this:表示当前对象
    调用属性:this.属性名
    调用方法:this.方法名();
    this();表示调用构造函数
    注意:this(),必须写在构造函数的第一行
    7.继承(extends)
    7.1继承:遗传
    7.2语法
    public class 子类 extends 父类{
    }
    例:public class Dog extends Pet{
    }
    7.3继承的特点
    a.子类可以继承父类的非私有的属性和方法
    b.不能继承构造方法

    c.抽象类不能实例化
    并且继承抽象类的子类都必须重写抽象类中的所有抽象方法

    注意:1.抽象类中不一定有抽象方法
    2.含有抽象方法的类,一定是抽象类(接口)
    9.重写
    9.1重写就是子类重写定义父类的方法
    9.2.重写规则
    a.方法名和参数列表相同
    b.修饰符访问权限子类和父类相同或者比父类大
    c.返回值类型子类和父类相同(或者是父类的返回值的子类)
    d.异常跟父类相同或者范围更小

    一般:重写时,子类的东西都要与父类保持一致
    10.final
    final修饰的类不能被继承
    final修饰的方法不能重写
    final修饰
    //自动类型转换

    char c= 10;
    int a = c;
    //强制类型转换
    int a = 10;
    char c = (char)a;
    //向上转型
    Dog d = new Dog( );
    Pet p = d;
    //向下转型
    Pet p = new Dog();
    Dog d = (Dog) p ;

  • 相关阅读:
    LOJ#10106. 「一本通 3.7 例 2」单词游戏
    小木棍(爆搜减枝)
    倍增求lca(模板)
    2018年第九届蓝桥杯C/C++A组省赛(最后一题)
    LOJ#10172. 「一本通 5.4 练习 1」涂抹果酱
    【[APIO/CTSC2007]动物园】状压DP
    c++滚动数组
    状态压缩入门(附经典题目和题解)
    小 M 的算式(dfs)
    P与NP问题详解
  • 原文地址:https://www.cnblogs.com/abc199812/p/7019149.html
Copyright © 2020-2023  润新知