Java封装和继承不理解?两个案例帮到你
这篇文章给大家分享的是Java封装和继承的相关案例,主要利用了封装和继承的方法,对大家学习和理解Java封装和继承有一定的参考学习价值,文中的示例代码介绍得很详细,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
一、代码及效果图 1.封装 案例:需求说明 2.继承 案例:使用继承优化电子宠物系统,抽取父类,创建子类,在子类中使用super调用父类构造方法。 总结 关于Java封装和继承案例的内容就介绍到这,上述示例具有一定的借鉴价值,感兴趣的朋友可以参考,希望能对大家有帮助,想要了解更多Java封装和继承的介绍,大家可以关注网络其它的相关文章。
使用封装实现电子宠物系统的企鹅类正确输入健康值和亲密度
保证健康值的有效性(0-100),否则取默认值60
保证亲密度的有效性(0-100),否则取默认值60
代码如下(示例):package work1;
public class Dog {
private String name;
private String sex;
private int love;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(int sex) {
if(sex==1){
this.sex = "Q仔";
}
else{
this.sex = "Q妹";
}
}
public int getLove() {
return love;
}
public void setLove(int love) {
if(love>
=0&
&
love=100){
this.love = love;
}
else {
System.out.println("亲密度应该在0-100之间,默认值是60");
this.love = 60;
}
}
}
package work1;
public class Penguin {
private String name;
private String sex;
private int health;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(int sex) {
if(sex==1){
this.sex = "Q仔";
}
else{
this.sex = "Q妹";
}
}
public int getHealth() {
return health;
}
public void setHealth(int health) {
if(health>
=0&
&
health=100){
this.health = health;
}
else {
System.out.println("健康值应该在0-100之间,默认值是60");
this.health = 60;
}
}
}
package work1;
import java.util.Scanner;
public class Test1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("欢迎您来到宠物店! \n 请输入要领养宠物的名字:");
String name = sc.next();
System.out.println("请选择要领养的宠物类型:(1.狗狗 2.企鹅)");
int i = sc.nextInt();
if(i==1){
//狗狗
Dog dog = new Dog();
dog.setName(name);
System.out.println("请选择狗狗的性别:(1.Q仔 2.Q妹)");
dog.setSex(sc.nextInt());
System.out.println("请输入狗狗的亲密度(1~100之间):");
dog.setLove(sc.nextInt());
System.out.println("宠物的自白:\n 我的名字叫"+name+",健康值是"+0+",和主人的" +
"亲密度是"+dog.getLove()+",我的性别是"+dog.getSex());
}
else {
//企鹅
Penguin p = new Penguin();
p.setName(name);
System.out.println("请选择企鹅的性别:(1.Q仔 2.Q妹)");
p.setSex(sc.nextInt());
System.out.println("请输入企鹅的健康值(1~100之间):");
p.setHealth(sc.nextInt());
System.out.println("宠物的自白:\n 我的名字叫"+name+",健康值是"+p.getHealth()+",和主人的" +
"亲密度是"+0+",我的性别是"+p.getSex());
}
}
}
代码如下(示例):package work3;
public class Dog extends Pet {
@Override
public void show() {
System.out.println("宠物的自白:\n 我的名字叫"+this.getName()+",健康值是"+0+",和主人的" +
"亲密度是"+this.getLove()+",我的性别是"+this.getSex());
}
private int love;
public Dog(String name, int sex, int love) {
super(name, sex);
this.love = love;
}
public int getLove() {
return love;
}
public void setLove(int love) {
if(love>
=0&
&
love=100){
this.love = love;
}
else {
System.out.println("亲密度应该在0-100之间,默认值是60");
this.love = 60;
}
}
}
package work3;
public class Penguin extends Pet {
@Override
public void show() {
System.out.println("宠物的自白:\n 我的名字叫"+this.getName()+",健康值是"+this.getHealth()+",和主人的" +
"亲密度是"+0+",我的性别是"+this.getSex());
}
private int health;
public Penguin(String name, int sex, int health) {
super(name, sex);
this.health = health;
}
public int getHealth() {
return health;
}
public void setHealth(int health) {
if(health>
=0&
&
health=100){
this.health = health;
}
else {
System.out.println("健康值应该在0-100之间,默认值是60");
this.health = 60;
}
}
}
package work3;
public class Pet {
private String name;
private String sex;
public void show(){
}
public Pet(String name, int sex) {
this.name = name;
if(sex==1){
this.sex = "Q仔";
}
else{
this.sex = "Q妹";
}
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(int sex) {
if(sex==1){
this.sex = "Q仔";
}
else{
this.sex = "Q妹";
}
}
}
package work3;
import java.util.Scanner;
import static java.lang.System.out;
public class Test2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
out.println("欢迎您来到宠物店! \n 请输入要领养宠物的名字:");
String name = sc.next();
out.println("请选择要领养的宠物类型:(1.狗狗 2.企鹅)");
int i = sc.nextInt();
if (i==1){
//狗狗
out.println("请选择狗狗的性别:(1.Q仔 2.Q妹)");
int sex=sc.nextInt();
out.println("请输入狗狗的亲密度(1~100之间):");
Dog dog = new Dog(name, sex, sc.nextInt());
dog.show();
}
else {
//企鹅
out.println("请选择企鹅的性别:(1.Q仔 2.Q妹)");
int sex=sc.nextInt();
out.println("请输入企鹅的健康值(1~100之间):");
Penguin p = new Penguin(name, sex, sc.nextInt());
p.show();
}
}
}
文本转载自PHP中文网
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Java封装和继承不理解?两个案例帮到你
本文地址: https://pptw.com/jishu/655041.html