跳转到内容

6:封装继承与多态

后端Banner

继承是java面向对象编程技术的一块基石.

继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。

public class Animal {
private String name;
private int id;
public Animal(String myName, int myid) {
name = myName;
id = myid;
}
public void eat(){
System.out.println(name+"正在吃");
}
public void sleep(){
System.out.println(name+"正在睡");
}
public void introduction() {
System.out.println("大家好!我是" + id + "" + name + ".");
}
}

这个Animal类就作为一个父类,企鹅类和老鼠类继承这个类之后,就具有父类当中的属性和方法,子类就不会存在重复的代码,维护性也提高,代码也更加简洁,提高代码的复用性(复用性主要是可以多次使用,不用再多次写同样的代码)

public class Penguin extends Animal {
public Penguin(String myName, int myid) {
super(myName, myid);
}
}
public class Mouse extends Animal {
public Mouse(String myName, int myid) {
super(myName, myid);
}
}

请注意,java并不支持多继承,这是为什么?

多态是同一个行为具有多个不同表现形式或形态的能力。

你知道@Override吗,他负责在子类重写父类的方法来实现不同类的运算逻辑,请完成以下问题:

对几何图形进行建模并完成圆,三角形,矩形的周长,面积计算

其实还有另一种做法,使用接口来完成,请你给出使用接口的解答

在面向对象程式设计方法中,封装是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。

封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。

要访问该类的代码和数据,必须通过严格的接口控制。

封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。

请你说明public,private等关键词的用法

并完成以下代码

public class BankAccount {
// TODO 修改属性的可见性
String accountNumber;
String accountHolder;
double balance;
String password; // 敏感信息,需要严格保护
BankAccount(String accountNumber, String accountHolder, double initialBalance, String password) {
//TODO
}
void deposit(double amount) {
//TODO
}
boolean withdraw(double amount, String inputPassword) {
//TODO
}
boolean transfer(BankAccount recipient, double amount, String inputPassword) {
//TODO
}
double getBalance() {
//TODO
}
String getAccountInfo() {
//TODO
}
// 只需修改可见性
boolean validatePassword(String inputPassword) {
return true;
}
// 只需修改可见性
boolean validateAmount(double amount) {
return true;
}
}

提交点这里

出题人QQ:3425282590