zoukankan      html  css  js  c++  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一个子类,它都包含一个父类的对象。

    访问控制


    default权限

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

    protected权限

    • 子类可以访问
    • 对于class的修饰只能用default和public

    方法的重写


    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();
        }
    }
    

    内存分析

    继承的构造方法


  • 相关阅读:
    建立自己的影响力
    在病房垒代码
    知乎确实不错
    不在乎你用到了什么技术,而在于你提供了哪些有价值的东西
    oschina上有不少好的项目
    我为何坚守Java?
    掌握了学习方法才能学到更多知识
    Jrebel实现Jetty 热部署
    互联网到底能干什么?我们还能干些什么?
    centos 阿里云 安装VNC Viewer
  • 原文地址:https://www.cnblogs.com/031602523liu/p/8654177.html
Copyright © 2011-2022 走看看