类的定义:是对现实生活中一类具有共同属性和行为事物的抽象,确定对象将会拥有的属性和行为、
类的组成:属性和行为
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前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
中…(img-SCqi5Z1X-1715532913558)]
[外链图片转存中…(img-GHp5Rlev-1715532913559)]
[外链图片转存中…(img-CPt9d6dG-1715532913559)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!