精华内容
下载资源
问答
  • 今天看到java继承部分时,关于构造函数是否继承以及如何使用时遇到了点问题,后来查找相关资料解决了。下面是我个人的总结:先创建一个父类,里面有两个构造函数:public classJisuan {protected int a=4;//构造函数...

    今天看到java继承部分时,关于构造函数是否继承以及如何使用时遇到了点问题,后来查找相关资料解决了。

    下面是我个人的总结:

    先创建一个父类,里面有两个构造函数:

    public classJisuan {protected int a=4;//构造函数1

    Jisuan()

    {

    System.out.println("父类的无参数构造函数");

    }//构造函数2

    Jisuan(inta)

    {

    System.out.println("父类的有参数构造函数");

    }

    }

    再创建一个子类,里面也有两个构造函数:

    public class JisuanKid extendsJisuan {//构造函数3

    publicJisuanKid() {

    System.out.println("子类的无参数构造函数");

    }//构造函数4

    public JisuanKid(inta) {

    System.out.println("子类的有参数构造函数");

    }

    }

    再创建第三个类;

    public classTestArray {public static voidmain(String[] args){

    JisuanKid jisuan= new JisuanKid(3);

    }

    }

    1、此时执行:

    结果:

    父类的无参数构造函数

    子类的有参数构造函数

    2、去掉构造函数1

    结果:出错

    3、去掉构造函数1和2

    执行结果:

    子类的有参数构造函数

    4、去掉构造函数4

    执行结果:

    父类的无参数构造函数

    出现错误

    结论如下:

    1.子类不能继承父类的构造函数

    2.若父类中无任何构造函数,则系统默认加上无参数构造函数,创建子类对象时会调用父类的默认无参数构造函数创建父类。然后再调用子类的相应构造函数

    3.若父类中有带参数构造函数,则系统不会添加默认无参数构造函数,创建子类对象时会调用父类的无参数构造函数创建父类对象,因为此时父类没有无参数构造函数,故会报错。

    4.另外还可以在子类的构造函数中,使用super()或者super(参数名)来使用父类的无参数构造函数和带参数构造函数

    展开全文
  • Game和BoardGame基类的构造器都带参数 导出必须自定义构造器,并显示调用基类构造器 输出
    • Game和BoardGame基类的构造器都带参数
    • 导出类必须自定义构造器,并显示调用基类构造器
      在这里插入图片描述
    • 输出
      在这里插入图片描述
    展开全文
  • import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.slf4j.Logger; import org.s...
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.util.Map;
    
    import javax.servlet.http.HttpServletRequest;
    
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.web.context.request.RequestContextHolder;
    import org.springframework.web.context.request.ServletRequestAttributes;
    
    
    public class BaseController {
    
        protected Logger logger = LoggerFactory.getLogger(this.getClass());
    
        private Integer defaultPage = 1;
    
        private Integer defaultPageSize = 15;
    
        public Map<String, Object> getParams() {
            HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes())
                    .getRequest();
            Map<String, Object> initParams = ParamsUtil.handleServletParameter(request);
            int currentPage = defaultPage;
            if (!isNullOrEmpty(initParams.get("page"))) {
                try {
                    currentPage = Integer.parseInt(String.valueOf(initParams.get("page")));
                } catch (NumberFormatException e) {
                    currentPage = defaultPage;
                }
    
            }
            initParams.put("currentPage", currentPage);
            int pageSize = defaultPageSize;
            if (!isNullOrEmpty(initParams.get("rows"))) {
                try {
                    pageSize = Integer.parseInt(String.valueOf(initParams.get("rows")));
                } catch (NumberFormatException e) {
                    pageSize = defaultPageSize;
                }
            }
            initParams.put("pageSize", pageSize);
            initParams.put("IP", NetWorkUtil.getRemortIP(request));
            logger.debug("input params is {}",new Object[]{initParams});
            return initParams;
    
        }
    
        public static boolean isNullOrEmpty(Object o) {
            return o == null || String.valueOf(o).trim().length() == 0;
        }
    
    
        public String getRequestContent(HttpServletRequest request) {
            StringBuilder buffer = new StringBuilder();
            BufferedReader reader = null;
            try {
                request.setCharacterEncoding("UTF-8");
                reader = new BufferedReader(new InputStreamReader(
                        request.getInputStream(), "UTF-8"));
                String line = null;
                while ((line = reader.readLine()) != null) {
                    buffer.append(line);
                }
            } catch (Exception e) {
                logger.error("接收request请求处理异常:",e);
                logger.info("接收request请求报文:" + buffer.toString());
            } finally {
                if (null != reader) {
                    try {
                        reader.close();
                    } catch (IOException e) {
                        logger.error("接收request请求信息时失败:", e);
                    }
                }
            }
            return buffer.toString();
        }
    
    
    }
    
    展开全文
  • 一、继承 :就是子类继承父类的非私有属性和行为二、特点1、子类和父类中出现了同名的成员变量时,在子类中需要访问父类中非私有成员变量时,需要使用 super 关键字格式:super.父类成员变量名2、如果子类父类中出现...

    一、继承 :就是子类继承父类的非私有属性和行为

    二、特点

    1、子类和父类中出现了同名的成员变量时,在子类中需要访问父类中非私有成员变量时,需要使用 super 关键字

    格式:super.父类成员变量名

    2、如果子类父类中出现重名的成员方法,这时的访问是一种特殊情况,叫做方法重写

    重写【覆盖】:子类中出现与父类一模一样的方法时(返回值、方法名、参数列表等都相同),子类的方法会覆盖父类的方法

    注意事项

    a. 子类方法覆盖父类方法,必须要保证权限大于等于父类权限。

    b. 子类方法覆盖父类方法,返回值类型、函数名和参数列表都要一模一样。

    3、继承关系中:字父类的构造方法特点

    a.子类构造方法中不写父类构造方法,会默认隐含super()调用,所以一定是先调用父类构造,然后调用子类构造

    b.子类构造可以通过super关键字来调用父类构造,从而初始化父类成员变量

    c.super的父类构造调用,必须放在子类构造方法的第一个语句,而且仅能出现一次

    三、 抽象类

    1、定义

    抽象方法 : 没有方法体的方法。

    格式:

    修饰符 abstract 返回值类型 方法名 (参数列表);

    抽象类 :包含抽象方法的类

    格式:

    abstract class 类名字 { }

    2、抽象的使用:继承抽象类的子类必须重写父类所有的抽象方法

    3、抽象类的使用注意事项

    a、抽象类不能创建对象,如果创建,编译无法通过而报错。只能创建其非抽象子类的对象。

    理解:假设创建了抽象类的对象,调用抽象的方法,而抽象方法没有具体的方法体,没有意义。

    b、可以有构造方法,是供子类创建对象时,初始化父类成员使用的。

    理解:子类的构造方法中,有默认的super(),需要访问父类构造方法。

    c、 抽象类中,可以包含非抽象方法,但是有抽象方法的类必定是抽象类。

    理解:未包含抽象方法的抽象类,目的就是不想让调用者创建该类对象,通常用于某些特殊的类结构设计。

    d、抽象类的子类,必须重写抽象父类中所有的抽象方法,否则,编译无法通过而报错。除非该子类也是抽象类。

    理解:假设不重写所有抽象方法,则类中可能包含抽象方法。那么创建对象后,调用抽象的方法,没有意义

    展开全文
  • JAVA类继承

    2019-03-03 23:38:30
    描述两个的关系,从一般到特殊的关系,如车、货车,货车是车的特殊化,所以货车(子类)就可以继承(基类、超类、父类)。 语法: class child extends father { //体代码 } JAVA最多只允许一个...
  • this代表正在使用的对象(的引用)java支持重载:允许在同一个中使用相同的方法名(重载类型只区分参数列表,包括参数 顺序,参数个数,参数数据类型,与方法返回类型无关)匹配:方法名参数列表类型调用如果参数...
  • 1.在子类父类中有相同参数,子类继承分类后如何进行调用,判断创建的对象属性哪个(instanceof) 2.子类继承父类时,怎么调用父类构造函数,以及如何访问到父类的私有属性,子类是否能够继承父类的私有属性 3.根父类...
  • 这个星期主要是学习了Java继承问题.继承就是由已有的创建新,通过子类继承父类的方法,实现一些功能.下面就是老师布置作业的其中一个:定义父类圆,通过继承,获得子类球、圆锥、圆柱,子类具有计算体积的...
  • java类继承总结

    2019-04-07 11:14:14
    java中通过extends关键字来声明继承关系 不能多继承,接口可以多继承。 子类能够直接访问父类非private成员和变量和方法 子类能够重写(覆盖)父类成员变量和成员方法。 this和super的使用 this的使用 ...
  • JAVA继承

    2020-12-09 08:58:32
    JAVA继承 继承语法:修饰符 类名 extends 父类名{ //定义的部分 } 继承通过关键字extends来实现,不可使用private和protected来修饰。java只支持单继承 new 子类() 执行了哪些代码? 父类属性>代码块>...
  • Java继承

    2018-06-11 22:35:10
    继承(Inheritence):Java是单继承的,意味着一个只能从另一个类继承(被继承叫做父类【基类,base class】, 继承叫做子类),Java中的继承使用extends关键字。 当生成子类对象时,Java默认首先调用...
  • java继承

    2020-07-12 16:54:55
    关于java继承 1.首先要有一个父类,然后才能够创建一个子类进行继承;所谓继承指的是子类中可以有承接父类中的方法和属性,并且还可以对父类中的方法进行重写。 2.基本的格式为 public class 子类 extends ...
  • java 继承

    千次阅读 2017-09-23 14:47:19
    这个星期主要是学习了Java继承问题.继承就是由已有的创建新,通过子类继承父类的方法,实现一些功能. 下面就是老师布置作业的其中一个: 定义父类圆,通过继承,获得子类球、圆锥、圆柱,子类具有计算体积的...
  • java 简单类继承

    2013-08-31 20:46:54
    class Person { String name; int age; public String talk() { return "我是:"+this.name+",今年:"+... public Person()/* 无参数的构造函数*/ { System.out.println("1.public Person(){}"); } } clas
  • super用来继承父类方法和参数继承就是子类继承父类的特征和行为,使得子类具有父类相同的行为。注意事项:1、当一个没有继承任何一个时,系统默认继承Object。2、父类又被称为基类、超类、super,子类又被...
  • Java继承extends与super关键字详解发布时间:2020-09-22 23:07:54来源:脚本之家阅读:83作者:laozhang函数也称为方法!继承:在java中使用extends关键字来表示继承关系。super用来继承父类方法和参数。继承就是...
  • Java继承关系中,子类会自动继承父类中定义的方法,但有时子会对父类方法进行重写,子类中重写的方法需要和父类被重写的方法具有相同的方法名、参数列表以及返回值类型。**要注意的是,父类的成员也同样会被子...
  • 编写商品,包含属性 名称,类型,价格,产地。1.为所有属性添加getter 与 setter,要求setter方法中参数名必须与属性名相同,使用this关键字2.编写构造函数给成员属性赋值,同样需要参数名与属性名相同,使用this...
  • Java继承

    2016-07-27 19:55:45
    Java语言中,继承通过extends关键字来实现。也就是用extends指明当前是子类,并指明从哪个类继承而来。即在子类的声明中,通过extends关键字来显示的指明其父类。其基本的声明格式如下: [修饰符]class 子类名 ...
  • java类继承

    2012-11-02 15:43:41
    java继承 例: 以preson为基类让student类继承 并添加参数; class Person { String name; private int age; Person(String n, int a) { name = n; age = a; } public void print() ...
  • 1.泛型的使用(泛型:类型参数化) 2.泛型方法的使用 学习分享: 1.引用数据类型(基本数据性的包装)之间不可以直接强转,基本数据类型之间可以直接强转。(基本数据类型)引用数据类型 可以这么去转 2.Char...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,394
精华内容 2,557
关键字:

java继承类参数

java 订阅