您好,登录后才能下订单哦!
在Java中,子类可以继承父类的属性和方法。访问权限控制是Java中一种保护数据安全的方法,它可以限制对类、方法和变量的访问。Java中有四种访问权限控制修饰符:public、protected、default(包级私有)和private。
当创建一个子类时,子类可以访问父类的成员变量和方法,但访问权限受到以下限制:
public:公共访问权限,子类可以访问父类的public成员变量和方法。
protected:受保护访问权限,子类可以访问父类的protected成员变量和方法,即使子类在不同的包中。
default(包级私有):如果没有指定访问修饰符,则默认为包级私有。子类可以访问同一个包中的父类的default成员变量和方法,但不能访问不同包中的父类的default成员变量和方法。
private:私有访问权限,子类不能访问父类的private成员变量和方法。
下面是一个简单的例子,说明子类如何访问父类的不同访问权限的成员变量和方法:
// 父类
public class Parent {
public int publicVar = 1;
protected int protectedVar = 2;
int defaultVar = 3;
private int privateVar = 4;
public void publicMethod() {
System.out.println("Public method");
}
protected void protectedMethod() {
System.out.println("Protected method");
}
void defaultMethod() {
System.out.println("Default method");
}
private void privateMethod() {
System.out.println("Private method");
}
}
// 子类,与父类在同一包中
public class Child extends Parent {
public void accessParentMembers() {
System.out.println("Accessing parent's public variable: " + publicVar);
System.out.println("Accessing parent's protected variable: " + protectedVar);
System.out.println("Accessing parent's default variable: " + defaultVar);
publicMethod();
protectedMethod();
defaultMethod();
// 无法访问父类的private成员变量和方法
// System.out.println("Accessing parent's private variable: " + privateVar);
// privateMethod();
}
}
在这个例子中,Child
类继承了Parent
类,并尝试访问父类的不同访问权限的成员变量和方法。可以看到,子类可以访问public、protected和default成员变量和方法,但不能访问private成员变量和方法。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。