Java部分总结

本文详细介绍了Java中的多态实现机制,包括继承、重写和向上转型,并探讨了方法的重载和重写规则。同时,解释了抽象类和抽象方法的概念及其特点。此外,还阐述了成员变量和函数的访问修饰符public、private、protected以及默认访问级别的差异。最后,讨论了this和super关键字的用法,展示了它们在实例化和调用方法中的关键角色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简述方法的重载和方法的重写?

override(重写)
1.方法名、参数、返回值相同。
2、子类方法不能缩小父类方法的访问权限。
3、子类方法不能抛出比父类方法更多的异常(但子类方法可以不抛出异常)
4、存在于父类和子类之间。
5、方法被定义为final不能被重写。

overload(重载)
1、参数类型、个数、顺序至少有一个不相同。
2、不能重载只有返回值不同的方法名。
3.存在于同类中。

java中实现多态的机制是什么?

Java实现多态有三个必要条件:继承、重写、向上转型。
继承:在多态中必须存在有继承关系的子类和父类。
重写:子类对父类中某些方法进行重新定义,在调用这些方法时就会调用子类的方法。
向上转型:在多态中需要将子类的引用赋给父类对象,只有这样该引用才能够具备技能调用父类的方法和子类的方法。
java中实现多态的机制是依靠父类或接口的引用指向子类。从而实现了一个对象多种形态的特性。其中父类的引用是在程序运行时动态的指向具体的实例,调用该引用的方法时,不是根据引用变量的类型中定义的方法来运行,而是根据具体的实例的方法。

什么是抽象类?什么是抽象方法?有什么特点?

抽象类就是不能使用new方法进行实例化的类,即没有具体实例对象的类。
对象不能由抽象类直接创建,只可以通过抽象类派生出新的子类,再由其子类来创建对象
抽象方法就是以abstract修饰的方法,这种方法只声明返回的数据类型、方法名称和所需的参数,没有方法体

请说出作用域public,private,protected,以及不写时的区别

public 声明的为公共成员变量和函数成员,在整个类内类外都可使用。
private 声明的为私有成员变量和函数成员,只在声明的类内可以使用。
protected声明的为受保护成员变量和函数成员,类外不可使用。类内可以使用。
不使用关键字默认为类内使用
另外注意在继承的时候,他们的区别。
public 声明的在子类变为public
protected 声明的子类变为private
private 声明的在子类中不可用
作用域 当前类 包内 子类 包外
public √ √ √ √
protected √ √ √ ×
default √ √ × ×
private √ × × ×

是否可以从一个static方法内部发出对非static方法的调用?

不可以。因为非static方法是要与对象关联在一起的,必须创建一个对象后,
才可以在该对象上进行方法调用,而static方法调用时不需要创建对象,可以
直接调用

简述this,super关键字用法

(1)this调用本类中的属性,也就是类中的成员变量;
(2)this调用本类中的其他方法;
(3)this调用本类中的其他构造方法,调用时要放在构造方法的首行。
(4)this 也可以调用你类的方法(本类没有的方法)
(5)super()调用父类无参构造方法,必须在子类的构造方法的第一行上,默认是可以不显示写super();
(6)super(参数列表),调用父类的指定的构造方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值