码迷,mamicode.com
首页 > 其他好文 > 详细

Error:Implicit super constructor People() is undefined for default constructor. Must define an explicit constructor

时间:2016-12-31 15:29:04      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:tor   定义   main   end   pack   ons   void   static   error   

当子类继承父类的时候,若父类没有定义带参的构造方法,则子类可以继承父类的默认构造方法

当父类中定义了带参的构造方法,子类必须显式的调用父类的构造方法

若此时,子类还想调用父类的默认构造方法,必须在父类中明确声明默认的构造方法

 1 package com.gaohui;
 2 
 3 public class Test {
 4     public static void main(String [] args){
 5         Man man = new Man(24,"Tom");
 6         man.eat();
 7         man.eat("Tom");
 8         man.Exercise();
 9         Woman woman = new Woman();
10         
11     }
12     
13 }
14 
15 class People{
16     private int age;
17     private String name;
18     private String sex;
19     
20     public People(){
21         //如果父类没有声明默认的构造方法,子类继承时必须显式调用父类定义的构造方法
22     }
23     
24     public People(int age, String name){
25         System.out.println("构造方法一执行了!");
26     }
27     
28     public void eat(){
29         System.out.println("People need to eat!");
30     }
31     
32     public void eat(String name){
33         System.out.println(name+" needs to eat!");
34     }
35     
36     
37 }
38 
39 class Man extends People{
40     public  Man (int age, String name){//由于父类的构造方法是有参的,必须显式调用父类的方法
41         super(age,name);
42     }
43     
44     public void Exercise(){
45         System.out.println("I love doing exercise!");
46     }
47 }
48 
49 
50 class Woman extends People{
51     
52 }

 

Error:Implicit super constructor People() is undefined for default constructor. Must define an explicit constructor

标签:tor   定义   main   end   pack   ons   void   static   error   

原文地址:http://www.cnblogs.com/ErMengNJUniverser/p/6239239.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!