Java小结03

Java小结03

在这里插入图片描述
static 关键字 静态

1.可以用来修饰变量、方法、代码块

2.静态修饰的变量内存中永远只存在一份,所以可以减少内存开销,实现数据工具。

3.静态变量在本类中任何位置都可以访问,包括静态方法和非静态方法都可以,但是实例属性不能直接在静态方法中访问,需要new对象。

4.静态变量在其他的类中直接使用类名+.访问即可。

5.不能在方法中定义静态的属性,普通方法和静态方法,因为静态变量属于类级别的,只能定义在类内部。

6.普通方法中可以直接访问静态方法,静态变量。

7.静态代码块
7.2 当类加载的时候就执行,多个代码块按顺序执行,并且只执行一次。
7.1用来实现一些前置的操作,比如参数初始化,比如数据库连接等……

静态方法

不能直接访问实例属性和方法,需要先new对象。
可以直接访问静态属性和方法。

类的加载顺序
1.当我们第一次创建对象或者访问这个类的时候,jvm先去方法去加载这个类信息文件,然后再堆中开辟空间,第三步将栈中的引用指向堆中的对象。

2.我们创建对象的过程就是动态的,在我们程序的运行过程中,动态的开辟空间,并且属性赋值,调用方法等操作……这些对象是会随着程序的执行动态开辟空间或者垃圾回收。
3.当我们的类开始加载就已经存在的内容,如果不手动进行清除,那么静态修饰的变量将会一直存在。

继承
继承是java中重要的代码重用手段之一,Java只支持单根继承,即一个类只能有一个直接父类,但是可以有N多个间接父类。

创建之类对象将默认调用父类的无参构造方法,因为先有父类再有子类。如果显式的调用了父类的有参构造,将不再调用父类的无参构造。

子类可以继承父类的属性,方法。不能继承构造方法,可以调用。
①在同一个包中,默认修饰的或者更大的范围。
②不在同一个包中,必须使用protected修饰才能继承。

super关键字
①可以用于访问父类的属性、方法、构造方法,用法同this关键字一致。
②访问属性,直接super+点调用。
③访问方法,直接super+点调用。
访问父类的构造方法,必须在子类构造方法的第一句

重写

(1)存在于父子类之间
(2)方法名称一致
(3)参数列表一致
(4)访问修饰符不能严于父类
(5)返回值相同或者是其子类
(6)静态方法可以被继承,但是不能被重写

多态

多态的两种表现形式:
①父类作为形参
实际传入参数是子类对象,这里实现自动向上转型

②父类作为返回值
实际返回值是子类对象,这里实现自动向上转型

向上转型
格式:
父类 name = new 子类();

可以访问的方法:父类独有的方法,和子类重写父类的方法,不能调用子类独有的方法

向下转型
格式:
1)父类 name = new 子类();
2)子类 sonName = (子类)name;

instanceof关键字

子父类类型转换时,可以使用instanceif关键字来避免出现ClassCastException,类型转换异常。
格式:
引用 instanceof 类型 ,返回值为布尔类型,如果成立就true,否则就false。

final关键字

(1)final关键字 最终的
(2)可以修饰 属性 方法 类
(3)修饰类表示本类不能继承
(4)修饰方法表示方法不能被重写,可以被继承
(5)修饰属性表示常量,通常在定义的时候赋值,也可以在构造方法中赋值,不能重复赋值。
(6)static+final修饰表示静态常量,只能定义在类的内部,必须在定义的时候初始化,也不能重复赋值。

abstract 关键字 抽象的

(1)抽象方法没有方法体 使用abstract修饰
(2)抽象方法必须先存在于抽象类中 同样也使用abstract来修饰
(3)子类必须重写父类的抽象方法(普通方法根据需求是否重写) 除非子类也是抽象类
(4)抽象类不能直接new对象(不能实例化) 必须通过new子类的方式来创建对象 多态
(5)可以定义属性,可以定义普通方法,可以定义构造方法,给子类使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值