java面向对象的学习day04

java面向对象的学习day04

复习:

继承(extends):

super关键词: 父类引用
this关键词: 当前对象

方法重写:
修饰符/返回值类型/方法名/方法参数完全一致

抽象类(abstract修饰的类)


public static void main(String[] args){}
访问修饰符可以修饰: 成员变量/成员方法/类/内部类

1.权限修饰符/访问修饰符
public:公开的,公共的
protected:受保护的
(default):默认的,不加default关键词,不写任何内容
private:私有的

2.使用范围:
自己类中: public protected default private
同包(没有关系的类): public protected default
父子类(不同包):public protected
所有类(既不是同包,也没有父子类关系):public

范围: public > protected > default > private

3.什么时候使用
public: 想要提供给其他类使用的成员
protected: 有子类继承关系的成员
default: 平时练习用
private: 所有实体类中的成员变量使用

方法重写:
方法名/方法参数完全一致
修饰符:
子类访问权限要大于等于父类的访问权限
返回值类型:
void/基本数据类型: 必须一致
引用数据类型:
子类的返回值类型要小于等于父类的返回值类型

4.封装
1)为了保证成员变量的安全性,把它设置成私有的,也就是添加private修饰词.
2)给外部提供一对可以访问此成员变量的get()/set()
get():获取
set():设置

5.static关键词: 静态的
static可以修饰:成员方法/成员变量/代码块/内部类

1)静态变量
静态成员变量:
1.属于类
2.类名 .变量名 调用 ps: Student.money
3.静态成员变量是被所有实例化对象所共享
4.只加载一次

普通成员变量:
1.属于对象
2.对象. 变量名 调用
3.有几个对象,就有几个成员变量,并且是独立的

2).静态成员方法
1.在静态方法中不能调用非静态的成员变量和非静态的成员方法
2.在非静态的成员方法中可以调用静态方法和静态变量
3.属于类
4.使用 类名.方法名 调用

3).静态代码块
1.在类加载时执行
a.实例化对象
b.使用静态方法
c.使用静态变量
2.作用: 优化代码,提升程序效率
3.静态代码块可以有无数个,但只进行一次性的加载,只有一个
4.在静态代码块中不能调用非静态成员变量

代码块:
1.执行在构造方法之前
2.作用:给成员变量初始化
提取所有构造方法中重复的代码

存在父子类关系:
静态代码块 + 代码块 + 构造方法

父类静态代码块 -> 子类静态代码块 -> 父类代码块 -> 父类构造方法 -> 子类代码块 -> 子类构造方法

静态代码块和静态变量的执行顺序:
先写那个先执行那个
注意: 静态变量先执行,是可以进行运算操作
静态代码块先执行,是不可以进行运算操作,因为变量未定义

xx.java -> xx.class -> 类加载,静态成员变量会随着类信息一起加载到 -> JVM中的方法区中

什么时候进行类加载?
使用类之前会进行类加载操作:
第一次使用类的情况:
1.new对象,实例化对象
2.调用静态成员变量
3.调用静态成员方法

结论:当在使用静态成员时,对象不一定存在
所以,变量不会放在构造方法中进行初始化


final关键词:最后的
final可以修饰: 类/成员变量/局部变量/成员方法

1).修饰变量: 不可修改,不可变 -> 常量
基本数据类型:
不可修改
引用数据类型:
不能重新赋值,因为会改变内存中的地址值,但是可以修改引用对象的内容
2).修饰成员方法: 不可被重写
3).修饰类:不可被继承


接口:
1)接口是一种特殊的抽象类
2)接口中可以存在
a.所有版本
静态常量
命名规则:
全部大写,如果有单词拼接使用_进行拼接
ps: CASE_INSENSITIVE_ORDER

抽象方法

JavaBean规范:
1.命名 驼峰命名法
2.成员变量私有化,提供get/set方法
3.提供无参构造方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值