A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 1049355629 初级黑马   /  2019-7-24 14:52  /  1043 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在就业班的几天内 学到了很多东西,继承,多态,接口,异常等等。


day01
  • 继承的概念
    • 概念 :面向对象得三大基本特征之一,使子类可以拥有父类得属性和方法

  • 继承的格式
    • public class 子类  extends  父类

  • 继承的优点
    • 提高了代码的复用性
    • 提高了代码的维护性

  • 继承的缺点
    • 使子类与父类强耦合(紧密联系在一起)在一起,使子类会无条件继承父类得属性和方法,降低了子类得独立性

  • 继承中变量的访问特点
    • 规律:就近原则 局部优先原则
    • 子类的局部变量
    • 子类的成员变量
    • 父类的成员变量

  • super关键字在访问成员变量时的用法
    • super.变量名---->访问父类得成员变量
    • this.变量名----->访问本类得成员变量

  • 继承中构造方法的访问特点(super调用构造方法)
    • super();调用父类得构造方法,应该是首行非注释代码
    • this(); 调用本来得构造方法,应该是首行非注释代码

  • 继承中成员方法的访问特点(super调用成员方法)
    • super. 方法名(); 父类的成员方法
    • this. 方法名(); 本类的成员方法

  • 方法重写
    • 子类中出现了与父类相同的方法

  • 方法重写注意事项
    • 不能重写private的方法
    • private--默认---protected--public:子类中重写的方法的访问范围要大于等于父类中方法的访问范围

  • 继承的注意事项
    • 单继承体系
    • 多层继承

  • package的概念
    • 文件夹

  • import的概念
    • 导入不同包下的java类
    • 导包时使用通配符: import  cn.itcat.*;

  • 权限修饰符

权限修饰符
同一个类
同包子类无关类
不同包子类
不同包无关类

private可以
默认可以可以
protected可以可以可以
public可以可以可以可以
15.final修饰符
  • 修饰方法,代表当前方法不可以被重写
  • 修饰变量,变量就变成常量
  • 修饰类,不允许被继承

16.static修饰符
  • 修饰变量:1.类名.变量名     2.类得多个对象共享一个变量得值
  • 修饰方法    类名.方法名()   注意点:只能访问本来得静态属性和静态方法

day02
  • 多态的概念
    • 概念:同一段代码不同时刻表现出不同得执行状态

  • 多态的前提
    • 继承
    • 方法得重写
    • 父类得引用指向子类得对象

  • 多态中成员访问特点
    • 成员变量:编译看左边,运行看左边
    • 成员方法:   编译看左边,运行看右边

  • 多态的优点和缺点
    • 优点:提高了代码得拓展性
    • 缺点:父类得引用无法调用子类特有得方法

  • 多态中的向上转型和向下转型
    • 向上转型:父类得类名  父类引用=new 子类得对象(); 自动类型转换
    • 向下转型:子类得类名   子类得引用=(子类得类名)父类引用;强制类型转换

  • 抽象类的概念
    • 通过abstract修饰得类为抽象类

  • 抽象方法的概念
    • 通过abstract修饰得方法为抽象方法,抽象方法没有方法体得方法

  • 抽象类的特点
    • 抽象类和抽象方法必须通过abstract关键字修饰
    • 抽象类不一定会有抽象方法,但是一旦有了抽象方法必须是抽象类
    • 抽象类不能实例化对象
    • 抽象类得子类必须重写抽象方法或者自己也变为抽象类

  • 抽象类的成员特点
    • 成员变量   变量/常量
    • 构造方法 无参/有参
    • 方法     抽象/普通

  • 接口的概述
    • 特殊得抽象类,接口中全部都是抽象方法,行为规范

  • 接口的特点
    • 接口是通过 interface关键字修饰
    • 类与接口之间是实现关系,通过implments 关键字实现
    • 接口不可以实例化对象
    • 接口得实现类要么重写抽象方法要么自己也变成抽象类

  • 接口成员的特点
    • 静态常量
    • 抽象方法

  • 类和接口的关系
    • 类与类之间关系:继承关系,单继承体系,支持多层继承
    • 类与接口之间得关系:实现得关系,可以单实现,也可以多实现,并且能够继承某个类得同时实现某个接口
    • 接口与接口之间得关系:继承关系,支持多继承




day03
  • 类名作为形参和返回值
    • 类名作为形参或返回值,其实传递或返回的是该类得对象

  • 抽象类作为形参和返回值
    • 抽象类名作为形参或返回值,其实传递或返回的是该类子类得对象

  • 接口作为形参和返回值
    • 接口名作为形参或返回值,其实传递或返回的是该接口实现类得对象

  • 内部类概念
    • 类内部声明得类

  • 内部类的访问特点
    • 内部类可以直接访问外部类得成员,包括私有得
    • 外部类访问内部类成员,需要实例化内部类对象

  • 内部类的分类
    • 成员内部类
    • 局部内部类

  • 成员内部类
    • 声明在类得成员位置得类
    • 外部类得类名.内部类得类名  引用名=外部类得对象.内部类得对象


   public class Outer {
    private int num = 10;
    public class Inner {
        int num=20;
        public void show() {
            int num=30;
            System.out.println(num);
            System.out.println(this.num);
            System.out.println(Outer.this.num);
        }
    }

    public void method() {
        Inner i = new Inner();
        i.show();
    }

}
   public class InnerDemo {
    public static void main(String[] args) {
        //创建内部类对象,并调用方法
//        Inner i = new Inner();
        Outer.Inner oi = new Outer().new Inner();
        oi.show();
        System.out.println("------------------------");
        Outer outer=new Outer();
        Outer.Inner ooi=outer.new Inner();
        ooi.show();
        System.out.println("------------------------");
        Outer o = new Outer();
        o.method();
    }
}
  • 局部内部类
    • 类得方法内部声明得类

  • 匿名内部类
    • 没有名字得局部内部类
    • new 接口/抽象类/类(){方法重写()}

  • Math工具类
    • java.lang.Math
    • abs():求绝对值
    • ceil():向上取整  12.35  12.56--->13
    • floor():向下取整 12.35  12.56------>12
    • round():四舍五入 12.35-->12  12.56--->13
    • max():两数求最大值
    • min():两数求最小值
    • pow():求幂数 2 3
    • random():随机数 [0.0-1.0)

  • System类
    • exit():退出虚拟机  echo %errorlevel%
    • currentTimeMillis():返回得是距1970年1月1日0点0分0秒距现在得毫秒差

  • Object类
    • toString():一般用于对当前对象进行说明
    • equals():比较两个对象得内容是否相等

  • Arrays类

    • java.util.Arrays
    • toString():以字符串得方式获取数组
    • sort(): 数组排序




  • 封装数据类型
    • byte        Byte
    • short      Short
    • int           Integer
    • long        Long
    • float        Float
    • double    Double
    • char         Character
    • boolean   Boolean

  • 如何通过Integer对象描述一个int型值
    • new  Integer(100)
    • new  Integer("100")
    • Integer.valueOf(100)
    • Integer.valueOf("100")

  • int与String互换
    • int转String
      • 1+“”
      • String.valueOf(5)

    • String转int
      • Integer.valueOf("5")    intValue()
      • Integer.parseInt("5");


  • 自动拆箱装箱jdk1.5
    • 自动装箱:int i=100;  Integer ii=i;
    • 自动拆箱:Integer ii=Integer.valueOf(100); int i=ii;

  • Date类实例化 java.util
    • new Date()
    • new Date(long)

  • Date类常用方法
    • getTime()
    • setTime(long)

  • SimpleDateFormat格式化日期 java.text
    • yyyy MM  dd  HH mm ss
    • format():将日期转换为指定格式得字符串
    • parse():将指定格式得字符串转换为日期

  • Calendar类用法 java.util
    • Calendar c=Calendar.getInstance();
    • c.get(Calendar.Year)根据日历字段返回相应得值
    • add()
    • set()

  • 异常
    • 概念:程序中出现得错误
    • 异常得体系结构
      • Throwable
        • Error:不可处理异常
        • Exception:可处理异常
          • 编译期异常:
          • 运行时异常:RuntimeException



    • try:异常得监视块
    • catch:异常得捕获块

  • Throwable成员方法
    • getMessage(): 错误原因
    • toString():简要异常消息
    • printStackTrace():详细异常消息

  • 运行时异常和编译时异常
    • 运行时异常
    • 编译时异常:要求编译时必须进行异常处理

  • 异常举例
    • ArithmeticException:数学异常除数不能为0
    • NullPointerException:空指针异常
    • StringIndexOutOfBoundsException:字符串索引越界
    • NumberFormatException:数字格式化异常
    • ClassCastException:类型转换异常

  • 多重catch块
    • try{}catch   catch

  • throws
    • 回避异常


  








0 个回复

您需要登录后才可以回帖 登录 | 加入黑马