• 学习笔记——Java核心技术之接口、继承与多态练习题


    1.创建一个抽象类,验证它是否可以实例化对象。

    package com.lzw;
    
    public abstract class UseCase3 {
        abstract void doit();
        public static void main(String args[]){
            new UseCase3();
        }
    }

    2.尝试创建一个父类,在父类中创建两个方法,在子类中覆盖第二个方法,为子类创建一个对象,将它向上转型到基类并调用这个方法。

    package com.lzw;
    
    public class UseCase2 {
        public void doSomething(){
            System.out.println("父类.doSomething()");
        }
        public void doAnything(){
            System.out.println("父类.doAnything()");
        }
        public static void main(String args[]){
            UseCase2 u=new sub();
            u.doSomething();
            u.doAnything();
        }
    }
    class sub extends UseCase2{
        public void doAnything(){
            System.out.println("子类.doAnything()");
        }
    }

    3.尝试创建一个父类和子类,分别创建一个构造方法,然后向父类和子类添加成员变量和方法,并总结构造子类对象时的顺序。

    package com.lzw;
    
    public abstract class UseCase1 {
    	abstract void testAbstract();
    	UseCase1(){//(1)首先执行父类构造方法
    		System.out.println("before testAbstract()");
    		testAbstract();//如果调用了抽象方法,调用子类覆盖的方法。这里调用Atest类的testAbstract()方法
    		System.out.println("after testAbstarcat()");
    	}
    	public static void main(String args[]){
    		new Atest();
    	}
    }
    class Atest extends UseCase1{
    	private int i=1;//(2)使成员变量进行初始化
    	void testAbstract(){
    		System.out.println("testAbstract()"+i);
    	}
    	public Atest(){//(3)调用子类构造方法
    		System.out.println(i);
    	}
    }
    

      

      

  • 相关阅读:
    Spring常见面试题
    Mybatis常见面试题
    SQLSERVER查询整个数据库中某个特定值所在的表和字段的方法
    四款常见数据库比较同步软件汇总
    SQL Server常用函数整理
    比较经典的SQL面试题
    sqlserver查询数据库中有多少个表
    数据库设计三大范式
    MS SQL SERVER导出表结构到Excel
    flask-vue 解决跨域问题
  • 原文地址:https://www.cnblogs.com/tangzhirong/p/4699738.html
Copyright © 2020-2023  润新知