java继承访问_Java 继承和访问控制

类的继承

Java中使用extends来实现继承

通过继承,子类自动拥有了基类(supercalss)的所有成员。

Java只支持单继承,一个子类只允许有一个基类,一个基类可以有多个子类。

class Person

{

private String name;

private int age;

public void setName (String name)

{

this.name = name;

}

public void setAge(int age)

{

this.age = age;

}

public String getName()

{

return name;

}

public String getAge()

{

return age;

}

}

class Student extends Person //继承

{

private String school;

public String getSchool()

{

return school;

}

public void setSchool(String school)

{

this.school = school;

}

}

内存分析

每new一个子类,它都包含一个父类的对象。

7acc21241663862469c3a706338171ab.png

访问控制

default权限

如果我们在定义一个变量时前面什么都不加,这个变量就是default权限,也称包权限。如果其他的类想访问这个变量,那么他们必须在同一个包下面。

protected权限

子类可以访问

对于class的修饰只能用default和public

a47c2dbc259662a1bc49513e224ddc43.png

方法的重写

e4dd349caa8d7f28b423d51f326e8eb6.png

super关键字

和this类似,this表示当前对象。super表示父类。

class FatherClass

{

public int value;

public void f()

{

value = 100;

System.out.println("FatherClass.value = "+value);

}

}

class ChildClass extends FatherClass

{

public int value;

public void f()

{

super.f();

value = 200;

System.out.println("ChildClass.value = "+value);

System.out.println(value);

System.out.println(super.value);

}

}

public class Test

{

public static void main(String args[])

{

calss cc = new ChildClass();

cc.f();

}

}

内存分析

9b1aaa391b4b233fb48a4c0f900fd853.png

继承的构造方法

be47e559455ee7c77c9a1db752c72540.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值