「java过渡继承」JAVA中的继承

博主:adminadmin 2023-01-11 23:51:15 641

本篇文章给大家谈谈java过渡继承,以及JAVA中的继承对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java的继承问题

很高兴回答你的问题

首先看下Java里的四个访问控制符(默认、public、private、protected),详解如下:

pravite 只能在同一个类中访问

protected,可以在同一个类、同一个包、不同包中的子类访问

默认:在同一个类、同一个包中访问

public 同一个类,同一个包、不同包中的子类、不同包中的非子类

看了上边这四行解释,想必你应该明白了一些,因为你父类SurperClass中的方法method3用protected来修饰,所以method3只能在同一个类中、或同一个包、或不同包中的子类访问,

由于你的子类没有和父类在同一包下,而且调用对象也不是其子类,所以无法调用method3,你如果想调用,将

SurperClass s = new SurperClass();

s.method3();

修改为

SubClasss = new SubClass();

s.method3();

即可调用,也可以将子类SubClass与父类放入同一包下,不需要修改你的代码,也可以访问。

祝你学习愉快!

java继承

在子类的构造方法里,第一句必须得调用父类的构造方法,如果父类有无参构造方法或者没有写构造方法(默认是无参),此时子类可以省略不写,这里系统会自动调用父类的无参构造方法,即相当于写了一句:super();如果父类没有无参构造,而是手动写的有参构造方法,那么子类必须显示的调用它,super(参数);你的程序就是少了这个,在子类的构造方法中加上super(String,int,int);调用一下就行了,或者在父类中加上一个无参构造也可以。

Java类的继承

//C1.java

class PersonA {

private String name;

public void setName(String newName) {

name = newName;

}

public String getName() {

return name;

}

}

class StudentA extends PersonA {

private String department;

public void setDepartment(String newDepartment) {

department = newDepartment;

}

public String getDepartment() {

return department;

}

}

class C1 {

public static void main(String args[]) {

StudentA s1 = new StudentA();

s1.setName("张三");

s1.setDepartment("计算机系");

System.out.println("你好,我是" + s1.getName());//你这里写错了不是 setName

System.out.println("我是" + s1.getDepartment() + "的学生");//不是 setDepartment

}

}

java过渡继承的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于JAVA中的继承、java过渡继承的信息别忘了在本站进行查找喔。