java面向对象

类的定义:是对现实生活中一类具有共同属性和行为事物的抽象,确定对象将会拥有的属性和行为、

类的组成:属性和行为

private 关键字

是一个权限修饰符

可以修饰成员(成员变量和成员方法)

作用是保护成员不被别的类使用,被private修饰的成员只在本类中才能访问

针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作

提供“get变量名()” 方法,用于获取成员变量的值,方法用public修饰

提供“set变量名(参数)”方法,用于设置成员变量的值,方法用public修饰

构造方法:

构造方法是一种特殊的方法

作用:创建对象

功能:主要是完成对数据的初始化

🔴APl

APL(Application Programming Interface):应用程序编程接口

java API:指的是JDK中提供的各种功能的Java类

🔴继承

继承是面向对象三大特征之一,可以使得子类具有父类的属性和方法,还可以在子类中重新定义,追加属性和方法

继承的格式: public class 子类名 extends 父类名{ }

方法重写

方法重写就是子类有一个方法,和父类的某一个方法的名称、返回类型、参数一样,那么就说子类的这个方法覆盖了父类的方法

🔴多态

  • 📩同一个对象,在不同时刻表现出来的不同形态

  • 📩多态的前提:

  • 📩有继承 / 实现的关系

  • 📩有方法的重写

  • 📩有父类引用指向子类对象

多态中成员访问特点

  • 📩成员变量:编译看左边,执行看左边

  • 📩成员方法:编译看左边,执行看右边

java的动态绑定机制

1.当调用对象方法的时候,该方法会和对象的内存地址 / 运行类型 绑定

2.当调用对象属性是,没有动态绑定机制,哪里声明,那里使用

抽象类

在java中,一个没有方法体的方法应该定义为抽象方法,而类中如果有抽象方法,该类必须定义为抽象类

抽象类的特点:

  • 抽象类和抽象方法必须使用abstract 关键字修饰

public abstract class 类名{

      

    public abstract void eat();

}

​

  • ⚡️抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类

  • ⚡️抽象类不能实例化

  • ⚡️abstract只能修饰类和方法,不能修饰属性和其它的

  • ⚡️如果一个类继承了抽象类,则它必须实现抽象类的所有抽象方法,除非它自己也声明为abstract类

  • ⚡️抽象方法不能使用private、 final、static来修饰,因为这些关键字都是和重写相违背的

抽象类如何实例化?参照多态的方式,通过子类对象实例化,这叫抽象类多态

  • ⚡️抽象类的子类

  • ⚡️要么重写抽象类中的所有抽象方法

  • ⚡️要么是抽象类

抽象类的成员特点

成员变量

  • ⚡️可以是变量

  • ⚡️也可以是常量

构造方法

  • 有构造方法,但是不能实例化

  • 抽象类中的构造方法作用是:用于子类访问父类数据的初始化

成员方法

  • 可以有抽象方法:限定子类必须完成某些动作

  • 也可以有非抽象方法:提高代码复用性

🔴接口

定义:接口就是给出一些没有实现的方法,封装到一起,到某个类要使用的时候,在根据具体情况把这些方法写出来。

接口也就是特殊的方法

接口的特点:

接口用关键字interface修饰


public interface 接口名{ }

类实现接口用 implements 表示


public class 类名 implements 接口名 { }

接口不能实例化

接口如何实例化 参照多态的方式,通过实现类对象实例化,这叫接口多态

接口的实现类

要么重写接口中的所有抽象方法

要么是抽象类

接口中的属性,只能是fianl的,而且是public static final 修饰符




public interface JumpingDemo {



    //这两句是等价的 

   // public static  final  int num =10;

      int num = 10;

    

    //抽象方法

    public abstract void jump();

}



🔴抽象类与接口的区别

成员区别:

  • ⚡️抽象类:常量,变量;有构造方法;有抽象方法;也有非抽象方法

  • ⚡️接口:常量;抽象常量

关系区别:

  • ⚡️类与类:继承,单继承

  • ⚡️类与接口:实现,可以单实现,也可以多实现、

  • ⚡️接口与接口:继承,单继承,也可以多继承

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
中…(img-SCqi5Z1X-1715532913558)]

[外链图片转存中…(img-GHp5Rlev-1715532913559)]

[外链图片转存中…(img-CPt9d6dG-1715532913559)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 19
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值