Java面向对象
zf429_0
越努力,越幸运!
我们一直在奔跑,我们都是追梦人!
展开
-
抽象类、抽象方法、接口、内部类
1. 抽象类:不能直接实例化,只能被继承,可以通过向上转型,指向子类实例 包含抽象方法的类一定是抽象类 抽象类中可以没有抽象方法 2. 抽象方法:不允许包含方法体;子类中需要重写父类的抽象方法,否则,子类也是抽象类 static、final、private不能与abstract并存,加了这三个修饰符后,不能被子类重写 3. 接口 接口定义了某一批类所需要遵守的规范 接口不关心这些类的内部...原创 2020-03-17 23:45:28 · 106 阅读 · 0 评论 -
多态、instanceof运算符
1. 多态 满足继承关系,父类引用指向子类对象 编译时多态 方法重载 运行时多态 程序运行时动态决定调用哪个方法 2. 向上转型:也叫隐式转型、自动转型 父类引用指向子类实例,如People p = new Man() 可以调用子类重写父类的方法以及父类派生的方法 无法调用子类独有的方法 父类中的静态方法无法被子类重写,所以向上转型后,只能调用父类原有的静态方法 如果想要调用子类自己...原创 2020-03-16 23:12:59 · 90 阅读 · 0 评论 -
单例模式
1. 单例模式:使得类的一个对象成为该类系统中的唯一实例;一个类有且只有一个实例,并且自行实例化向整个系统提供 2. 要点:某个类只能有一个实例;必须自行创建实例;必须自行向整个系统提供这个实例 3. 实现:只提供私有的构造方法;含有一个该类的静态私有对象;提供一个静态的公有方法用于创建、获取静态私有对象 4. 代码实现方案:饿汉式,对象创建过程中创建;懒汉式,静态公有方法中实例化 5. ...原创 2020-03-15 23:55:58 · 41 阅读 · 0 评论 -
Object类、final关键字、注解
1. equals:继承Object类中的equals方法时,比较的是两个引用是否指向同一个对象;子类可以通过重写equals方法,修改比较规则 2. toString:输出对象名时,默认会直接调用类中的toString,默认格式是类型信息+"@"+地址信息;子类可以通过重写,改变输出内容及表现形式 3. final:final class,该类没有子类,不能被继承;final method,...原创 2020-03-15 23:05:14 · 414 阅读 · 0 评论 -
继承、方法重载、方法重写、访问修饰符、super关键字
1. 子类可以访问父类非私有成员;父类不可以访问子类特有成员 2. 方法重载:在同一个类中;方法名相同,参数列表不同(参数顺序、个数、类型);方法返回值、访问修饰符任意;与方法的参数名无关 3. 方法重写:有继承关系的类中;返回值类型、方法名、参数类型、顺序、个数都要与父类继承的方法相同;与方法的参数名无关;属性也可以重写;访问修饰符的访问范围需要大于等于父类的访问范围 4. 访问修饰符:p...原创 2020-03-15 00:41:40 · 432 阅读 · 0 评论 -
包管理和static关键字
1. 建议采用"import 包名.类名"的方式加载,提高效率 2. 加载类的顺序跟import导入语句的位置无关 3. "import 包名.*"只能访问指定包名下的类,无法访问子包下的类 4. 定义包:必须放在Java源文件中的第一行;一个Java源文件中只能有一个package语句 ...原创 2020-03-12 22:53:01 · 71 阅读 · 0 评论 -
类和对象、this关键字
1. 类是模子,确定对象将会拥有的特征(属性)和行为(方法) 2. 对象是类的实例表现 3. 类是对象的类型 4. 对象是特定类型的数据 5. 属性:对象具有的各种静态特征(对象有什么) 6. 方法:对象具有的各种动态行为(对象能做什么) 7. 实例化对象的过程可以分为两部分:声明对象(Animal animal)和实例化对象(new Animal()) ...原创 2020-03-10 23:45:17 · 240 阅读 · 0 评论