zoukankan      html  css  js  c++  java
  • 9.不能被继承的情况1

    package cn.jbit.epet.purview;
    
    /**
     * 狗狗类,宠物的子类。
     */
    public class Dog extends Pet {
        private String strain;// 品种
    
        /**
         * 有参构造方法。
         * @param name   昵称
         * @param strain   品种
         */
        public Dog(String name, String strain) {
            super(name); //此处不能使用this.name=name;
            this.strain = strain;
        }
        
        public void setStrain(String strain) {
            this.strain = strain;
        }
        public String getStrain() {
            return strain;
        }
        
        public void print(){
            super.print();
            System.out.println("我是一只"+this.getStrain()+"犬。");
        }
        
        /**
         * 测试不能被继承的情况 
         */
        public void test(){
            //System.out.println(name); // 不能继承private成员
            System.out.println(color); // 同包下,可以继承protected成员
            System.out.println(avoirdupois);  //同包下,子类可以继承默认访问权限的成员
            System.out.println(id);// 同包下,可以继承public成员
        }
    }
    package cn.jbit.epet.purview;
    
    /**
     * 宠物类,狗狗和企鹅的父类。
     */
    public class Pet {
        private String name = "无名氏";// 昵称
        private int health = 100;// 健康值
        private int love = 0;// 亲密度
        /*以下属性是测试访问权限及继承情况*/
        int avoirdupois=2; //重量
        protected String color; //颜色
        public int id=1001; //编号
        /**
         * 无参构造方法。
         */
        public Pet() {
            this.health = 95;
            System.out.println("执行宠物的无参构造方法。");
        }
        /**
         * 有参构造方法。
         * @param name  昵称
         */
        public Pet(String name) {
            this.name = name;
        }
        public String getName() {
            return name;
        }
        public int getHealth() {
            return health;
        }
        public int getLove() {
            return love;
        }
        /**
         * 输出宠物信息。
         */
        public void print() {
            System.out.println("宠物的自白:
    我的名字叫" + 
                    this.name + ",我的健康值是" + this.health 
                    + ",我和主人的亲密程度是" + this.love + "。");
        }
    }
    public class Test {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            System.out.println(new Pet().color);  //同包下,可以使用protected成员
            System.out.println(new Pet().id);// 同包下,可以使用public成员
        }
    
    }
  • 相关阅读:
    lqb 基础练习 数列特征
    lqb 基础练习 查找整数 (遍历)
    lqb 基础练习 杨辉三角形
    lqb 基础练习 特殊的数字
    lqb 基础练习 回文数
    lqb 基础练习 特殊回文数
    lqb 基础练习 十进制转十六进制
    lqb 基础练习 十六进制转十进制
    lqb 基础练习 十六进制转八进制 (字符串进行进制转化)
    Git详细操作
  • 原文地址:https://www.cnblogs.com/xiaotaoxu/p/5536442.html
Copyright © 2011-2022 走看看