0
点赞
收藏
分享

微信扫一扫

java basic 01(面向对象)

青鸾惊鸿 2022-02-05 阅读 80
java

1. 静态方法和非静态方法

静态方法(static)--class调用,非静态方法--实例化调用

2. 值传递和引用传递

3. 类的构造器

  1. 一旦定义了有参构造,无参构造必须显式定义
  2. 构造器用来初始化对象的某些数据

4. 创建对象时内存分析(简)

1. 对象的引用名存放在栈中,对象的实例存放在堆中,栈中的引用变量名指向堆中的实例,方法区存放类的属性、方法和静态方法区(static方法,和类一起加载),方法区也是一种特殊的堆

        

5. 封装(private)

高内聚,低耦合--高内聚指的是类的内部数据操作细节自己完成,不允许外部干涉。低耦合指仅暴露稍少量方法供外部使用

对象--属性私有(private关键字)、 提供一些public 的get\set方法来获得这些私有属性

封装的意义:

  1.         提高程序安全性,保护数据(仅通过get/set访问)
  2.         隐藏代码的实现细节
  3.         统一接口
  4.         增加系统可维护性

6. 继承

tip: ideas中鼠标定位到某个class中使用快捷键ctrl+H,可以查看类层次结构

tio: option + Enter自动补充完整本地变量(MAC)

要点:

super:

1. super调用父类的构造方法,必须在构造方法的第一个

2. super智能出现在子类的方法或者构造方法中

3. super和this不能同时调用构造方法

4. super()表示调用父类的构造方法

this:

1. 本身调用者这个对象

2. 代表父类对象的应用

3. this没有继承也可以使用,super只能在继承条件下使用

4. this()表示调用本类的构造方法

7. 多态

1. 子类能调用的方法都是自己的或者继承父类的

2. 父类,可以指向子类,但是不能调用子类独有的方法

3. 多态是指(方法)的多态

4. 多态是父类和子类直接的关系(继承),方法需要重写(父类和子类如果都有该方法,注意和重载的区分,另外被static, final,private修饰的方法没法被重写),父类的引用指向子类对象。

8. 子类和父类直接的转换

1. 前提:父类引用指向子类对象

2. 把子类转换为父类,向上直接转换

3. 把父类转换为子类,向下转型,需要强制转换,可能会丢失一些方法

9. static关键字

10. 抽象类(单继承,对比接口--多继承)

1. abstract 关键字定义,如果abstract加在方法名中,表示抽象方法(只有方法名,没有方法的实现)

2. 抽象类的所有方法,继承了该抽象类的子类,都必须要实现它的方法

3. 抽象类不能new出来,只能靠子类取实现它:抽象类仅仅作为约束作用

4. 抽象类中可以写普通方法

5. 抽象方法必须在抽象类中定义

11. 接口

1. 抽象类:extends~

    类 可以实现接口 implements 接口

    实现了接口的类,就需要重写接口中的方法

    多继承~利用接口实现多继承

2. 作用:

    1. 约束

    2. 定义一些方法,让不同的人去实现~ 

    3. public abstract 修饰接口中的方法

    4. public static final 修饰接口中的常量(不常用)

    5. 接口不能被实例化,接口中没有构造方法

    6. implements可以实现多个接口

    7. 必须要重写接口中的方法

12. 内部类

 

举报

相关推荐

0 条评论