面向对象

面向对象

构造器:

  1. 和类名相同
  2. 没有返回值

作用:

  1. new 本质在调用构造方法
  2. 初始化对象的值

注意点:

  1. 定义有参构造之后,如果想使用无参构造,显示的定义一个无参的构造
  • alt+insert 有参构造和无参构造
  • this. 只当前类
  1. 类与对象

    1. 类是一个模板:抽象,对象是一个具体的实例
  2. 方法

    1. 定义,调用
  3. 对应的引用

    1. 引用类型:基本类型(8)
    2. 对象是通过引用来操作的:栈--->堆
  4. 属性:字段Field 成员变量

    1. 默认初始化
    2. 数字: 0 0.0
    3. char: u0000
    4. boolean: false
    5. 引用:null
    6. 修饰符 属性类型 属性名 = 属性值 (Java赋值操作)
  5. 对象的创建和使用

    1. 必须使用new 关键字创建对象,构造器 Person kuangshen = new Person();
    2. 对象的属性 kuangshen.name
    3. 对象的方法 kuangshen.sleep()
    1. 静态属性 属性
    2. 动态的行为 方法

    封装、继承、多态

封装

  1. 数据的隐藏,
    1. 通常,禁止直接访问一个对象中数据的实际表示,通过操作接口来访问
  2. 程序设计追求“高内聚,低耦合

继承

//Object是所有类的父类 //子类继承父类 关键字extends //ctrl+H 继承树 //隐藏代码 super()默认调用父类无参
  • Java只有单继承
  • 私有的无法被继承
  • 关键字 super调用父类属性、方法
  • super,调用父类的构造器,必须在子类构造器的第一行 ,this也是

super注意点:

  1. super调用父类的构造器,必须构造方法的第一个
  2. super必须只能出现在子类的方法或者构造方法中
  3. super和this不能同时调用构造方法

Vs this:

  • 代表的对象不同:
    • this:本身调用这个对象
    • super:代表父类对象的应用
  • 前提
    • this:没有继承也可以使用
    • super:只能在继承条件下使用
  • 构造方法
    • this:本类的构造
    • super:父类的构造

重写

  • 需要有继承关系,子类重写父类的方法
  1. 方法名必须相同
  2. 参数列表必须相同
  3. 修饰符:范围可以扩大 public>Protected>Default>private
  4. 抛出的异常:范围,可以被缩小,但不能扩大ClassNotFoundException-->Exception(大)

重写,子类的方法和父类必须一致,方法体不同

子类重写父类的方法,执行子类的方法

为什么需要重写?

  1. 父类的功能,子类不一定需要,或者不一定满足

Alt+Insert: override

多态

多态注意事项:

  1. 多态是方法的多态,属性没有多态
  2. 父类和子类,有联系的类 类型转换异常 ClassCastException
  3. 存在条件:继承关系,方法需要重写,父类引用指向子类对象 Father f1 = new Son();

不能重写

  1. static 方法,属于类,不属于实例
  2. final 常量
  3. private 方法

子转父 自动转换 可能丢失自己本来的一些方法

父转子 强制转换

static

静态方法可以调用静态,非静态可以调用静态方法

抽象类

关键字 abstrac

package com.opp.demo08; //abstract 抽象类:类 单继承 (接口可以多继承) public abstract class Action { //约束 ~ 有人帮我们实现 //abstract 抽象方法,只有方法名字,没有方法实现 public abstract void doSomething(); //1.不能new这个抽象类,只能靠子类去实现它,可以看成一种约束 //2.抽象类中可以写普通的方法 //3.抽象方法必须在抽象类周 //思考题? 抽象类不能new对象,那存在构造器吗? //存在意义 抽象出来 提高开发效率 }

接口

接口作用: 1.约束 2.定义一些方法,让不同的人实现 3.public abstract 都是抽象类 4.public static final 所有常量都是 5.接口不饿能被实例化,接口中没有构造方法 6.implements可以实现多个接口 7.必须要重写接口中的方法

内部类

  • 内部类可以获取外部类的私有属性
  • 通过外部类来实例化内部类
  • 外部类可以直接new

异常

  • 抛出异常

  • 捕获异常

  • 异常处理的五个关键字

    • try、catch、finally、throw、throws

    总结

    一个字节(byte)8位(bit)


__EOF__

本文作者挪威的straw
本文链接https://www.cnblogs.com/woods-/p/16388795.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   挪威的straw  阅读(49)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示